diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-06-11 06:57:50 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-06-11 06:57:50 -0400 |
commit | 3a81029396ea0bf8d3815ad1337b6d99a8b18240 (patch) | |
tree | e05e448b0951bc7b8d37944c8caae1e09b6beee8 /linux | |
parent | 52bcb7460a6934b8b53c40964e2094d7998147ab (diff) | |
download | mediapointer-dvb-s2-3a81029396ea0bf8d3815ad1337b6d99a8b18240.tar.gz mediapointer-dvb-s2-3a81029396ea0bf8d3815ad1337b6d99a8b18240.tar.bz2 |
tuner-xc2028: Fix 7 MHz DVB-T
From: Andy Walls <awalls@radix.net>
The following patch should fix 7 MHz DVB-T with the XC3028 using the
DTV7 firmware from the xc3028-v27.fw firmware image.
Signed-off-by: Andy Walls <awalls@radix.net>
Tested-by: Terry Wu <terrywu2009@gmail.com>
[mchehab@redhat.com: thanks to John Ferlito, we have a real test in Australia]
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux')
-rw-r--r-- | linux/drivers/media/common/tuners/tuner-xc2028.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/linux/drivers/media/common/tuners/tuner-xc2028.c b/linux/drivers/media/common/tuners/tuner-xc2028.c index a7466867c..8ead0e1e1 100644 --- a/linux/drivers/media/common/tuners/tuner-xc2028.c +++ b/linux/drivers/media/common/tuners/tuner-xc2028.c @@ -1100,8 +1100,19 @@ static int xc2028_set_params(struct dvb_frontend *fe, } /* All S-code tables need a 200kHz shift */ - if (priv->ctrl.demod) + if (priv->ctrl.demod) { demod = priv->ctrl.demod + 200; + /* + * The DTV7 S-code table needs a 700 kHz shift. + * Thanks to Terry Wu <terrywu2009@gmail.com> for reporting this + * + * DTV7 is only used in Australia. Germany or Italy may also + * use this firmware after initialization, but a tune to a UHF + * channel should then cause DTV78 to be used. + */ + if (type & DTV7) + demod += 500; + } return generic_set_freq(fe, p->frequency, T_DIGITAL_TV, type, 0, demod); |