aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb
diff options
context:
space:
mode:
authorManu Abraham <abraham.manu@gmail.com>2010-01-23 04:05:37 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-05-17 23:46:48 -0400
commit85532d1454dd3df7327d12bf6ca7ef5a00bb1282 (patch)
tree134cea62cf5a1faa66ab5df54ac993977d3ae267 /drivers/media/dvb
parentc5b74b0f5e81386ca1e9b1128de83502e92fa028 (diff)
V4L/DVB: [STV090x] Use gate control, while tuner is being accessed
Signed-off-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb')
-rw-r--r--drivers/media/dvb/frontends/stv090x.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/dvb/frontends/stv090x.c b/drivers/media/dvb/frontends/stv090x.c
index a80a34bb9eb8..3cc1be28534e 100644
--- a/drivers/media/dvb/frontends/stv090x.c
+++ b/drivers/media/dvb/frontends/stv090x.c
@@ -3838,11 +3838,17 @@ static int stv090x_sleep(struct dvb_frontend *fe)
3838 struct stv090x_state *state = fe->demodulator_priv; 3838 struct stv090x_state *state = fe->demodulator_priv;
3839 u32 reg; 3839 u32 reg;
3840 3840
3841 if (state->config->tuner_init) { 3841 if (stv090x_i2c_gate_ctrl(state, 1) < 0)
3842 goto err;
3843
3844 if (state->config->tuner_sleep) {
3842 if (state->config->tuner_sleep(fe) < 0) 3845 if (state->config->tuner_sleep(fe) < 0)
3843 goto err_gateoff; 3846 goto err_gateoff;
3844 } 3847 }
3845 3848
3849 if (stv090x_i2c_gate_ctrl(state, 0) < 0)
3850 goto err;
3851
3846 dprintk(FE_DEBUG, 1, "Set %s to sleep", 3852 dprintk(FE_DEBUG, 1, "Set %s to sleep",
3847 state->device == STV0900 ? "STV0900" : "STV0903"); 3853 state->device == STV0900 ? "STV0900" : "STV0903");
3848 3854