diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-05 19:36:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-05 19:36:30 -0400 |
commit | f4d33337eac4007793ca11fd1ab68d91ce7aa762 (patch) | |
tree | b775ad213179822225a3e1c1a27e4cc16f8aff68 /drivers/media/v4l2-core/v4l2-dev.c | |
parent | 91c2ff7708d4edf73ef1f0abb3ea4a44b4b0cf1d (diff) | |
parent | 0f3bf3dc1ca394a8385079a5653088672b65c5c4 (diff) |
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab:
- removal of sn9c102. This device driver was replaced a long time ago
by gspca
- solo6x10 and go7007 webcam drivers moved from staging into
mainstream. They were waiting for an API to allow setting the image
detection matrix
- SDR drivers moved from staging into mainstream: sdr-msi3101 (renamed
as msi2500) and rtl2832
- added SDR driver for airspy
- added demux driver: si2165
- rework at several RC subsystem, making the code for RC-5 SZ variant
to be added at the standard RC5 decoder
- added decoder for the XMP IR protocol
- tuner driver moved from staging into mainstream: msi3101 (renamed as
msi001)
- added documentation for some additional SDR pixfmt
- some device tree bindings documented
- added support for exynos3250 at s5p-jpeg
- remove the obsolete, unmaintained and broken mx1_camera driver
- added support for remote controllers at au0828 driver
- added a RC driver: sunxi-cir
- several driver fixes, enhancements and cleanups.
* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (455 commits)
[media] cx23885: fix UNSET/TUNER_ABSENT confusion
[media] coda: fix build error by making reset control optional
[media] radio-miropcm20: fix sparse NULL pointer warning
[media] MAINTAINERS: Update go7007 pattern
[media] MAINTAINERS: Update solo6x10 patterns
[media] media: atmel-isi: add primary DT support
[media] media: atmel-isi: convert the pdata from pointer to structure
[media] media: atmel-isi: add v4l2 async probe support
[media] rcar_vin: add devicetree support
[media] media: pxa_camera device-tree support
[media] media: mt9m111: add device-tree suppport
[media] soc_camera: add support for dt binding soc_camera drivers
[media] media: soc_camera: pxa_camera documentation device-tree support
[media] media: mt9m111: add device-tree documentation
[media] s5p-mfc: remove unnecessary calling to function video_devdata()
[media] s5p-jpeg: add chroma subsampling adjustment for Exynos3250
[media] s5p-jpeg: Prevent erroneous downscaling for Exynos3250 SoC
[media] s5p-jpeg: Assure proper crop rectangle initialization
[media] s5p-jpeg: fix g_selection op
[media] s5p-jpeg: Adjust jpeg_bound_align_image to Exynos3250 needs
...
Diffstat (limited to 'drivers/media/v4l2-core/v4l2-dev.c')
-rw-r--r-- | drivers/media/v4l2-core/v4l2-dev.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c index 634d863c05b4..33617c365acc 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c | |||
@@ -335,7 +335,7 @@ static unsigned int v4l2_poll(struct file *filp, struct poll_table_struct *poll) | |||
335 | return DEFAULT_POLLMASK; | 335 | return DEFAULT_POLLMASK; |
336 | if (video_is_registered(vdev)) | 336 | if (video_is_registered(vdev)) |
337 | res = vdev->fops->poll(filp, poll); | 337 | res = vdev->fops->poll(filp, poll); |
338 | if (vdev->debug) | 338 | if (vdev->debug > 2) |
339 | printk(KERN_DEBUG "%s: poll: %08x\n", | 339 | printk(KERN_DEBUG "%s: poll: %08x\n", |
340 | video_device_node_name(vdev), res); | 340 | video_device_node_name(vdev), res); |
341 | return res; | 341 | return res; |
@@ -563,20 +563,18 @@ static void determine_valid_ioctls(struct video_device *vdev) | |||
563 | /* vfl_type and vfl_dir independent ioctls */ | 563 | /* vfl_type and vfl_dir independent ioctls */ |
564 | 564 | ||
565 | SET_VALID_IOCTL(ops, VIDIOC_QUERYCAP, vidioc_querycap); | 565 | SET_VALID_IOCTL(ops, VIDIOC_QUERYCAP, vidioc_querycap); |
566 | if (ops->vidioc_g_priority || | 566 | if (ops->vidioc_g_priority) |
567 | test_bit(V4L2_FL_USE_FH_PRIO, &vdev->flags)) | ||
568 | set_bit(_IOC_NR(VIDIOC_G_PRIORITY), valid_ioctls); | 567 | set_bit(_IOC_NR(VIDIOC_G_PRIORITY), valid_ioctls); |
569 | if (ops->vidioc_s_priority || | 568 | if (ops->vidioc_s_priority) |
570 | test_bit(V4L2_FL_USE_FH_PRIO, &vdev->flags)) | ||
571 | set_bit(_IOC_NR(VIDIOC_S_PRIORITY), valid_ioctls); | 569 | set_bit(_IOC_NR(VIDIOC_S_PRIORITY), valid_ioctls); |
572 | SET_VALID_IOCTL(ops, VIDIOC_STREAMON, vidioc_streamon); | ||
573 | SET_VALID_IOCTL(ops, VIDIOC_STREAMOFF, vidioc_streamoff); | ||
574 | /* Note: the control handler can also be passed through the filehandle, | 570 | /* Note: the control handler can also be passed through the filehandle, |
575 | and that can't be tested here. If the bit for these control ioctls | 571 | and that can't be tested here. If the bit for these control ioctls |
576 | is set, then the ioctl is valid. But if it is 0, then it can still | 572 | is set, then the ioctl is valid. But if it is 0, then it can still |
577 | be valid if the filehandle passed the control handler. */ | 573 | be valid if the filehandle passed the control handler. */ |
578 | if (vdev->ctrl_handler || ops->vidioc_queryctrl) | 574 | if (vdev->ctrl_handler || ops->vidioc_queryctrl) |
579 | set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls); | 575 | set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls); |
576 | if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl) | ||
577 | set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls); | ||
580 | if (vdev->ctrl_handler || ops->vidioc_g_ctrl || ops->vidioc_g_ext_ctrls) | 578 | if (vdev->ctrl_handler || ops->vidioc_g_ctrl || ops->vidioc_g_ext_ctrls) |
581 | set_bit(_IOC_NR(VIDIOC_G_CTRL), valid_ioctls); | 579 | set_bit(_IOC_NR(VIDIOC_G_CTRL), valid_ioctls); |
582 | if (vdev->ctrl_handler || ops->vidioc_s_ctrl || ops->vidioc_s_ext_ctrls) | 580 | if (vdev->ctrl_handler || ops->vidioc_s_ctrl || ops->vidioc_s_ext_ctrls) |
@@ -684,6 +682,8 @@ static void determine_valid_ioctls(struct video_device *vdev) | |||
684 | SET_VALID_IOCTL(ops, VIDIOC_DQBUF, vidioc_dqbuf); | 682 | SET_VALID_IOCTL(ops, VIDIOC_DQBUF, vidioc_dqbuf); |
685 | SET_VALID_IOCTL(ops, VIDIOC_CREATE_BUFS, vidioc_create_bufs); | 683 | SET_VALID_IOCTL(ops, VIDIOC_CREATE_BUFS, vidioc_create_bufs); |
686 | SET_VALID_IOCTL(ops, VIDIOC_PREPARE_BUF, vidioc_prepare_buf); | 684 | SET_VALID_IOCTL(ops, VIDIOC_PREPARE_BUF, vidioc_prepare_buf); |
685 | SET_VALID_IOCTL(ops, VIDIOC_STREAMON, vidioc_streamon); | ||
686 | SET_VALID_IOCTL(ops, VIDIOC_STREAMOFF, vidioc_streamoff); | ||
687 | } | 687 | } |
688 | 688 | ||
689 | if (is_vid || is_vbi) { | 689 | if (is_vid || is_vbi) { |