[PATCH v2 0/9] media: uvcvideo: Invert granular PM logic + PM fix

From: Ricardo Ribalda
Date: Mon Jun 02 2025 - 09:06:29 EST


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 two patches that are in uvc/next but not
in media-committer:
media: uvcvideo: Refactor uvc_queue_streamon
media: uvcvideo: Refactor uvc_v4l2_compat_ioctl32
Do not review them again.

To avoid conflicts I am adding the fop patchset as well:
media: uvcvideo: Use vb2 ioctl and fop helpers
media: uvcvideo: Remove stream->is_streaming field
Please review them in https://patchwork.linuxtv.org/project/linux-media/list/?series=15664

Signed-off-by: Ricardo Ribalda <ribalda@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 (8):
media: uvcvideo: Refactor uvc_queue_streamon
media: uvcvideo: Refactor uvc_v4l2_compat_ioctl32
media: uvcvideo: Remove stream->is_streaming field
media: uvcvideo: Turn on the camera if V4L2_EVENT_SUB_FL_SEND_INITIAL
media: uvcvideo: Do not enable camera during UVCIOC_CTRL_MAP*
media: uvcvideo: uvc_v4l2_unlocked_ioctl: Invert PM logic
media: core: export v4l2_compat_translate_cmd()
media: uvcvideo: Support granular power saving for compat syscalls

drivers/media/usb/uvc/uvc_ctrl.c | 8 +-
drivers/media/usb/uvc/uvc_driver.c | 34 +--
drivers/media/usb/uvc/uvc_metadata.c | 8 +-
drivers/media/usb/uvc/uvc_queue.c | 154 +----------
drivers/media/usb/uvc/uvc_v4l2.c | 367 +++++---------------------
drivers/media/usb/uvc/uvcvideo.h | 38 +--
drivers/media/v4l2-core/v4l2-compat-ioctl32.c | 1 +
7 files changed, 87 insertions(+), 523 deletions(-)
---
base-commit: 5e1ff2314797bf53636468a97719a8222deca9ae
change-id: 20250528-uvc-grannular-invert-19ad34c59391

Best regards,
--
Ricardo Ribalda <ribalda@xxxxxxxxxxxx>