diff options
author | Manu Abraham | 2010-01-23 10:05:37 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab | 2010-05-18 05:46:48 +0200 |
commit | 85532d1454dd3df7327d12bf6ca7ef5a00bb1282 (patch) | |
tree | 134cea62cf5a1faa66ab5df54ac993977d3ae267 /drivers/media | |
parent | V4L/DVB: [STV090x, STV6110x] Use tuner sleep within the demodulator control (diff) | |
download | kernel-qcow2-linux-85532d1454dd3df7327d12bf6ca7ef5a00bb1282.tar.gz kernel-qcow2-linux-85532d1454dd3df7327d12bf6ca7ef5a00bb1282.tar.xz kernel-qcow2-linux-85532d1454dd3df7327d12bf6ca7ef5a00bb1282.zip |
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')
-rw-r--r-- | drivers/media/dvb/frontends/stv090x.c | 8 |
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) struct stv090x_state *state = fe->demodulator_priv; u32 reg; - if (state->config->tuner_init) { + if (stv090x_i2c_gate_ctrl(state, 1) < 0) + goto err; + + if (state->config->tuner_sleep) { if (state->config->tuner_sleep(fe) < 0) goto err_gateoff; } + if (stv090x_i2c_gate_ctrl(state, 0) < 0) + goto err; + dprintk(FE_DEBUG, 1, "Set %s to sleep", state->device == STV0900 ? "STV0900" : "STV0903"); |