aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/dvb/frontends/stv090x.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/stv090x.c b/drivers/media/dvb/frontends/stv090x.c
index 6aaeda1cf24..4dc723c4264 100644
--- a/drivers/media/dvb/frontends/stv090x.c
+++ b/drivers/media/dvb/frontends/stv090x.c
@@ -3494,6 +3494,11 @@ static int stv090x_sleep(struct dvb_frontend *fe)
if (stv090x_write_reg(state, STV090x_SYNTCTRL, reg) < 0)
goto err;
+ reg = stv090x_read_reg(state, STV090x_TSTTNR1);
+ STV090x_SETFIELD(reg, ADC1_PON_FIELD, 0);
+ if (stv090x_write_reg(state, STV090x_TSTTNR1, reg) < 0)
+ goto err;
+
return 0;
err:
dprintk(FE_ERROR, 1, "I/O error");
@@ -3513,6 +3518,11 @@ static int stv090x_wakeup(struct dvb_frontend *fe)
if (stv090x_write_reg(state, STV090x_SYNTCTRL, reg) < 0)
goto err;
+ reg = stv090x_read_reg(state, STV090x_TSTTNR1);
+ STV090x_SETFIELD(reg, ADC1_PON_FIELD, 1);
+ if (stv090x_write_reg(state, STV090x_TSTTNR1, reg) < 0)
+ goto err;
+
return 0;
err:
dprintk(FE_ERROR, 1, "I/O error");