aboutsummaryrefslogtreecommitdiff
path: root/drivers/media/dvb-frontends/rtl2832_sdr.c
diff options
context:
space:
mode:
authorGravatar Antti Palosaari <crope@iki.fi> 2014-12-03 20:11:03 -0300
committerGravatar Mauro Carvalho Chehab <mchehab@osg.samsung.com> 2014-12-04 12:42:46 -0200
commit2281c8244b3cbb75c557076f427c4ed8fb32b88a (patch)
tree7b56968176232c26149b13cd97afc3762a3b91f4 /drivers/media/dvb-frontends/rtl2832_sdr.c
parent[media] v4l: vb2: Fix race condition in _vb2_fop_release (diff)
downloadlinux-2281c8244b3cbb75c557076f427c4ed8fb32b88a.tar.gz
linux-2281c8244b3cbb75c557076f427c4ed8fb32b88a.tar.bz2
linux-2281c8244b3cbb75c557076f427c4ed8fb32b88a.zip
[media] rtl2832_sdr: control ADC
Recent rtl28xxu patch I made moved demod ADC enable from power control to frontend control (due to slave demod support). Because of that we need call USB interface frontend control too in order to enable ADC. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/dvb-frontends/rtl2832_sdr.c')
-rw-r--r--drivers/media/dvb-frontends/rtl2832_sdr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/rtl2832_sdr.c b/drivers/media/dvb-frontends/rtl2832_sdr.c
index 7bf98cf6bbe1..2896b47c29d8 100644
--- a/drivers/media/dvb-frontends/rtl2832_sdr.c
+++ b/drivers/media/dvb-frontends/rtl2832_sdr.c
@@ -1013,6 +1013,10 @@ static int rtl2832_sdr_start_streaming(struct vb2_queue *vq, unsigned int count)
if (s->d->props->power_ctrl)
s->d->props->power_ctrl(s->d, 1);
+ /* enable ADC */
+ if (s->d->props->frontend_ctrl)
+ s->d->props->frontend_ctrl(s->fe, 1);
+
set_bit(POWER_ON, &s->flags);
ret = rtl2832_sdr_set_tuner(s);
@@ -1064,6 +1068,10 @@ static void rtl2832_sdr_stop_streaming(struct vb2_queue *vq)
clear_bit(POWER_ON, &s->flags);
+ /* disable ADC */
+ if (s->d->props->frontend_ctrl)
+ s->d->props->frontend_ctrl(s->fe, 0);
+
if (s->d->props->power_ctrl)
s->d->props->power_ctrl(s->d, 0);