summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUmang Jain <email@uajain.com>2020-08-21 14:46:06 +0000
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-08-23 20:44:52 +0300
commit76809320bb1a740da876fc2b4c37225a8e23b692 (patch)
treefd9b2ffe8ea0001fb1bf9a580f94303bd5ebbe8e
parent33fe27741b32e46fb8da5aca9ce3d85cd9d4ceca (diff)
libcamera: pipeline: uvcvideo: Treat all UVC cameras as external
We currently have no way to identify if the UVC device is external or internal(i.e. non-removable) to the system to set this property. Until we have a starting point to resolve this, treat all UVC cameras. Add a \todo explaining the situation for the same. Signed-off-by: Umang Jain <email@uajain.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--src/libcamera/pipeline/uvcvideo/uvcvideo.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
index bc892ecf..bafe6f19 100644
--- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
@@ -14,6 +14,7 @@
#include <libcamera/camera.h>
#include <libcamera/control_ids.h>
#include <libcamera/controls.h>
+#include <libcamera/property_ids.h>
#include <libcamera/request.h>
#include <libcamera/stream.h>
@@ -500,6 +501,12 @@ int UVCCameraData::init(MediaEntity *entity)
video_->bufferReady.connect(this, &UVCCameraData::bufferReady);
+ /*
+ * \todo Find a way to tell internal and external UVC cameras apart.
+ * Until then, treat all UVC cameras as external.
+ */
+ properties_.set(properties::Location, properties::CameraLocationExternal);
+
/* Initialise the supported controls. */
ControlInfoMap::Map ctrls;