summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@infradead.org>2007-12-18 08:42:33 -0500
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-12-18 08:42:33 -0500
commit2d953c628662f68a0e645a1cbf770fcd6e52e517 (patch)
treefb958fe77791fe948675a93158963431fb1074fe /linux/drivers/media/video
parenta9fd9d1eb859b9a17efcf86f8e4826deb62e0fc0 (diff)
downloadmediapointer-dvb-s2-2d953c628662f68a0e645a1cbf770fcd6e52e517.tar.gz
mediapointer-dvb-s2-2d953c628662f68a0e645a1cbf770fcd6e52e517.tar.bz2
tuner-xc2028: ATSC requires 1.75 MHz tuning offset
From: Michael Krufky <mkrufky@infradead.org> In my testing yesterday, I was using a scan file tailored specifically for a unique test situation -- As it turns out, this scan file was bad, and I will use the one included inside dvb-apps for testing for now on. I've tested with other ATSC tuners just to confirm, using: us-ATSC-center-frequencies-8VSB Anyhow, as it turns out, the tuner-xc2028 *does* require a tuning offset for ATSC. Even though the linux-dvb api passes in center frequencies from userspace, apparantly the xceive firmware is already factoring in the tuning offset to center. In order to make the device function using the same scan files / channels.conf configurations as other atsc devices, we must offset by 1.75 MHz. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'linux/drivers/media/video')
-rw-r--r--linux/drivers/media/video/tuner-xc2028.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/linux/drivers/media/video/tuner-xc2028.c b/linux/drivers/media/video/tuner-xc2028.c
index 133ab1cfe..1e57fe744 100644
--- a/linux/drivers/media/video/tuner-xc2028.c
+++ b/linux/drivers/media/video/tuner-xc2028.c
@@ -888,7 +888,9 @@ static int generic_set_freq(struct dvb_frontend *fe, u32 freq /* in HZ */,
*/
if (new_mode == T_ANALOG_TV) {
rc = send_seq(priv, {0x00, 0x00});
- } else if (!(priv->cur_fw.type & ATSC)) {
+ } else if (priv->cur_fw.type & ATSC) {
+ offset = 1750000;
+ } else {
offset = 2750000;
/*
* We must adjust the offset by 500kHz in two cases in order