Skip to content

Commit

Permalink
V4L/DVB (6854): xc2028: be more specific about when applying offset f…
Browse files Browse the repository at this point in the history
…or 7MHz channels

We have been inserting a mystery 500kHz offset for tuning 7MHz channels,
however some experimentation reveals it is only needed under certain
conditions with specific firmware combinations.  Document these and only
apply the offset when we know it is required.

Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
  • Loading branch information
Chris Pascoe authored and Mauro Carvalho Chehab committed Jan 25, 2008
1 parent 9ca01e7 commit 897b842
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion drivers/media/video/tuner-xc2028.c
Original file line number Diff line number Diff line change
Expand Up @@ -875,7 +875,16 @@ static int generic_set_freq(struct dvb_frontend *fe, u32 freq /* in HZ */,
rc = send_seq(priv, {0x00, 0x00});
} else {
offset = 2750000;
if (priv->cur_fw.type & DTV7)
/*
* We must adjust the offset by 500kHz in two cases in order
* to correctly center the IF output:
* 1) When the ZARLINK456 or DIBCOM52 tables were explicitly
* selected and a 7MHz channel is tuned;
* 2) When tuning a VHF channel with DTV78 firmware.
*/
if (((priv->cur_fw.type & DTV7) &&
(priv->cur_fw.scode_table & (ZARLINK456 | DIBCOM52))) ||
((priv->cur_fw.type & DTV78) && freq < 470000000))
offset -= 500000;
}

Expand Down

0 comments on commit 897b842

Please sign in to comment.