summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/frontends
diff options
context:
space:
mode:
authorManu Abraham <manu@linuxtv.org>2009-04-09 01:27:10 +0400
committerManu Abraham <manu@linuxtv.org>2009-04-09 01:27:10 +0400
commite380ca95f7765ba08766f2a412d74c67f77a269a (patch)
treefbe64c9bfe3a922e6d5d7c8c4b613d7a7cc5296f /linux/drivers/media/dvb/frontends
parentfa0f1c1e69e4c7711855792ff509c438034fddfc (diff)
downloadmediapointer-dvb-s2-e380ca95f7765ba08766f2a412d74c67f77a269a.tar.gz
mediapointer-dvb-s2-e380ca95f7765ba08766f2a412d74c67f77a269a.tar.bz2
Switch i/p ADC as well during Power management
From: Manu Abraham <abraham.manu@gmail.com> Signed-off-by: Manu Abraham <manu@linuxtv.org>
Diffstat (limited to 'linux/drivers/media/dvb/frontends')
-rw-r--r--linux/drivers/media/dvb/frontends/stv090x.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/linux/drivers/media/dvb/frontends/stv090x.c b/linux/drivers/media/dvb/frontends/stv090x.c
index 011ef160a..6071b3aab 100644
--- a/linux/drivers/media/dvb/frontends/stv090x.c
+++ b/linux/drivers/media/dvb/frontends/stv090x.c
@@ -4279,6 +4279,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");
@@ -4298,6 +4303,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");