]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: v4l2: Remove vidioc_g_ctrl callback
authorRicardo Ribalda <ribalda@chromium.org>
Sun, 23 Feb 2025 18:58:11 +0000 (18:58 +0000)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 5 Mar 2025 09:43:26 +0000 (10:43 +0100)
All the drivers either use the control framework or provide a
vidioc_g_ext_ctrls callback. We can remove this callback.

Thanks for your service!

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/v4l2-core/v4l2-dev.c
drivers/media/v4l2-core/v4l2-ioctl.c
include/media/v4l2-ioctl.h

index 5267a0686400d7247befb505b2199314af5ee06c..068ee67cd5743042a5370cfdf3b3a7a801cae111 100644 (file)
@@ -576,7 +576,7 @@ static void determine_valid_ioctls(struct video_device *vdev)
                __set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls);
        if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl)
                __set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls);
-       if (vdev->ctrl_handler || ops->vidioc_g_ctrl || ops->vidioc_g_ext_ctrls)
+       if (vdev->ctrl_handler || ops->vidioc_g_ext_ctrls)
                __set_bit(_IOC_NR(VIDIOC_G_CTRL), valid_ioctls);
        if (vdev->ctrl_handler || ops->vidioc_s_ctrl || ops->vidioc_s_ext_ctrls)
                __set_bit(_IOC_NR(VIDIOC_S_CTRL), valid_ioctls);
index fabe01afc17bcfcf07e8c4a9a301cf4be29f43df..25a05d00e9e427914bbd5d8e8db6c17b68617e6b 100644 (file)
@@ -2380,8 +2380,6 @@ static int v4l_g_ctrl(const struct v4l2_ioctl_ops *ops,
                return v4l2_g_ctrl(vfh->ctrl_handler, p);
        if (vfd->ctrl_handler)
                return v4l2_g_ctrl(vfd->ctrl_handler, p);
-       if (ops->vidioc_g_ctrl)
-               return ops->vidioc_g_ctrl(file, fh, p);
        if (ops->vidioc_g_ext_ctrls == NULL)
                return -ENOTTY;
 
index 013996c33a9ec4d1e5c4bef4d719fe066a6d0b03..4d69128023f8798ac526bf8d3b3299f824f88e34 100644 (file)
@@ -195,8 +195,6 @@ struct v4l2_fh;
  *     :ref:`VIDIOC_S_OUTPUT <vidioc_g_output>` ioctl
  * @vidioc_query_ext_ctrl: pointer to the function that implements
  *     :ref:`VIDIOC_QUERY_EXT_CTRL <vidioc_queryctrl>` ioctl
- * @vidioc_g_ctrl: pointer to the function that implements
- *     :ref:`VIDIOC_G_CTRL <vidioc_g_ctrl>` ioctl
  * @vidioc_s_ctrl: pointer to the function that implements
  *     :ref:`VIDIOC_S_CTRL <vidioc_g_ctrl>` ioctl
  * @vidioc_g_ext_ctrls: pointer to the function that implements
@@ -461,8 +459,6 @@ struct v4l2_ioctl_ops {
                /* Control handling */
        int (*vidioc_query_ext_ctrl)(struct file *file, void *fh,
                                     struct v4l2_query_ext_ctrl *a);
-       int (*vidioc_g_ctrl)(struct file *file, void *fh,
-                            struct v4l2_control *a);
        int (*vidioc_s_ctrl)(struct file *file, void *fh,
                             struct v4l2_control *a);
        int (*vidioc_g_ext_ctrls)(struct file *file, void *fh,