[libcamera-devel] [PATCH 4/9] libcamera: Rename PipelineHandler::allocateBuffers

Jacopo Mondi jacopo at jmondi.org
Fri Jul 5 00:53:29 CEST 2019


Now that the pipeline handlers can inspect the Stream's memory type flag
the allocateBuffers() operation name does not match the actual operation
purpose, which is to setup buffers to export memory to application or
either prepare to use externally allocated buffers.

Todo: rename the camera operation as well?

Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
---
 src/libcamera/camera.cpp                 | 2 +-
 src/libcamera/include/pipeline_handler.h | 4 ++--
 src/libcamera/pipeline/ipu3/ipu3.cpp     | 8 ++++----
 src/libcamera/pipeline/rkisp1/rkisp1.cpp | 6 +++---
 src/libcamera/pipeline/uvcvideo.cpp      | 8 ++++----
 src/libcamera/pipeline/vimc.cpp          | 8 ++++----
 src/libcamera/pipeline_handler.cpp       | 6 ++++--
 7 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
index 5f756d41744a..f3f01d040ecf 100644
--- a/src/libcamera/camera.cpp
+++ b/src/libcamera/camera.cpp
@@ -716,7 +716,7 @@ int Camera::allocateBuffers()
 		return -EINVAL;
 	}
 
-	int ret = pipe_->allocateBuffers(this, activeStreams_);
+	int ret = pipe_->setupBuffers(this, activeStreams_);
 	if (ret) {
 		LOG(Camera, Error) << "Failed to allocate buffers";
 		return ret;
diff --git a/src/libcamera/include/pipeline_handler.h b/src/libcamera/include/pipeline_handler.h
index f836d5d1a600..c40d108eb13c 100644
--- a/src/libcamera/include/pipeline_handler.h
+++ b/src/libcamera/include/pipeline_handler.h
@@ -68,8 +68,8 @@ public:
 		const StreamRoles &roles) = 0;
 	virtual int configure(Camera *camera, CameraConfiguration *config) = 0;
 
-	virtual int allocateBuffers(Camera *camera,
-				    const std::set<Stream *> &streams) = 0;
+	virtual int setupBuffers(Camera *camera,
+				 const std::set<Stream *> &streams) = 0;
 	virtual int freeBuffers(Camera *camera,
 				const std::set<Stream *> &streams) = 0;
 
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 6f14da1f8c70..28dcefe3d19f 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -208,8 +208,8 @@ public:
 		const StreamRoles &roles) override;
 	int configure(Camera *camera, CameraConfiguration *config) override;
 
-	int allocateBuffers(Camera *camera,
-			    const std::set<Stream *> &streams) override;
+	int setupBuffers(Camera *camera,
+			 const std::set<Stream *> &streams) override;
 	int freeBuffers(Camera *camera,
 			const std::set<Stream *> &streams) override;
 
@@ -589,8 +589,8 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)
  * In order to be able to start the 'viewfinder' and 'stat' nodes, we need
  * memory to be reserved.
  */
-int PipelineHandlerIPU3::allocateBuffers(Camera *camera,
-					 const std::set<Stream *> &streams)
+int PipelineHandlerIPU3::setupBuffers(Camera *camera,
+				      const std::set<Stream *> &streams)
 {
 	IPU3CameraData *data = cameraData(camera);
 	IPU3Stream *outStream = &data->outStream_;
diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index dbb61a21354d..836de1f61630 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -80,7 +80,7 @@ public:
 		const StreamRoles &roles) override;
 	int configure(Camera *camera, CameraConfiguration *config) override;
 
-	int allocateBuffers(Camera *camera,
+	int setupBuffers(Camera *camera,
 		const std::set<Stream *> &streams) override;
 	int freeBuffers(Camera *camera,
 		const std::set<Stream *> &streams) override;
@@ -315,8 +315,8 @@ int PipelineHandlerRkISP1::configure(Camera *camera, CameraConfiguration *c)
 	return 0;
 }
 
-int PipelineHandlerRkISP1::allocateBuffers(Camera *camera,
-					   const std::set<Stream *> &streams)
+int PipelineHandlerRkISP1::setupBuffers(Camera *camera,
+					const std::set<Stream *> &streams)
 {
 	Stream *stream = *streams.begin();
 	int ret;
diff --git a/src/libcamera/pipeline/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo.cpp
index 5b3c79dda6dd..bba4e7f8d2a0 100644
--- a/src/libcamera/pipeline/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo.cpp
@@ -63,8 +63,8 @@ public:
 		const StreamRoles &roles) override;
 	int configure(Camera *camera, CameraConfiguration *config) override;
 
-	int allocateBuffers(Camera *camera,
-			    const std::set<Stream *> &streams) override;
+	int setupBuffers(Camera *camera,
+			 const std::set<Stream *> &streams) override;
 	int freeBuffers(Camera *camera,
 			const std::set<Stream *> &streams) override;
 
@@ -191,8 +191,8 @@ int PipelineHandlerUVC::configure(Camera *camera, CameraConfiguration *config)
 	return 0;
 }
 
-int PipelineHandlerUVC::allocateBuffers(Camera *camera,
-					const std::set<Stream *> &streams)
+int PipelineHandlerUVC::setupBuffers(Camera *camera,
+				     const std::set<Stream *> &streams)
 {
 	UVCCameraData *data = cameraData(camera);
 	Stream *stream = *streams.begin();
diff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp
index c67bdb0ecbff..3e08768b670f 100644
--- a/src/libcamera/pipeline/vimc.cpp
+++ b/src/libcamera/pipeline/vimc.cpp
@@ -70,8 +70,8 @@ public:
 		const StreamRoles &roles) override;
 	int configure(Camera *camera, CameraConfiguration *config) override;
 
-	int allocateBuffers(Camera *camera,
-			    const std::set<Stream *> &streams) override;
+	int setupBuffers(Camera *camera,
+			 const std::set<Stream *> &streams) override;
 	int freeBuffers(Camera *camera,
 			const std::set<Stream *> &streams) override;
 
@@ -193,8 +193,8 @@ int PipelineHandlerVimc::configure(Camera *camera, CameraConfiguration *config)
 	return 0;
 }
 
-int PipelineHandlerVimc::allocateBuffers(Camera *camera,
-					 const std::set<Stream *> &streams)
+int PipelineHandlerVimc::setupBuffers(Camera *camera,
+				      const std::set<Stream *> &streams)
 {
 	VimcCameraData *data = cameraData(camera);
 	Stream *stream = *streams.begin();
diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp
index 0283e4e5ad51..67b215483847 100644
--- a/src/libcamera/pipeline_handler.cpp
+++ b/src/libcamera/pipeline_handler.cpp
@@ -280,11 +280,13 @@ const ControlInfoMap &PipelineHandler::controls(Camera *camera)
  */
 
 /**
- * \fn PipelineHandler::allocateBuffers()
- * \brief Allocate buffers for a stream
+ * \fn PipelineHandler::setupBuffers()
+ * \brief Setup buffer for a stream
  * \param[in] camera The camera the \a stream belongs to
  * \param[in] streams The set of streams to allocate buffers for
  *
+ * \todo Change this to describe both allocation and importing
+ *
  * This method allocates buffers internally in the pipeline handler for each
  * stream in the \a streams buffer set, and associates them with the stream's
  * buffer pool.
-- 
2.21.0



More information about the libcamera-devel mailing list