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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



There are some new revisions of the HVR-1900 around whose DVB-T
support is broken without this small bug-fix.  Please merge asap -
this fix needs to go to stable kernels as well.  It applies cleanly
against *all* recent kernels.

The following changes since commit 805a6af8dba5dfdd35ec35dc52ec0122400b2610:

  Linux 3.2 (2012-01-04 15:55:44 -0800)

are available in the git repository at:
  git://linuxtv.org/mkrufky/hauppauge surrey

Michael Krufky (1):
      pvrusb2: fix 7MHz & 8MHz DVB-T tuner support for HVR1900 rev D1F5

 drivers/media/video/pvrusb2/pvrusb2-devattr.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)
From 7202e49582611ccd70e93db8b8f75c0811015444 Mon Sep 17 00:00:00 2001
From: Michael Krufky <mkrufky@xxxxxxxxxxx>
Date: Tue, 7 Feb 2012 11:28:33 -0500
Subject: [PATCH] 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@xxxxxxxxxxx>
Cc: Mike Isely <isely@xxxxxxxxx>
Cc: stable@xxxxxxxxxx
---
 drivers/media/video/pvrusb2/pvrusb2-devattr.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/drivers/media/video/pvrusb2/pvrusb2-devattr.c b/drivers/media/video/pvrusb2/pvrusb2-devattr.c
index c6da8f7..d8c8982 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-devattr.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-devattr.c
@@ -320,7 +320,17 @@ static struct tda829x_config tda829x_no_probe = {
 	.probe_tuner = TDA829X_DONT_PROBE,
 };
 
+static struct tda18271_std_map hauppauge_tda18271_dvbt_std_map = {
+        .dvbt_6   = { .if_freq = 3300, .agc_mode = 3, .std = 4,
+                      .if_lvl = 1, .rfagc_top = 0x37, },
+        .dvbt_7   = { .if_freq = 3800, .agc_mode = 3, .std = 5,
+                      .if_lvl = 1, .rfagc_top = 0x37, },
+        .dvbt_8   = { .if_freq = 4300, .agc_mode = 3, .std = 6,
+                      .if_lvl = 1, .rfagc_top = 0x37, },
+};
+
 static struct tda18271_config hauppauge_tda18271_dvb_config = {
+	.std_map = &hauppauge_tda18271_dvbt_std_map,
 	.gate    = TDA18271_GATE_ANALOG,
 	.output_opt = TDA18271_OUTPUT_LT_OFF,
 };
-- 
1.7.5.4


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux