V4L/DVB (6875): tuner-xc2028: ATSC requires 1.75 MHz tuning offset
authorMichael Krufky <mkrufky@infradead.org>
Tue, 18 Dec 2007 13:42:33 +0000 (10:42 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Fri, 25 Jan 2008 21:04:09 +0000 (19:04 -0200)
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>
drivers/media/video/tuner-xc2028.c

index d367f205c98a7fac83263ca9a4fc7dcebc29f16b..5ed12e2272e97c53f38e57b1ec5c73dc074d2a61 100644 (file)
@@ -873,7 +873,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
This page took 0.02523 seconds and 5 git commands to generate.