[PATCH 2/2] libcamera: simple: Log a missing sensor in a better way
Kieran Bingham
kieran.bingham at ideasonboard.com
Mon Jul 1 12:37:37 CEST 2024
Quoting Milan Zamazal (2024-06-27 18:33:05)
> SimplePipelineHandler::match may be called several times for different
> pipeline configurations. Not all of these calls must succeed. For
> example, for TI AM69 board with a single camera attached, the following
> error is reported in the log even when libcamera works fine:
>
> ERROR SimplePipeline simple.cpp:1558 No sensor found
>
> This is because a sensor is found for /dev/media0 but not for
> /dev/media1. The error is harmless in such a case and only confuses
> users who may think no camera is detected at all. Let's change the
> error to info and add the device node to the message to indicate the
> error is specific to the given media only. It's up to the callers to
> report a fatal error condition if libcamera cannot work due to no
> matching pipeline configuration.
>
> Signed-off-by: Milan Zamazal <mzamazal at redhat.com>
> ---
> src/libcamera/pipeline/simple/simple.cpp | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp
> index eb36578e..be0bb677 100644
> --- a/src/libcamera/pipeline/simple/simple.cpp
> +++ b/src/libcamera/pipeline/simple/simple.cpp
> @@ -1548,9 +1548,10 @@ bool SimplePipelineHandler::match(DeviceEnumerator *enumerator)
> /* Locate the sensors. */
> std::vector<MediaEntity *> sensors = locateSensors();
> if (sensors.empty()) {
> - LOG(SimplePipeline, Error) << "No sensor found";
> + LOG(SimplePipeline, Info) << "No sensor found for " << media_->deviceNode();
> return false;
> }
> + LOG(SimplePipeline, Debug) << "Sensor found for " << media_->deviceNode();
These I like.
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
Is logPrefix defined for simple pipeline handler yet?
media_->deviceNode() could be part of that perhaps (unless it's too
long) to make it clear /which/ media device is in use.
>
> /*
> * Create one camera data instance for each sensor and gather all
> --
> 2.44.1
>
More information about the libcamera-devel
mailing list