summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/frontends/ds3000.c
diff options
context:
space:
mode:
authorIgor M. Liplianin <liplianin@me.by>2011-02-01 19:40:03 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-03-21 20:32:19 -0300
commita0ea298d57153cf71f9f7628830dbba1a9a8a15d (patch)
tree94ae96b1d2d32fcc9c473ece8cc7b4507371ab50 /drivers/media/dvb/frontends/ds3000.c
parent6951803c2402d1af0e76df051cc9b117f504550f (diff)
downloadop-kernel-dev-a0ea298d57153cf71f9f7628830dbba1a9a8a15d.zip
op-kernel-dev-a0ea298d57153cf71f9f7628830dbba1a9a8a15d.tar.gz
[media] ds3000: fill in demod init function
Make some initializations in init, not in tune function Signed-off-by: Igor M. Liplianin <liplianin@me.by> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/frontends/ds3000.c')
-rw-r--r--drivers/media/dvb/frontends/ds3000.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/drivers/media/dvb/frontends/ds3000.c b/drivers/media/dvb/frontends/ds3000.c
index fc61d92..655f182 100644
--- a/drivers/media/dvb/frontends/ds3000.c
+++ b/drivers/media/dvb/frontends/ds3000.c
@@ -1065,10 +1065,6 @@ static int ds3000_tune(struct dvb_frontend *fe,
/* Reset status register */
status = 0;
/* Tune */
- /* TS2020 init */
- ds3000_tuner_writereg(state, 0x42, 0x73);
- ds3000_tuner_writereg(state, 0x05, 0x01);
- ds3000_tuner_writereg(state, 0x62, 0xf5);
/* unknown */
ds3000_tuner_writereg(state, 0x07, 0x02);
ds3000_tuner_writereg(state, 0x10, 0x00);
@@ -1306,7 +1302,19 @@ static enum dvbfe_algo ds3000_get_algo(struct dvb_frontend *fe)
*/
static int ds3000_initfe(struct dvb_frontend *fe)
{
+ struct ds3000_state *state = fe->demodulator_priv;
+ int ret;
+
dprintk("%s()\n", __func__);
+ /* hard reset */
+ ds3000_writereg(state, 0x08, 0x01 | ds3000_readreg(state, 0x08));
+ msleep(1);
+
+ /* TS2020 init */
+ ds3000_tuner_writereg(state, 0x42, 0x73);
+ ds3000_tuner_writereg(state, 0x05, 0x01);
+ ds3000_tuner_writereg(state, 0x62, 0xf5);
+
return 0;
}
OpenPOWER on IntegriCloud