summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2009-01-26 23:13:05 +0100
committerHans Verkuil <hverkuil@xs4all.nl>2009-01-26 23:13:05 +0100
commitbd16f634ca88082a992fd51a9f2a94b83ead6a78 (patch)
treebf10a6e38047990f013892c626afa0af1f3d8356
parent7675a6ebbda69456487f54377309a922b4f415e9 (diff)
downloadmediapointer-dvb-s2-bd16f634ca88082a992fd51a9f2a94b83ead6a78.tar.gz
mediapointer-dvb-s2-bd16f634ca88082a992fd51a9f2a94b83ead6a78.tar.bz2
saa7146: fix VIDIOC_ENUMSTD.
From: Hans Verkuil <hverkuil@xs4all.nl> The previous conversion to video_ioctl2 broke VIDIOC_ENUMSTD. This is now fixed. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
-rw-r--r--linux/drivers/media/common/saa7146_fops.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/linux/drivers/media/common/saa7146_fops.c b/linux/drivers/media/common/saa7146_fops.c
index 4384bd16c..c6cc8574a 100644
--- a/linux/drivers/media/common/saa7146_fops.c
+++ b/linux/drivers/media/common/saa7146_fops.c
@@ -512,6 +512,7 @@ int saa7146_register_device(struct video_device **vid, struct saa7146_dev* dev,
struct saa7146_vv *vv = dev->vv_data;
struct video_device *vfd;
int err;
+ int i;
DEB_EE(("dev:%p, name:'%s', type:%d\n",dev,name,type));
@@ -521,9 +522,11 @@ int saa7146_register_device(struct video_device **vid, struct saa7146_dev* dev,
return -ENOMEM;
vfd->fops = &video_fops;
- vfd->ioctl_ops = dev->ext_vv_data ? &dev->ext_vv_data->ops :
- &saa7146_video_ioctl_ops;
+ vfd->ioctl_ops = &dev->ext_vv_data->ops;
vfd->release = video_device_release;
+ vfd->tvnorms = 0;
+ for (i = 0; i < dev->ext_vv_data->num_stds; i++)
+ vfd->tvnorms |= dev->ext_vv_data->stds[i].id;
strlcpy(vfd->name, name, sizeof(vfd->name));
video_set_drvdata(vfd, dev);