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

Niklas Söderlund niklas.soderlund at ragnatech.se
Sat Jul 6 13:47:44 CEST 2019


Hi Jacopo,

Thanks for your work.

On 2019-07-05 00:53:29 +0200, Jacopo Mondi wrote:
> 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?

I think you should, and it could be squashed in this commit (I'm as 
surprised as you, I'm not pushing for renames to be in two separate 
commits :-)

> 
> 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
> 
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel at lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel

-- 
Regards,
Niklas Söderlund


More information about the libcamera-devel mailing list