[libcamera-devel] [PATCH 03/11] libcamera: camera: Log requested configuration in configureStreams()

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Apr 16 18:56:21 CEST 2019


Hi Jacopo,

On Tue, Apr 16, 2019 at 04:57:03PM +0200, Jacopo Mondi wrote:
> On Mon, Apr 15, 2019 at 07:56:52PM +0300, Laurent Pinchart wrote:
> > The IPU3 pipeline handler logs the requested configuration in its
> > configureStreams() handler. This is useful for other pipeline handlers
> > as well, move it to the Camera class.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> > ---
> >  src/libcamera/camera.cpp             | 14 ++++++++++++++
> >  src/libcamera/pipeline/ipu3/ipu3.cpp |  6 ------
> >  2 files changed, 14 insertions(+), 6 deletions(-)
> >
> > diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
> > index bdf14b31d8ee..55f724a8db17 100644
> > --- a/src/libcamera/camera.cpp
> > +++ b/src/libcamera/camera.cpp
> > @@ -5,6 +5,8 @@
> >   * camera.cpp - Camera device
> >   */
> >
> > +#include <iomanip>
> > +
> >  #include <libcamera/camera.h>
> >  #include <libcamera/request.h>
> >  #include <libcamera/stream.h>
> > @@ -595,11 +597,23 @@ int Camera::configureStreams(const CameraConfiguration &config)
> >  		return -EINVAL;
> >  	}
> >
> > +	std::ostringstream msg("configuring streams:");
> > +	unsigned int index = 0;
> > +
> >  	for (Stream *stream : config) {
> >  		if (streams_.find(stream) == streams_.end())
> >  			return -EINVAL;
> > +
> > +		const StreamConfiguration &cfg = config[stream];
> > +		msg << " (" << index << ") " << cfg.width << "x"
> > +		    << cfg.height << "-0x" << std::hex << std::setfill('0')
> > +		    << std::setw(8) << cfg.pixelFormat;
> 
> std::endl at the end?

I don't think that's needed, as the message is then output by a single
LOG() call, which adds the std::endl. My goal was to print this on a
single line. Do you think it should be split to multiple lines ?

> Apart from that:
> Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
> 
> > +
> > +		index++;
> >  	}
> >
> > +	LOG(Camera, Info) << msg.str();
> > +
> >  	ret = pipe_->configureStreams(this, config);
> >  	if (ret)
> >  		return ret;
> > diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
> > index ca09da753b90..ff72be14d696 100644
> > --- a/src/libcamera/pipeline/ipu3/ipu3.cpp
> > +++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
> > @@ -242,12 +242,6 @@ int PipelineHandlerIPU3::configureStreams(Camera *camera,
> >  	ImgUDevice *imgu = data->imgu_;
> >  	int ret;
> >
> > -	LOG(IPU3, Info)
> > -		<< "Requested image format " << cfg.width << "x"
> > -		<< cfg.height << "-0x" << std::hex << std::setfill('0')
> > -		<< std::setw(8) << cfg.pixelFormat << " on camera '"
> > -		<< camera->name() << "'";
> > -
> >  	/*
> >  	 * Verify that the requested size respects the IPU3 alignement
> >  	 * requirements (the image width shall be a multiple of 8 pixels and

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list