0015da5dbe81ff67a716c5a9d8a35d96132c34d7
[openwrt/staging/blogic.git] /
1 From e60e756a1354d248a01b4e1cd231c0ceb9d97a20 Mon Sep 17 00:00:00 2001
2 From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
3 Date: Tue, 24 Mar 2020 23:13:02 +0200
4 Subject: [PATCH] media: bcm2835-unicam: Disable event-related ioctls
5 on metadata node
6
7 The unicam driver supports both the SOURCE_CHANGE and CTRL events. Both
8 events are only generated on the image video node, so the event-related
9 ioctls are useless on the medatada node. Disable them.
10
11 Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
12 Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
13 Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
14 ---
15 drivers/media/platform/bcm2835/bcm2835-unicam.c | 5 +++++
16 1 file changed, 5 insertions(+)
17
18 --- a/drivers/media/platform/bcm2835/bcm2835-unicam.c
19 +++ b/drivers/media/platform/bcm2835/bcm2835-unicam.c
20 @@ -2374,6 +2374,11 @@ static int register_node(struct unicam_d
21 return -ENOMEM;
22 }
23
24 + if (node->pad_id == METADATA_PAD) {
25 + v4l2_disable_ioctl(vdev, VIDIOC_DQEVENT);
26 + v4l2_disable_ioctl(vdev, VIDIOC_SUBSCRIBE_EVENT);
27 + v4l2_disable_ioctl(vdev, VIDIOC_UNSUBSCRIBE_EVENT);
28 + }
29 if (node->pad_id == METADATA_PAD ||
30 !v4l2_subdev_has_op(unicam->sensor, video, s_std)) {
31 v4l2_disable_ioctl(&node->video_dev, VIDIOC_S_STD);