[libcamera-devel] [PATCH v2 4/6] libcamera: media_device: Expose media device serial number

Niklas Söderlund niklas.soderlund at ragnatech.se
Tue Jul 28 02:30:56 CEST 2020


Add a MediaDevice::serial() function to expose the media device serial
number. This can be useful to support driver changes in pipeline
handlers.

Signed-off-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
---
 include/libcamera/internal/media_device.h | 2 ++
 src/libcamera/media_device.cpp            | 7 +++++++
 2 files changed, 9 insertions(+)

diff --git a/include/libcamera/internal/media_device.h b/include/libcamera/internal/media_device.h
index d0459cdefd3ece2a..1d23bdd2e9ba5270 100644
--- a/include/libcamera/internal/media_device.h
+++ b/include/libcamera/internal/media_device.h
@@ -40,6 +40,7 @@ public:
 	const std::string driver() const { return driver_; }
 	const std::string deviceNode() const { return deviceNode_; }
 	const std::string model() const { return model_; }
+	const std::string serial() const { return serial_; }
 	unsigned int version() const { return version_; }
 
 	const std::vector<MediaEntity *> &entities() const { return entities_; }
@@ -78,6 +79,7 @@ private:
 	std::string driver_;
 	std::string deviceNode_;
 	std::string model_;
+	std::string serial_;
 	unsigned int version_;
 
 	int fd_;
diff --git a/src/libcamera/media_device.cpp b/src/libcamera/media_device.cpp
index de18d572f4799931..f22a937d14cd8554 100644
--- a/src/libcamera/media_device.cpp
+++ b/src/libcamera/media_device.cpp
@@ -230,6 +230,7 @@ int MediaDevice::populate()
 
 	driver_ = info.driver;
 	model_ = info.model;
+	serial_ = info.serial;
 	version_ = info.media_version;
 
 	/*
@@ -314,6 +315,12 @@ done:
  * \return The MediaDevice model name
  */
 
+/**
+ * \fn MediaDevice::serial()
+ * \brief Retrieve the media device serial number
+ * \return The MediaDevice serial number
+ */
+
 /**
  * \fn MediaDevice::version()
  * \brief Retrieve the media device API version
-- 
2.27.0



More information about the libcamera-devel mailing list