Linux Media Controller development
 help / color / mirror / Atom feed
* [PATCH v5 0/5] media: uvcvideo: Implement Granular Power Saving
@ 2025-03-03 19:13 Ricardo Ribalda
  2025-03-03 19:13 ` [PATCH v5 1/5] media: uvcvideo: Keep streaming state in the file handle Ricardo Ribalda
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Ricardo Ribalda @ 2025-03-03 19:13 UTC (permalink / raw)
  To: Laurent Pinchart, Hans de Goede, Mauro Carvalho Chehab,
	Guennadi Liakhovetski
  Cc: linux-media, linux-kernel, Mauro Carvalho Chehab, Ricardo Ribalda

Right now we power-up the device when a user open() the device and we
power it off when the last user close() the first video node.

This behaviour affects the power consumption of the device is multiple
use cases, such as:
- Polling the privacy gpio
- udev probing the device

This patchset introduces a more granular power saving behaviour where
the camera is only awaken when needed. It is compatible with
asynchronous controls.

While developing this patchset, two bugs were found. The patchset has
been developed so these fixes can be taken independently.

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
Changes in v5:
- Improve "media: uvcvideo: Make power management granular" commit
  message.
- Link to v4: https://lore.kernel.org/r/20250226-uvc-granpower-ng-v4-0-3ec9be906048@chromium.org

Changes in v4:
- CodeStyle
- Create uvc_pm_ functions
- Link to v3: https://lore.kernel.org/r/20250206-uvc-granpower-ng-v3-0-32d0d7b0c5d8@chromium.org

Changes in v3:
- Fix build error on sh4.
- Link to v2: https://lore.kernel.org/r/20250203-uvc-granpower-ng-v2-0-bef4b55e7b67@chromium.org

Changes in v2:
- Add missing semicolon.
- Rebase on top of media-committers/next
- Link to v1: https://lore.kernel.org/r/20241126-uvc-granpower-ng-v1-0-6312bf26549c@chromium.org

---
Ricardo Ribalda (5):
      media: uvcvideo: Keep streaming state in the file handle
      media: uvcvideo: Create uvc_pm_(get|put) functions
      media: uvcvideo: Increase/decrease the PM counter per IOCTL
      media: uvcvideo: Make power management granular
      media: uvcvideo: Do not turn on the camera for some ioctls

 drivers/media/usb/uvc/uvc_ctrl.c | 13 +++++-
 drivers/media/usb/uvc/uvc_v4l2.c | 99 ++++++++++++++++++++++++++++++----------
 drivers/media/usb/uvc/uvcvideo.h |  6 +++
 3 files changed, 92 insertions(+), 26 deletions(-)
---
base-commit: d98e9213a768a3cc3a99f5e1abe09ad3baff2104
change-id: 20241126-uvc-granpower-ng-069185a6d474

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-03-27 21:27 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-03 19:13 [PATCH v5 0/5] media: uvcvideo: Implement Granular Power Saving Ricardo Ribalda
2025-03-03 19:13 ` [PATCH v5 1/5] media: uvcvideo: Keep streaming state in the file handle Ricardo Ribalda
2025-03-03 19:13 ` [PATCH v5 2/5] media: uvcvideo: Create uvc_pm_(get|put) functions Ricardo Ribalda
2025-03-03 19:13 ` [PATCH v5 3/5] media: uvcvideo: Increase/decrease the PM counter per IOCTL Ricardo Ribalda
2025-03-27 17:52   ` Laurent Pinchart
2025-03-27 17:57     ` Laurent Pinchart
2025-03-27 21:05       ` Ricardo Ribalda
2025-03-27 21:27         ` Laurent Pinchart
2025-03-27 21:04     ` Ricardo Ribalda
2025-03-03 19:13 ` [PATCH v5 4/5] media: uvcvideo: Make power management granular Ricardo Ribalda
2025-03-27 17:55   ` Laurent Pinchart
2025-03-03 19:13 ` [PATCH v5 5/5] media: uvcvideo: Do not turn on the camera for some ioctls Ricardo Ribalda
2025-03-27 18:00   ` Laurent Pinchart
2025-03-10 15:24 ` [PATCH v5 0/5] media: uvcvideo: Implement Granular Power Saving Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox