[PATCH v4 0/5] media: uvcvideo: use vb2 ioctl and fop helpers

Ricardo Ribalda posted 5 patches 3 months, 3 weeks ago
drivers/media/usb/uvc/uvc_driver.c   |  39 ++---
drivers/media/usb/uvc/uvc_metadata.c |   8 +-
drivers/media/usb/uvc/uvc_queue.c    | 194 +++++------------------
drivers/media/usb/uvc/uvc_v4l2.c     | 293 ++---------------------------------
drivers/media/usb/uvc/uvcvideo.h     |  38 +----
5 files changed, 68 insertions(+), 504 deletions(-)
[PATCH v4 0/5] media: uvcvideo: use vb2 ioctl and fop helpers
Posted by Ricardo Ribalda 3 months, 3 weeks ago
This is a rebump of a 4 years old patch from Hans.
https://lore.kernel.org/linux-media/20210618122923.385938-21-ribalda@chromium.org/

It brings "new" helpers to the uvcdriver and removes tons of code.

The patch:
media: uvcvideo: Refactor uvc_queue_streamon
Is already in the uvc tree. It is here just for CI purposes, do not
review.

I have uploaded my working tree at:
https://gitlab.freedesktop.org/linux-media/users/ribalda/-/commits/b4/uvc-fop
which shows the differences from the original patch, this is mainly for
helping the review to people familiar with the previous patch.

The patch:
"media: uvcvideo: Use prio state from v4l2_device"
is just for RFC, the set can land without it.

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
Changes in v4:
- Improve commit messages
- Move prio changes to a different patch
- Add missing lock
- Remove redundant file->private_data = NULL;
- Link to v3: https://lore.kernel.org/r/20250602-uvc-fop-v3-0-a99e18f65640@chromium.org

Changes in v3:
- Refactor start/stop_streaming(): make meta and video versions
- Link to v2: https://lore.kernel.org/r/20250602-uvc-fop-v2-0-508a293eae81@chromium.org

Changes in v2, Thanks HansV:
- Fix typos
- Use start_streaming and stop_streaming for managing pm
- Link to v1: https://lore.kernel.org/r/20250522-uvc-fop-v1-0-3bfe7a00f31d@chromium.org

---
Hans Verkuil (1):
      media: uvcvideo: Use vb2 ioctl and fop helpers

Ricardo Ribalda (4):
      media: uvcvideo: Handle locks in uvc_queue_return_buffers
      media: uvcvideo: Split uvc_stop_streaming()
      media: uvcvideo: Remove stream->is_streaming field
      media: uvcvideo: Use prio state from v4l2_device

 drivers/media/usb/uvc/uvc_driver.c   |  39 ++---
 drivers/media/usb/uvc/uvc_metadata.c |   8 +-
 drivers/media/usb/uvc/uvc_queue.c    | 194 +++++------------------
 drivers/media/usb/uvc/uvc_v4l2.c     | 293 ++---------------------------------
 drivers/media/usb/uvc/uvcvideo.h     |  38 +----
 5 files changed, 68 insertions(+), 504 deletions(-)
---
base-commit: def55d9b22d294e47a2b4c9eb09a0e9faade7ae7
change-id: 20250521-uvc-fop-b74e9007dd51

Best regards,
-- 
Ricardo Ribalda <ribalda@chromium.org>