aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorManu Abraham <abraham.manu@gmail.com>2007-09-22 21:39:17 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-29 17:53:16 -0200
commitde29eb82595684c937cf0e2578479f4fcb9c9e40 (patch)
tree98e634d5e9e56b4509fc7000a92b3106e928be24 /drivers
parent41e1151b33cce7e19cfba1648d05abd34a0ba492 (diff)
V4L/DVB (9396): Fix clocks at stb0899
Really silly! Disabled all clocks and expected it to run. Signed-off-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/dvb/frontends/stb0899_drv.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/dvb/frontends/stb0899_drv.c b/drivers/media/dvb/frontends/stb0899_drv.c
index 598e3348d53..db620f02eda 100644
--- a/drivers/media/dvb/frontends/stb0899_drv.c
+++ b/drivers/media/dvb/frontends/stb0899_drv.c
@@ -251,7 +251,6 @@ int _stb0899_read_reg(struct stb0899_state *state, unsigned int reg)
dprintk(verbose, FE_ERROR, 1, "Reg=[0x%02x], data=%02x",
reg, buf);
-
return (unsigned int)buf;
}
@@ -812,6 +811,13 @@ static int stb0899_wakeup(struct dvb_frontend *fe)
int rc;
struct stb0899_state *state = fe->demodulator_priv;
+ if ((rc = stb0899_write_reg(state, STB0899_SYNTCTRL, STB0899_SELOSCI)))
+ return rc;
+ /* Activate all clocks; DVB-S2 registers are inaccessible otherwise. */
+ if ((rc = stb0899_write_reg(state, STB0899_STOPCLK1, 0x00)))
+ return rc;
+ if ((rc = stb0899_write_reg(state, STB0899_STOPCLK2, 0x00)))
+ return rc;
return 0;
}
@@ -1825,7 +1831,6 @@ static int stb0899_get_params(struct dvb_frontend *fe, struct dvbfe_params *para
dprintk(verbose, FE_DEBUG, 1, "Get DSS params");
params->delsys.dss.symbol_rate = internal->srate;
params->delsys.dss.modulation = DVBFE_MOD_QPSK;
-
break;
case DVBFE_DELSYS_DVBS2:
dprintk(verbose, FE_DEBUG, 1, "Get DVB-S2 params");