Hi Hans,

Thanks for your work.

On 2018-10-05 09:49:10 +0200, Hans Verkuil wrote:
> From: Hans Verkuil <hans.verk...@cisco.com>
> 
> Now that all drivers have dropped vidioc_g/s_crop we can remove
> support for them in the V4L2 core.
> 
> Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>

If the quirk patch hurt my head this makes me smile!

Reviewed-by: Niklas Söderlund <niklas.soderlund+rene...@ragnatech.se>

> ---
>  drivers/media/v4l2-core/v4l2-dev.c   | 4 ++--
>  drivers/media/v4l2-core/v4l2-ioctl.c | 4 ----
>  include/media/v4l2-ioctl.h           | 8 --------
>  3 files changed, 2 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/media/v4l2-core/v4l2-dev.c 
> b/drivers/media/v4l2-core/v4l2-dev.c
> index 69e775930fc4..d81141d51faa 100644
> --- a/drivers/media/v4l2-core/v4l2-dev.c
> +++ b/drivers/media/v4l2-core/v4l2-dev.c
> @@ -621,9 +621,9 @@ static void determine_valid_ioctls(struct video_device 
> *vdev)
>               SET_VALID_IOCTL(ops, VIDIOC_TRY_DECODER_CMD, 
> vidioc_try_decoder_cmd);
>               SET_VALID_IOCTL(ops, VIDIOC_ENUM_FRAMESIZES, 
> vidioc_enum_framesizes);
>               SET_VALID_IOCTL(ops, VIDIOC_ENUM_FRAMEINTERVALS, 
> vidioc_enum_frameintervals);
> -             if (ops->vidioc_g_crop || ops->vidioc_g_selection)
> +             if (ops->vidioc_g_selection)
>                       set_bit(_IOC_NR(VIDIOC_G_CROP), valid_ioctls);
> -             if (ops->vidioc_s_crop || ops->vidioc_s_selection)
> +             if (ops->vidioc_s_selection)
>                       set_bit(_IOC_NR(VIDIOC_S_CROP), valid_ioctls);
>               SET_VALID_IOCTL(ops, VIDIOC_G_SELECTION, vidioc_g_selection);
>               SET_VALID_IOCTL(ops, VIDIOC_S_SELECTION, vidioc_s_selection);
> diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c 
> b/drivers/media/v4l2-core/v4l2-ioctl.c
> index 63a92285de39..a59954d351a2 100644
> --- a/drivers/media/v4l2-core/v4l2-ioctl.c
> +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
> @@ -2207,8 +2207,6 @@ static int v4l_g_crop(const struct v4l2_ioctl_ops *ops,
>       };
>       int ret;
>  
> -     if (ops->vidioc_g_crop)
> -             return ops->vidioc_g_crop(file, fh, p);
>       /* simulate capture crop using selection api */
>  
>       /* crop means compose for output devices */
> @@ -2239,8 +2237,6 @@ static int v4l_s_crop(const struct v4l2_ioctl_ops *ops,
>               .r = p->c,
>       };
>  
> -     if (ops->vidioc_s_crop)
> -             return ops->vidioc_s_crop(file, fh, p);
>       /* simulate capture crop using selection api */
>  
>       /* crop means compose for output devices */
> diff --git a/include/media/v4l2-ioctl.h b/include/media/v4l2-ioctl.h
> index 5848d92c30da..85fdd3f4b8ad 100644
> --- a/include/media/v4l2-ioctl.h
> +++ b/include/media/v4l2-ioctl.h
> @@ -222,10 +222,6 @@ struct v4l2_fh;
>   *   :ref:`VIDIOC_S_MODULATOR <vidioc_g_modulator>` ioctl
>   * @vidioc_cropcap: pointer to the function that implements
>   *   :ref:`VIDIOC_CROPCAP <vidioc_cropcap>` ioctl
> - * @vidioc_g_crop: pointer to the function that implements
> - *   :ref:`VIDIOC_G_CROP <vidioc_g_crop>` ioctl
> - * @vidioc_s_crop: pointer to the function that implements
> - *   :ref:`VIDIOC_S_CROP <vidioc_g_crop>` ioctl
>   * @vidioc_g_selection: pointer to the function that implements
>   *   :ref:`VIDIOC_G_SELECTION <vidioc_g_selection>` ioctl
>   * @vidioc_s_selection: pointer to the function that implements
> @@ -493,10 +489,6 @@ struct v4l2_ioctl_ops {
>       /* Crop ioctls */
>       int (*vidioc_cropcap)(struct file *file, void *fh,
>                             struct v4l2_cropcap *a);
> -     int (*vidioc_g_crop)(struct file *file, void *fh,
> -                          struct v4l2_crop *a);
> -     int (*vidioc_s_crop)(struct file *file, void *fh,
> -                          const struct v4l2_crop *a);
>       int (*vidioc_g_selection)(struct file *file, void *fh,
>                                 struct v4l2_selection *s);
>       int (*vidioc_s_selection)(struct file *file, void *fh,
> -- 
> 2.18.0
> 

-- 
Regards,
Niklas Söderlund

Reply via email to