summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/usbvision/usbvision-video.c
diff options
context:
space:
mode:
authorThierry MERLE <thierry.merle@free.fr>2007-06-26 21:35:30 +0200
committerThierry MERLE <thierry.merle@free.fr>2007-06-26 21:35:30 +0200
commitd531e1dbeb7dad87f971e1d651c925b11e99b9cb (patch)
tree9474c7565af40065142e52f5ea3d2e0857310f1c /linux/drivers/media/video/usbvision/usbvision-video.c
parent6ae80bde9277ca2bb20f11b6c9fb646fdb77ca71 (diff)
downloadmediapointer-dvb-s2-d531e1dbeb7dad87f971e1d651c925b11e99b9cb.tar.gz
mediapointer-dvb-s2-d531e1dbeb7dad87f971e1d651c925b11e99b9cb.tar.bz2
usbvision: video mux cleanup
From: Thierry MERLE <thierry.merle@free.fr> - usbvision_muxsel simplified, now uses some well known constants. - since the decoder needs to change input norm, call to muxsel added when changing video standard. Acked-by: Dwaine Garden <DwaineGarden@rogers.com> Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
Diffstat (limited to 'linux/drivers/media/video/usbvision/usbvision-video.c')
-rw-r--r--linux/drivers/media/video/usbvision/usbvision-video.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/linux/drivers/media/video/usbvision/usbvision-video.c b/linux/drivers/media/video/usbvision/usbvision-video.c
index 41b3a0d42..fcc0807f5 100644
--- a/linux/drivers/media/video/usbvision/usbvision-video.c
+++ b/linux/drivers/media/video/usbvision/usbvision-video.c
@@ -671,10 +671,9 @@ static int vidioc_s_input (struct file *file, void *priv, unsigned int input)
if ((input >= usbvision->video_inputs) || (input < 0) )
return -EINVAL;
- usbvision->ctl_input = input;
down(&usbvision->lock);
- usbvision_muxsel(usbvision, usbvision->ctl_input);
+ usbvision_muxsel(usbvision, input);
usbvision_set_input(usbvision);
usbvision_set_output(usbvision,
usbvision->curwidth,
@@ -694,6 +693,8 @@ static int vidioc_s_std (struct file *file, void *priv, v4l2_std_id *id)
call_i2c_clients(usbvision, VIDIOC_S_STD,
&usbvision->tvnormId);
up(&usbvision->lock);
+ /* propagate the change to the decoder */
+ usbvision_muxsel(usbvision, usbvision->ctl_input);
return 0;
}