diff options
Diffstat (limited to 'linux/drivers/media/common/saa7146_video.c')
-rw-r--r-- | linux/drivers/media/common/saa7146_video.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/linux/drivers/media/common/saa7146_video.c b/linux/drivers/media/common/saa7146_video.c index f83caee1b..af13891b9 100644 --- a/linux/drivers/media/common/saa7146_video.c +++ b/linux/drivers/media/common/saa7146_video.c @@ -972,8 +972,11 @@ int saa7146_video_do_ioctl(struct inode *inode, struct file *file, unsigned int ctrl = ctrl_by_id(c->id); if( NULL == ctrl ) { + return -EINVAL; +/* c->flags = V4L2_CTRL_FLAG_DISABLED; return 0; +*/ } DEB_EE(("VIDIOC_QUERYCTRL: id:%d\n",c->id)); @@ -1205,7 +1208,7 @@ int saa7146_video_do_ioctl(struct inode *inode, struct file *file, unsigned int q = &fh->video_q; down(&q->lock); - err = videobuf_mmap_setup(file,q,gbuffers,gbufsize); // ,V4L2_MEMORY_MMAP); + err = videobuf_mmap_setup(file,q,gbuffers,gbufsize, V4L2_MEMORY_MMAP); if (err < 0) { up(&q->lock); return err; @@ -1249,6 +1252,8 @@ static int buffer_prepare(struct file *file, struct videobuf_buffer *vb, enum v4 struct saa7146_buf *buf = (struct saa7146_buf *)vb; int size,err = 0; + DEB_CAP(("vbuf:%p\n",vb)); + /* sanity checks */ if (fh->video_fmt.width < 64 || fh->video_fmt.height < 64 || |