Commit cd2cd0aa authored by Michael Krufky's avatar Michael Krufky Committed by Mauro Carvalho Chehab

V4L/DVB (5799): Or51211: remove hardcoded fcv1236d tuner programming

- Remove hardcoded fcv1236d tuner programmming from or51211.c
- Alter dvb-bt8xx for the pcHDTV-2000 to use dvb-pll for fcv1236d support.
Thanks to Jarom Hatch <jshatch@gmail.com> for testing this change.
Signed-off-by: default avatarMichael Krufky <mkrufky@linuxtv.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent f1b24397
...@@ -692,6 +692,9 @@ static void frontend_init(struct dvb_bt8xx_card *card, u32 type) ...@@ -692,6 +692,9 @@ static void frontend_init(struct dvb_bt8xx_card *card, u32 type)
case BTTV_BOARD_PC_HDTV: case BTTV_BOARD_PC_HDTV:
card->fe = dvb_attach(or51211_attach, &or51211_config, card->i2c_adapter); card->fe = dvb_attach(or51211_attach, &or51211_config, card->i2c_adapter);
if (card->fe != NULL)
dvb_attach(dvb_pll_attach, card->fe, 0x61,
card->i2c_adapter, DVB_PLL_FCV1236D);
break; break;
} }
......
...@@ -223,38 +223,13 @@ static int or51211_set_parameters(struct dvb_frontend* fe, ...@@ -223,38 +223,13 @@ static int or51211_set_parameters(struct dvb_frontend* fe,
struct dvb_frontend_parameters *param) struct dvb_frontend_parameters *param)
{ {
struct or51211_state* state = fe->demodulator_priv; struct or51211_state* state = fe->demodulator_priv;
u32 freq = 0;
u16 tunerfreq = 0;
u8 buf[4];
/* Change only if we are actually changing the channel */ /* Change only if we are actually changing the channel */
if (state->current_frequency != param->frequency) { if (state->current_frequency != param->frequency) {
freq = 44000 + (param->frequency/1000); if (fe->ops.tuner_ops.set_params) {
tunerfreq = freq * 16/1000; fe->ops.tuner_ops.set_params(fe, param);
if (fe->ops.i2c_gate_ctrl) fe->ops.i2c_gate_ctrl(fe, 0);
dprintk("set_parameters frequency = %d (tunerfreq = %d)\n",
param->frequency,tunerfreq);
buf[0] = (tunerfreq >> 8) & 0x7F;
buf[1] = (tunerfreq & 0xFF);
buf[2] = 0x8E;
if (param->frequency < 157250000) {
buf[3] = 0xA0;
dprintk("set_parameters VHF low range\n");
} else if (param->frequency < 454000000) {
buf[3] = 0x90;
dprintk("set_parameters VHF high range\n");
} else {
buf[3] = 0x30;
dprintk("set_parameters UHF range\n");
} }
dprintk("set_parameters tuner bytes: 0x%02x 0x%02x "
"0x%02x 0x%02x\n",buf[0],buf[1],buf[2],buf[3]);
if (i2c_writebytes(state,0xC2>>1,buf,4))
printk(KERN_WARNING "or51211:set_parameters error "
"writing to tuner\n");
/* Set to ATSC mode */ /* Set to ATSC mode */
or51211_setmode(fe,0); or51211_setmode(fe,0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment