[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250327180026.GD11416@pendragon.ideasonboard.com>
Date: Thu, 27 Mar 2025 20:00:26 +0200
From: Laurent Pinchart <laurent.pinchart@...asonboard.com>
To: Ricardo Ribalda <ribalda@...omium.org>
Cc: Hans de Goede <hdegoede@...hat.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Guennadi Liakhovetski <guennadi.liakhovetski@...el.com>,
linux-media@...r.kernel.org, linux-kernel@...r.kernel.org,
Mauro Carvalho Chehab <mchehab+samsung@...nel.org>
Subject: Re: [PATCH v5 5/5] media: uvcvideo: Do not turn on the camera for
some ioctls
Hi Ricardo,
Thank you for the patch.
On Mon, Mar 03, 2025 at 07:13:42PM +0000, Ricardo Ribalda wrote:
> There are some ioctls that do not need to turn on the camera. Do not
> call uvc_pm_get in those cases.
>
> Reviewed-by: Hans de Goede <hdegoede@...hat.com>
> Signed-off-by: Ricardo Ribalda <ribalda@...omium.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@...asonboard.com>
> ---
> drivers/media/usb/uvc/uvc_v4l2.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/drivers/media/usb/uvc/uvc_v4l2.c b/drivers/media/usb/uvc/uvc_v4l2.c
> index 6af93e00b304..de8d26164996 100644
> --- a/drivers/media/usb/uvc/uvc_v4l2.c
> +++ b/drivers/media/usb/uvc/uvc_v4l2.c
> @@ -1450,6 +1450,26 @@ static long uvc_v4l2_video_ioctl2(struct file *file,
> {
> struct uvc_fh *handle = file->private_data;
>
> + /* The following IOCTLs do not need to turn on the camera. */
> + switch (cmd) {
> + case VIDIOC_CREATE_BUFS:
> + case VIDIOC_DQBUF:
> + case VIDIOC_ENUM_FMT:
> + case VIDIOC_ENUM_FRAMEINTERVALS:
> + case VIDIOC_ENUM_FRAMESIZES:
> + case VIDIOC_ENUMINPUT:
> + case VIDIOC_EXPBUF:
> + case VIDIOC_G_FMT:
> + case VIDIOC_G_PARM:
> + case VIDIOC_G_SELECTION:
> + case VIDIOC_QBUF:
> + case VIDIOC_QUERYCAP:
> + case VIDIOC_REQBUFS:
> + case VIDIOC_SUBSCRIBE_EVENT:
> + case VIDIOC_UNSUBSCRIBE_EVENT:
> + return video_ioctl2(file, cmd, arg);
> + }
> +
> guard(uvc_pm)(handle->stream->dev);
>
> return video_ioctl2(file, cmd, arg);
--
Regards,
Laurent Pinchart
Powered by blists - more mailing lists