Commit efcf55cb authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Linus Torvalds

V4L/DVB (3419): This patch fixes Tuner TNF5335 family

Radio now works.
Tuner now supports both PAL/D and STD/MN models
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent b0500577
...@@ -364,6 +364,9 @@ static void default_set_radio_freq(struct i2c_client *c, unsigned int freq) ...@@ -364,6 +364,9 @@ static void default_set_radio_freq(struct i2c_client *c, unsigned int freq)
case TUNER_PHILIPS_FMD1216ME_MK3: case TUNER_PHILIPS_FMD1216ME_MK3:
buffer[3] = 0x19; buffer[3] = 0x19;
break; break;
case TUNER_TNF_5335MF:
buffer[3] = 0x11;
break;
case TUNER_PHILIPS_FM1256_IH3: case TUNER_PHILIPS_FM1256_IH3:
div = (20 * freq) / 16000 + (int)(33.3 * 20); /* IF 33.3 MHz */ div = (20 * freq) / 16000 + (int)(33.3 * 20); /* IF 33.3 MHz */
buffer[3] = 0x19; buffer[3] = 0x19;
......
...@@ -950,12 +950,22 @@ static struct tuner_params tuner_tuv1236d_params[] = { ...@@ -950,12 +950,22 @@ static struct tuner_params tuner_tuv1236d_params[] = {
}, },
}; };
/* ------------ TUNER_TNF_5335MF - Philips NTSC ------------ */ /* ------------ TUNER_TNF_xxx5 - Texas Instruments--------- */
/* This is known to work with Tenna TVF58t5-MFF and TVF5835 MFF
* but it is expected to work also with other Tenna/Ymec
* models based on TI SN 761677 chip on both PAL and NTSC
*/
static struct tuner_range tuner_tnf_5335_d_if_pal_ranges[] = {
{ 16 * 168.25 /*MHz*/, 0x8e, 0x01, },
{ 16 * 471.25 /*MHz*/, 0x8e, 0x02, },
{ 16 * 999.99 , 0x8e, 0x08, },
};
static struct tuner_range tuner_tnf_5335mf_ntsc_ranges[] = { static struct tuner_range tuner_tnf_5335mf_ntsc_ranges[] = {
{ 16 * 157.25 /*MHz*/, 0x8e, 0x01, }, { 16 * 169.25 /*MHz*/, 0x8e, 0x01, },
{ 16 * 454.00 /*MHz*/, 0x8e, 0x02, }, { 16 * 469.25 /*MHz*/, 0x8e, 0x02, },
{ 16 * 999.99 , 0x8e, 0x04, }, { 16 * 999.99 , 0x8e, 0x08, },
}; };
static struct tuner_params tuner_tnf_5335mf_params[] = { static struct tuner_params tuner_tnf_5335mf_params[] = {
...@@ -964,6 +974,11 @@ static struct tuner_params tuner_tnf_5335mf_params[] = { ...@@ -964,6 +974,11 @@ static struct tuner_params tuner_tnf_5335mf_params[] = {
.ranges = tuner_tnf_5335mf_ntsc_ranges, .ranges = tuner_tnf_5335mf_ntsc_ranges,
.count = ARRAY_SIZE(tuner_tnf_5335mf_ntsc_ranges), .count = ARRAY_SIZE(tuner_tnf_5335mf_ntsc_ranges),
}, },
{
.type = TUNER_PARAM_TYPE_PAL,
.ranges = tuner_tnf_5335_d_if_pal_ranges,
.count = ARRAY_SIZE(tuner_tnf_5335_d_if_pal_ranges),
},
}; };
/* 70-79 */ /* 70-79 */
...@@ -1354,8 +1369,8 @@ struct tunertype tuners[] = { ...@@ -1354,8 +1369,8 @@ struct tunertype tuners[] = {
.params = tuner_tuv1236d_params, .params = tuner_tuv1236d_params,
.count = ARRAY_SIZE(tuner_tuv1236d_params), .count = ARRAY_SIZE(tuner_tuv1236d_params),
}, },
[TUNER_TNF_5335MF] = { /* Philips NTSC */ [TUNER_TNF_5335MF] = { /* Tenna PAL/NTSC */
.name = "Tena TNF 5335 MF", .name = "Tena TNF 5335 and similar models",
.params = tuner_tnf_5335mf_params, .params = tuner_tnf_5335mf_params,
.count = ARRAY_SIZE(tuner_tnf_5335mf_params), .count = ARRAY_SIZE(tuner_tnf_5335mf_params),
}, },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment