Message ID | 20250303-uvc-granpower-ng-v5-0-a3dfbe29fe91@chromium.org |
---|---|
Headers | show |
Series | media: uvcvideo: Implement Granular Power Saving | expand |
Hi Ricardo, On 3-Mar-25 20:13, Ricardo Ribalda wrote: > 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 Thank you for the new version. I've merge the entire series into: https://gitlab.freedesktop.org/linux-media/users/uvc/ -next now. Regards, Hans > 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,
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,