summaryrefslogtreecommitdiff
path: root/src/qcam
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2024-08-30 13:12:05 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-08-30 15:15:06 +0300
commitc05e45ac7743c60a78ebee1b9e341fa5e089285d (patch)
tree3d9ca04258a7bfe54dadb46fd4a436ab35c4dc4c /src/qcam
parent9020c2eec9de5d9b5bc1016b26e714b1c0206441 (diff)
pipeline_handler: Add acquireDevice() function to mirror releaseDevice()
libcamera always keeps all /dev/video# and /dev/v4l2_subdev# nodes for a pipeline open after enumerating the camera. This is a problem for the uvcvideo pipeline handler. Keeping /dev/video# open stops the UVC USB device from being able to enter runtime-suspend causing significant unnecessary power-usage. Add a stub acquireDevice() function to the PipelineHandler class which pipeline handlers can override. The uvcvideo pipeline handler will use this to delay opening /dev/video# until the device is acquired. This is a special case because the kernel uvcvideo driver powers on the USB device as soon as /dev/video# is opened. This behavior should *not* be copied by other pipeline handlers. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Harvey Yang <chenghaoyang@chromium.org> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/qcam')
0 files changed, 0 insertions, 0 deletions