diff options
Diffstat (limited to 'drivers/media/common/saa7146_fops.c')
-rw-r--r-- | drivers/media/common/saa7146_fops.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/media/common/saa7146_fops.c b/drivers/media/common/saa7146_fops.c index 428a543ec2ce..7d42c11c8684 100644 --- a/drivers/media/common/saa7146_fops.c +++ b/drivers/media/common/saa7146_fops.c | |||
@@ -309,6 +309,8 @@ static int fops_mmap(struct file *file, struct vm_area_struct * vma) | |||
309 | case VFL_TYPE_VBI: { | 309 | case VFL_TYPE_VBI: { |
310 | DEB_EE("V4L2_BUF_TYPE_VBI_CAPTURE: file:%p, vma:%p\n", | 310 | DEB_EE("V4L2_BUF_TYPE_VBI_CAPTURE: file:%p, vma:%p\n", |
311 | file, vma); | 311 | file, vma); |
312 | if (fh->dev->ext_vv_data->capabilities & V4L2_CAP_SLICED_VBI_OUTPUT) | ||
313 | return -ENODEV; | ||
312 | q = &fh->vbi_q; | 314 | q = &fh->vbi_q; |
313 | break; | 315 | break; |
314 | } | 316 | } |
@@ -331,6 +333,8 @@ static unsigned int fops_poll(struct file *file, struct poll_table_struct *wait) | |||
331 | DEB_EE("file:%p, poll:%p\n", file, wait); | 333 | DEB_EE("file:%p, poll:%p\n", file, wait); |
332 | 334 | ||
333 | if (vdev->vfl_type == VFL_TYPE_VBI) { | 335 | if (vdev->vfl_type == VFL_TYPE_VBI) { |
336 | if (fh->dev->ext_vv_data->capabilities & V4L2_CAP_SLICED_VBI_OUTPUT) | ||
337 | return res | POLLOUT | POLLWRNORM; | ||
334 | if( 0 == fh->vbi_q.streaming ) | 338 | if( 0 == fh->vbi_q.streaming ) |
335 | return res | videobuf_poll_stream(file, &fh->vbi_q, wait); | 339 | return res | videobuf_poll_stream(file, &fh->vbi_q, wait); |
336 | q = &fh->vbi_q; | 340 | q = &fh->vbi_q; |