libcamera: pipeline_handler: uvcvideo: register all Cameras along with a devnum
Register all UVC Cameras along with their device numbers, to eventually allow the V4L2 compatibility layer to match against it. Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
|
||||
#include <algorithm>
|
||||
#include <iomanip>
|
||||
#include <sys/sysmacros.h>
|
||||
#include <tuple>
|
||||
|
||||
#include <libcamera/camera.h>
|
||||
@@ -309,10 +310,12 @@ bool PipelineHandlerUVC::match(DeviceEnumerator *enumerator)
|
||||
if (data->init(*entity))
|
||||
return false;
|
||||
|
||||
dev_t devnum = makedev((*entity)->deviceMajor(), (*entity)->deviceMinor());
|
||||
|
||||
/* Create and register the camera. */
|
||||
std::set<Stream *> streams{ &data->stream_ };
|
||||
std::shared_ptr<Camera> camera = Camera::create(this, media->model(), streams);
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
registerCamera(std::move(camera), std::move(data), devnum);
|
||||
|
||||
/* Enable hot-unplug notifications. */
|
||||
hotplugMediaDevice(media);
|
||||
|
||||
Reference in New Issue
Block a user