Re: [PATCH v4 0/7] media: uvcvideo: Invert granular PM logic + PM fix

From: Hans de Goede
Date: Mon Jul 07 2025 - 08:35:46 EST


Hi,

On 1-Jul-25 08:45, Ricardo Ribalda wrote:
> It makes more sense to have a list of the ioctls that need power than
> the other way around. This patchset takes care of this.
>
> It also fixes one error in the PM logic introduced in a recent patchset.
>
> To support CI I have included patches that are in uvc/for-next but not
> in media-committer:
> media: uvcvideo: Remove stream->is_streaming field
> media: uvcvideo: Split uvc_stop_streaming()
> media: uvcvideo: Handle locks in uvc_queue_return_buffers
> media: uvcvideo: Use vb2 ioctl and fop helpers
> Do not review them again.
>
> Signed-off-by: Ricardo Ribalda <ribalda@xxxxxxxxxxxx>

Thank you for the new version.

I've pushed patches 5-7 to uvc/for-next now (1-4 are
already there).

I plan to send a pull-request with these changes this Thursday.

Regards,

Hans


> ---
> Changes in v4:
> - CTRL_MAP DO need the device powered. Thanks Laurent
> - CodeStyle
> - use EXPORT_SYMBOL_GPL
> - Link to v3: https://lore.kernel.org/r/20250630-uvc-grannular-invert-v3-0-abd5cb5c45b7@xxxxxxxxxxxx
>
> Changes in v3:
> - Rebase
> - Merge Invert PM patch with add support for compat ioctls
> - Export different core function
> - Inline the pm_ioctl patch
> - Fix typo in comment
> - Link to v2: https://lore.kernel.org/r/20250602-uvc-grannular-invert-v2-0-c871934ad880@xxxxxxxxxxxx
>
> Changes in v2. Thanks HdG:
> - Rebase fop
> - CodeStyle
> - Refactor SEND_INITIAL to avoid lis_del()
> - Squash "invert PM logic" and "unless is needed"
> - Link to v1: https://lore.kernel.org/r/20250528-uvc-grannular-invert-v1-0-d01581f9cc25@xxxxxxxxxxxx
>
> ---
> Hans Verkuil (1):
> media: uvcvideo: Use vb2 ioctl and fop helpers
>
> Ricardo Ribalda (6):
> media: uvcvideo: Handle locks in uvc_queue_return_buffers
> media: uvcvideo: Split uvc_stop_streaming()
> media: uvcvideo: Remove stream->is_streaming field
> media: uvcvideo: Turn on the camera if V4L2_EVENT_SUB_FL_SEND_INITIAL
> media: core: export v4l2_translate_cmd
> media: uvcvideo: uvc_v4l2_unlocked_ioctl: Invert PM logic
>
> drivers/media/usb/uvc/uvc_ctrl.c | 10 +-
> drivers/media/usb/uvc/uvc_driver.c | 37 +---
> drivers/media/usb/uvc/uvc_metadata.c | 8 +-
> drivers/media/usb/uvc/uvc_queue.c | 199 +++++---------------
> drivers/media/usb/uvc/uvc_v4l2.c | 345 +++++------------------------------
> drivers/media/usb/uvc/uvcvideo.h | 37 +---
> drivers/media/v4l2-core/v4l2-ioctl.c | 5 +-
> include/media/v4l2-ioctl.h | 1 +
> 8 files changed, 112 insertions(+), 530 deletions(-)
> ---
> base-commit: 35392e855abf7d02ad3b061cbc75c7c7c37f0577
> change-id: 20250528-uvc-grannular-invert-19ad34c59391
>
> Best regards,