summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx231xx/cx231xx-video.c
diff options
context:
space:
mode:
authorDevin Heitmueller <dheitmueller@hauppauge.com>2010-07-12 21:50:30 +0200
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-10-21 05:17:26 +0200
commitc09d6695bd45bb5ac57d7766e2096fe03effd5cc (patch)
tree0e16a94191866fa19789d63ce2534f8a3f4ea7ea /drivers/media/video/cx231xx/cx231xx-video.c
parent[media] cx231xx: Remove hack which puts device into bulk mode (diff)
downloadlinux-c09d6695bd45bb5ac57d7766e2096fe03effd5cc.tar.xz
linux-c09d6695bd45bb5ac57d7766e2096fe03effd5cc.zip
[media] cx231xx: set standard tune to last known frequency when switching inputs
If switching to a tuner input, reset the standard and tune to the last known frequency. We need to do this in particular for this bridge since the tuner gets powered down when captuing on the composite or s-video inputs. Signed-off-by: Devin Heitmueller <dheitmueller@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx231xx/cx231xx-video.c')
-rw-r--r--drivers/media/video/cx231xx/cx231xx-video.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/media/video/cx231xx/cx231xx-video.c b/drivers/media/video/cx231xx/cx231xx-video.c
index 31097e403406..0880edd3a49b 100644
--- a/drivers/media/video/cx231xx/cx231xx-video.c
+++ b/drivers/media/video/cx231xx/cx231xx-video.c
@@ -1246,6 +1246,14 @@ static int vidioc_s_input(struct file *file, void *priv, unsigned int i)
video_mux(dev, i);
+ if (INPUT(i)->type == CX231XX_VMUX_TELEVISION ||
+ INPUT(i)->type == CX231XX_VMUX_CABLE) {
+ /* There's a tuner, so reset the standard and put it on the
+ last known frequency (since it was probably powered down
+ until now */
+ call_all(dev, core, s_std, dev->norm);
+ }
+
mutex_unlock(&dev->lock);
return 0;
}