Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] pvrusb2: fix 7MHz & 8MHz DVB-T tuner support for HVR1900 rev D1F5

The D1F5 revision of the WinTV HVR-1900 uses a tda18271c2 tuner
instead of a tda18271c1 tuner as used in revision D1E9. To
account for this, we must hardcode the frontend configuration
to use the same IF frequency configuration for both revisions
of the device.

6MHz DVB-T is unaffected by this issue, as the recommended
IF Frequency configuration for 6MHz DVB-T is the same on both
c1 and c2 revisions of the tda18271 tuner.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Cc: Mike Isely <isely@pobox.com>
Cc: stable@kernel.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

authored by

Michael Krufky and committed by
Mauro Carvalho Chehab
9ab2393f 3be5bb71

+10
+10
drivers/media/video/pvrusb2/pvrusb2-devattr.c
··· 320 320 .probe_tuner = TDA829X_DONT_PROBE, 321 321 }; 322 322 323 + static struct tda18271_std_map hauppauge_tda18271_dvbt_std_map = { 324 + .dvbt_6 = { .if_freq = 3300, .agc_mode = 3, .std = 4, 325 + .if_lvl = 1, .rfagc_top = 0x37, }, 326 + .dvbt_7 = { .if_freq = 3800, .agc_mode = 3, .std = 5, 327 + .if_lvl = 1, .rfagc_top = 0x37, }, 328 + .dvbt_8 = { .if_freq = 4300, .agc_mode = 3, .std = 6, 329 + .if_lvl = 1, .rfagc_top = 0x37, }, 330 + }; 331 + 323 332 static struct tda18271_config hauppauge_tda18271_dvb_config = { 333 + .std_map = &hauppauge_tda18271_dvbt_std_map, 324 334 .gate = TDA18271_GATE_ANALOG, 325 335 .output_opt = TDA18271_OUTPUT_LT_OFF, 326 336 };