aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/dvb/frontends/cx24110.c19
-rw-r--r--drivers/media/dvb/frontends/cx24110.h5
2 files changed, 6 insertions, 18 deletions
diff --git a/drivers/media/dvb/frontends/cx24110.c b/drivers/media/dvb/frontends/cx24110.c
index a8d0edd02cda..8d98ffb61e4e 100644
--- a/drivers/media/dvb/frontends/cx24110.c
+++ b/drivers/media/dvb/frontends/cx24110.c
@@ -366,17 +366,6 @@ static int cx24110_initfe(struct dvb_frontend* fe)
366 cx24110_writereg(state, cx24110_regdata[i].reg, cx24110_regdata[i].data); 366 cx24110_writereg(state, cx24110_regdata[i].reg, cx24110_regdata[i].data);
367 }; 367 };
368 368
369 if (state->config->pll_init) state->config->pll_init(fe);
370
371 return 0;
372}
373
374static int cx24110_sleep(struct dvb_frontend *fe)
375{
376 struct cx24110_state *state = fe->demodulator_priv;
377
378 if (state->config->pll_sleep)
379 return state->config->pll_sleep(fe);
380 return 0; 369 return 0;
381} 370}
382 371
@@ -548,7 +537,12 @@ static int cx24110_set_frontend(struct dvb_frontend* fe, struct dvb_frontend_par
548{ 537{
549 struct cx24110_state *state = fe->demodulator_priv; 538 struct cx24110_state *state = fe->demodulator_priv;
550 539
551 state->config->pll_set(fe, p); 540
541 if (fe->ops->tuner_ops.set_params) {
542 fe->ops->tuner_ops.set_params(fe, p);
543 if (fe->ops->i2c_gate_ctrl) fe->ops->i2c_gate_ctrl(fe, 0);
544 }
545
552 cx24110_set_inversion (state, p->inversion); 546 cx24110_set_inversion (state, p->inversion);
553 cx24110_set_fec (state, p->u.qpsk.fec_inner); 547 cx24110_set_fec (state, p->u.qpsk.fec_inner);
554 cx24110_set_symbolrate (state, p->u.qpsk.symbol_rate); 548 cx24110_set_symbolrate (state, p->u.qpsk.symbol_rate);
@@ -651,7 +645,6 @@ static struct dvb_frontend_ops cx24110_ops = {
651 .release = cx24110_release, 645 .release = cx24110_release,
652 646
653 .init = cx24110_initfe, 647 .init = cx24110_initfe,
654 .sleep = cx24110_sleep,
655 .set_frontend = cx24110_set_frontend, 648 .set_frontend = cx24110_set_frontend,
656 .get_frontend = cx24110_get_frontend, 649 .get_frontend = cx24110_get_frontend,
657 .read_status = cx24110_read_status, 650 .read_status = cx24110_read_status,
diff --git a/drivers/media/dvb/frontends/cx24110.h b/drivers/media/dvb/frontends/cx24110.h
index 609ac642b406..b354a64e0e74 100644
--- a/drivers/media/dvb/frontends/cx24110.h
+++ b/drivers/media/dvb/frontends/cx24110.h
@@ -31,11 +31,6 @@ struct cx24110_config
31{ 31{
32 /* the demodulator's i2c address */ 32 /* the demodulator's i2c address */
33 u8 demod_address; 33 u8 demod_address;
34
35 /* PLL maintenance */
36 int (*pll_init)(struct dvb_frontend* fe);
37 int (*pll_set)(struct dvb_frontend* fe, struct dvb_frontend_parameters* params);
38 int (*pll_sleep)(struct dvb_frontend* fe);
39}; 34};
40 35
41extern struct dvb_frontend* cx24110_attach(const struct cx24110_config* config, 36extern struct dvb_frontend* cx24110_attach(const struct cx24110_config* config,