]> err.no Git - linux-2.6/blobdiff - drivers/media/video/tuner-types.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux...
[linux-2.6] / drivers / media / video / tuner-types.c
index e61fc37a03d9ba620efcb839ca4f4d622895548f..10dddca8b5d1817ede0be39bab500c2841c5ea4e 100644 (file)
@@ -615,19 +615,31 @@ static struct tuner_params tuner_philips_pal_mk_params[] = {
        },
 };
 
-/* ---- TUNER_PHILIPS_ATSC - Philips FCV1236D (ATSC/NTSC) ---- */
+/* ---- TUNER_PHILIPS_FCV1236D - Philips FCV1236D (ATSC/NTSC) ---- */
 
-static struct tuner_range tuner_philips_fcv1236d_ranges[] = {
-       { 16 * 157.25 /*MHz*/, 0x8e, 0xa0, },
-       { 16 * 451.25 /*MHz*/, 0x8e, 0x90, },
+static struct tuner_range tuner_philips_fcv1236d_ntsc_ranges[] = {
+       { 16 * 157.25 /*MHz*/, 0x8e, 0xa2, },
+       { 16 * 451.25 /*MHz*/, 0x8e, 0x92, },
+       { 16 * 999.99        , 0x8e, 0x32, },
+};
+
+static struct tuner_range tuner_philips_fcv1236d_atsc_ranges[] = {
+       { 16 * 159.00 /*MHz*/, 0x8e, 0xa0, },
+       { 16 * 453.00 /*MHz*/, 0x8e, 0x90, },
        { 16 * 999.99        , 0x8e, 0x30, },
 };
 
 static struct tuner_params tuner_philips_fcv1236d_params[] = {
        {
                .type   = TUNER_PARAM_TYPE_NTSC,
-               .ranges = tuner_philips_fcv1236d_ranges,
-               .count  = ARRAY_SIZE(tuner_philips_fcv1236d_ranges),
+               .ranges = tuner_philips_fcv1236d_ntsc_ranges,
+               .count  = ARRAY_SIZE(tuner_philips_fcv1236d_ntsc_ranges),
+       },
+       {
+               .type   = TUNER_PARAM_TYPE_DIGITAL,
+               .ranges = tuner_philips_fcv1236d_atsc_ranges,
+               .count  = ARRAY_SIZE(tuner_philips_fcv1236d_atsc_ranges),
+               .iffreq = 16 * 44.00,
        },
 };
 
@@ -722,12 +734,24 @@ static struct tuner_range tuner_microtune_4042fi5_ntsc_ranges[] = {
        { 16 * 999.99        , 0x8e, 0x31, },
 };
 
+static struct tuner_range tuner_microtune_4042fi5_atsc_ranges[] = {
+       { 16 * 162.00 /*MHz*/, 0x8e, 0xa1, },
+       { 16 * 457.00 /*MHz*/, 0x8e, 0x91, },
+       { 16 * 999.99        , 0x8e, 0x31, },
+};
+
 static struct tuner_params tuner_microtune_4042fi5_params[] = {
        {
                .type   = TUNER_PARAM_TYPE_NTSC,
                .ranges = tuner_microtune_4042fi5_ntsc_ranges,
                .count  = ARRAY_SIZE(tuner_microtune_4042fi5_ntsc_ranges),
        },
+       {
+               .type   = TUNER_PARAM_TYPE_DIGITAL,
+               .ranges = tuner_microtune_4042fi5_atsc_ranges,
+               .count  = ARRAY_SIZE(tuner_microtune_4042fi5_atsc_ranges),
+               .iffreq = 16 * 44.00 /*MHz*/,
+       },
 };
 
 /* 50-59 */
@@ -761,6 +785,7 @@ static struct tuner_params tuner_philips_fm1256_ih3_params[] = {
 
 /* ------------ TUNER_THOMSON_DTT7610 - THOMSON ATSC ------------ */
 
+/* single range used for both ntsc and atsc */
 static struct tuner_range tuner_thomson_dtt7610_ntsc_ranges[] = {
        { 16 * 157.25 /*MHz*/, 0x8e, 0x39, },
        { 16 * 454.00 /*MHz*/, 0x8e, 0x3a, },
@@ -773,6 +798,12 @@ static struct tuner_params tuner_thomson_dtt7610_params[] = {
                .ranges = tuner_thomson_dtt7610_ntsc_ranges,
                .count  = ARRAY_SIZE(tuner_thomson_dtt7610_ntsc_ranges),
        },
+       {
+               .type   = TUNER_PARAM_TYPE_DIGITAL,
+               .ranges = tuner_thomson_dtt7610_ntsc_ranges,
+               .count  = ARRAY_SIZE(tuner_thomson_dtt7610_ntsc_ranges),
+               .iffreq = 16 * 44.00 /*MHz*/,
+       },
 };
 
 /* ------------ TUNER_PHILIPS_FQ1286 - Philips NTSC ------------ */
@@ -1032,12 +1063,30 @@ static struct tuner_range tuner_philips_td1316_pal_ranges[] = {
        { 16 * 999.99        , 0xc8, 0xa4, },
 };
 
+static struct tuner_range tuner_philips_td1316_dvb_ranges[] = {
+       { 16 *  93.834 /*MHz*/, 0xca, 0x60, },
+       { 16 * 123.834 /*MHz*/, 0xca, 0xa0, },
+       { 16 * 163.834 /*MHz*/, 0xca, 0xc0, },
+       { 16 * 253.834 /*MHz*/, 0xca, 0x60, },
+       { 16 * 383.834 /*MHz*/, 0xca, 0xa0, },
+       { 16 * 443.834 /*MHz*/, 0xca, 0xc0, },
+       { 16 * 583.834 /*MHz*/, 0xca, 0x60, },
+       { 16 * 793.834 /*MHz*/, 0xca, 0xa0, },
+       { 16 * 999.999        , 0xca, 0xe0, },
+};
+
 static struct tuner_params tuner_philips_td1316_params[] = {
        {
                .type   = TUNER_PARAM_TYPE_PAL,
                .ranges = tuner_philips_td1316_pal_ranges,
                .count  = ARRAY_SIZE(tuner_philips_td1316_pal_ranges),
        },
+       {
+               .type   = TUNER_PARAM_TYPE_DIGITAL,
+               .ranges = tuner_philips_td1316_dvb_ranges,
+               .count  = ARRAY_SIZE(tuner_philips_td1316_dvb_ranges),
+               .iffreq = 16 * 36.166667 /*MHz*/,
+       },
 };
 
 /* ------------ TUNER_PHILIPS_TUV1236D - Philips ATSC ------------ */
@@ -1119,17 +1168,30 @@ static struct tuner_params tuner_samsung_tcpn_2121p30a_params[] = {
 
 /* ------------ TUNER_THOMSON_FE6600 - DViCO Hybrid PAL ------------ */
 
-static struct tuner_range tuner_thomson_fe6600_ranges[] = {
+static struct tuner_range tuner_thomson_fe6600_pal_ranges[] = {
        { 16 * 160.00 /*MHz*/, 0xfe, 0x11, },
        { 16 * 442.00 /*MHz*/, 0xf6, 0x12, },
        { 16 * 999.99        , 0xf6, 0x18, },
 };
 
+static struct tuner_range tuner_thomson_fe6600_dvb_ranges[] = {
+       { 16 * 250.00 /*MHz*/, 0xb4, 0x12, },
+       { 16 * 455.00 /*MHz*/, 0xfe, 0x11, },
+       { 16 * 775.50 /*MHz*/, 0xbc, 0x18, },
+       { 16 * 999.99        , 0xf4, 0x18, },
+};
+
 static struct tuner_params tuner_thomson_fe6600_params[] = {
        {
                .type   = TUNER_PARAM_TYPE_PAL,
-               .ranges = tuner_thomson_fe6600_ranges,
-               .count  = ARRAY_SIZE(tuner_thomson_fe6600_ranges),
+               .ranges = tuner_thomson_fe6600_pal_ranges,
+               .count  = ARRAY_SIZE(tuner_thomson_fe6600_pal_ranges),
+       },
+       {
+               .type   = TUNER_PARAM_TYPE_DIGITAL,
+               .ranges = tuner_thomson_fe6600_dvb_ranges,
+               .count  = ARRAY_SIZE(tuner_thomson_fe6600_dvb_ranges),
+               .iffreq = 16 * 36.125 /*MHz*/,
        },
 };
 
@@ -1372,10 +1434,13 @@ struct tunertype tuners[] = {
                .params = tuner_philips_pal_mk_params,
                .count  = ARRAY_SIZE(tuner_philips_pal_mk_params),
        },
-       [TUNER_PHILIPS_ATSC] = { /* Philips ATSC */
+       [TUNER_PHILIPS_FCV1236D] = { /* Philips ATSC */
                .name   = "Philips FCV1236D ATSC/NTSC dual in",
                .params = tuner_philips_fcv1236d_params,
                .count  = ARRAY_SIZE(tuner_philips_fcv1236d_params),
+               .min = 16 *  53.00,
+               .max = 16 * 803.00,
+               .stepsize = 62500,
        },
        [TUNER_PHILIPS_FM1236_MK3] = { /* Philips NTSC */
                .name   = "Philips NTSC MK3 (FM1236MK3 or FM1236/F)",
@@ -1411,6 +1476,9 @@ struct tunertype tuners[] = {
                .name   = "Microtune 4042 FI5 ATSC/NTSC dual in",
                .params = tuner_microtune_4042fi5_params,
                .count  = ARRAY_SIZE(tuner_microtune_4042fi5_params),
+               .min    = 16 *  57.00,
+               .max    = 16 * 858.00,
+               .stepsize = 62500,
        },
 
        /* 50-59 */
@@ -1428,6 +1496,9 @@ struct tunertype tuners[] = {
                .name   = "Thomson DTT 7610 (ATSC/NTSC)",
                .params = tuner_thomson_dtt7610_params,
                .count  = ARRAY_SIZE(tuner_thomson_dtt7610_params),
+               .min    = 16 *  44.00,
+               .max    = 16 * 958.00,
+               .stepsize = 62500,
        },
        [TUNER_PHILIPS_FQ1286] = { /* Philips NTSC */
                .name   = "Philips FQ1286",
@@ -1516,6 +1587,9 @@ struct tunertype tuners[] = {
                .name   = "Philips TD1316 Hybrid Tuner",
                .params = tuner_philips_td1316_params,
                .count  = ARRAY_SIZE(tuner_philips_td1316_params),
+               .min    = 16 *  87.00,
+               .max    = 16 * 895.00,
+               .stepsize = 166667,
        },
        [TUNER_PHILIPS_TUV1236D] = { /* Philips ATSC */
                .name   = "Philips TUV1236D ATSC/NTSC dual in",
@@ -1545,6 +1619,9 @@ struct tunertype tuners[] = {
                .name   = "Thomson FE6600",
                .params = tuner_thomson_fe6600_params,
                .count  = ARRAY_SIZE(tuner_thomson_fe6600_params),
+               .min    = 16 *  44.25,
+               .max    = 16 * 858.00,
+               .stepsize = 166667,
        },
        [TUNER_SAMSUNG_TCPG_6121P30A] = { /* Samsung PAL */
                .name   = "Samsung TCPG 6121P30A",