diff options
author | Darron Broad <darron@kewl.org> | 2008-10-15 13:14:30 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-17 16:29:09 -0400 |
commit | 953cafc04e9ef9d2fd9f8afb3b3bbde1f8bb9317 (patch) | |
tree | caf26f9874cf448608276423c2d6b5f325322b81 /drivers/media/common | |
parent | 649e13a95bb2aec489cc3194034a15a6e2916448 (diff) |
V4L/DVB (9268): tuner: add FMD1216MEX tuner
This tuner was already supported by proxy as an FMD1216ME, however,
the MEX uses a different FM Radio IF so this addition is now required.
Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/common')
-rw-r--r-- | drivers/media/common/tuners/tuner-simple.c | 2 | ||||
-rw-r--r-- | drivers/media/common/tuners/tuner-types.c | 33 |
2 files changed, 34 insertions, 1 deletions
diff --git a/drivers/media/common/tuners/tuner-simple.c b/drivers/media/common/tuners/tuner-simple.c index 2a1aac1cc755..fb3f3b3adaba 100644 --- a/drivers/media/common/tuners/tuner-simple.c +++ b/drivers/media/common/tuners/tuner-simple.c | |||
@@ -493,6 +493,7 @@ static int simple_radio_bandswitch(struct dvb_frontend *fe, u8 *buffer) | |||
493 | case TUNER_PHILIPS_FM1216ME_MK3: | 493 | case TUNER_PHILIPS_FM1216ME_MK3: |
494 | case TUNER_PHILIPS_FM1236_MK3: | 494 | case TUNER_PHILIPS_FM1236_MK3: |
495 | case TUNER_PHILIPS_FMD1216ME_MK3: | 495 | case TUNER_PHILIPS_FMD1216ME_MK3: |
496 | case TUNER_PHILIPS_FMD1216MEX_MK3: | ||
496 | case TUNER_LG_NTSC_TAPE: | 497 | case TUNER_LG_NTSC_TAPE: |
497 | case TUNER_PHILIPS_FM1256_IH3: | 498 | case TUNER_PHILIPS_FM1256_IH3: |
498 | case TUNER_TCL_MF02GIP_5N: | 499 | case TUNER_TCL_MF02GIP_5N: |
@@ -767,6 +768,7 @@ static void simple_set_dvb(struct dvb_frontend *fe, u8 *buf, | |||
767 | 768 | ||
768 | switch (priv->type) { | 769 | switch (priv->type) { |
769 | case TUNER_PHILIPS_FMD1216ME_MK3: | 770 | case TUNER_PHILIPS_FMD1216ME_MK3: |
771 | case TUNER_PHILIPS_FMD1216MEX_MK3: | ||
770 | if (params->u.ofdm.bandwidth == BANDWIDTH_8_MHZ && | 772 | if (params->u.ofdm.bandwidth == BANDWIDTH_8_MHZ && |
771 | params->frequency >= 158870000) | 773 | params->frequency >= 158870000) |
772 | buf[3] |= 0x08; | 774 | buf[3] |= 0x08; |
diff --git a/drivers/media/common/tuners/tuner-types.c b/drivers/media/common/tuners/tuner-types.c index 04961a1f44be..7c0bc064c008 100644 --- a/drivers/media/common/tuners/tuner-types.c +++ b/drivers/media/common/tuners/tuner-types.c | |||
@@ -946,7 +946,7 @@ static struct tuner_params tuner_tena_9533_di_params[] = { | |||
946 | }, | 946 | }, |
947 | }; | 947 | }; |
948 | 948 | ||
949 | /* ------------ TUNER_PHILIPS_FMD1216ME_MK3 - Philips PAL ------------ */ | 949 | /* ------------ TUNER_PHILIPS_FMD1216ME(X)_MK3 - Philips PAL ------------ */ |
950 | 950 | ||
951 | static struct tuner_range tuner_philips_fmd1216me_mk3_pal_ranges[] = { | 951 | static struct tuner_range tuner_philips_fmd1216me_mk3_pal_ranges[] = { |
952 | { 16 * 160.00 /*MHz*/, 0x86, 0x51, }, | 952 | { 16 * 160.00 /*MHz*/, 0x86, 0x51, }, |
@@ -984,6 +984,27 @@ static struct tuner_params tuner_philips_fmd1216me_mk3_params[] = { | |||
984 | }, | 984 | }, |
985 | }; | 985 | }; |
986 | 986 | ||
987 | static struct tuner_params tuner_philips_fmd1216mex_mk3_params[] = { | ||
988 | { | ||
989 | .type = TUNER_PARAM_TYPE_PAL, | ||
990 | .ranges = tuner_philips_fmd1216me_mk3_pal_ranges, | ||
991 | .count = ARRAY_SIZE(tuner_philips_fmd1216me_mk3_pal_ranges), | ||
992 | .has_tda9887 = 1, | ||
993 | .port1_active = 1, | ||
994 | .port2_active = 1, | ||
995 | .port2_fm_high_sensitivity = 1, | ||
996 | .port2_invert_for_secam_lc = 1, | ||
997 | .port1_set_for_fm_mono = 1, | ||
998 | .radio_if = 1, | ||
999 | .fm_gain_normal = 1, | ||
1000 | }, | ||
1001 | { | ||
1002 | .type = TUNER_PARAM_TYPE_DIGITAL, | ||
1003 | .ranges = tuner_philips_fmd1216me_mk3_dvb_ranges, | ||
1004 | .count = ARRAY_SIZE(tuner_philips_fmd1216me_mk3_dvb_ranges), | ||
1005 | .iffreq = 16 * 36.125, /*MHz*/ | ||
1006 | }, | ||
1007 | }; | ||
987 | 1008 | ||
988 | /* ------ TUNER_LG_TDVS_H06XF - LG INNOTEK / INFINEON ATSC ----- */ | 1009 | /* ------ TUNER_LG_TDVS_H06XF - LG INNOTEK / INFINEON ATSC ----- */ |
989 | 1010 | ||
@@ -1663,6 +1684,16 @@ struct tunertype tuners[] = { | |||
1663 | .params = tuner_tcl_mf02gip_5n_params, | 1684 | .params = tuner_tcl_mf02gip_5n_params, |
1664 | .count = ARRAY_SIZE(tuner_tcl_mf02gip_5n_params), | 1685 | .count = ARRAY_SIZE(tuner_tcl_mf02gip_5n_params), |
1665 | }, | 1686 | }, |
1687 | [TUNER_PHILIPS_FMD1216MEX_MK3] = { /* Philips PAL */ | ||
1688 | .name = "Philips FMD1216MEX MK3 Hybrid Tuner", | ||
1689 | .params = tuner_philips_fmd1216mex_mk3_params, | ||
1690 | .count = ARRAY_SIZE(tuner_philips_fmd1216mex_mk3_params), | ||
1691 | .min = 16 * 50.87, | ||
1692 | .max = 16 * 858.00, | ||
1693 | .stepsize = 166667, | ||
1694 | .initdata = tua603x_agc112, | ||
1695 | .sleepdata = (u8[]){ 4, 0x9c, 0x60, 0x85, 0x54 }, | ||
1696 | }, | ||
1666 | }; | 1697 | }; |
1667 | EXPORT_SYMBOL(tuners); | 1698 | EXPORT_SYMBOL(tuners); |
1668 | 1699 | ||