[libcamera-devel] [PATCH 1/1] camera_sensor: Suppress error message if test patterns are unavailable

Laurent Pinchart laurent.pinchart at ideasonboard.com
Mon Jun 6 11:12:25 CEST 2022


Hi Naush,

Thank you for the patch.

On Mon, Jun 06, 2022 at 09:58:25AM +0100, Naushir Patuck via libcamera-devel wrote:
> If a sensor driver does not support test patterns (e.g. IMX477), libcamera
> throws an unnecessary error message during initialisation when it sets the test
> pattern to off.
> 
> Fix this by moving the error message into setTestPatternMode() where the
> pipeline handler explicitly requests to set a test pattern.
> 
> Signed-off-by: Naushir Patuck <naush at raspberrypi.com>

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

> ---
>  src/libcamera/camera_sensor.cpp | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp
> index 4bb2066f0fd4..d055c16a4885 100644
> --- a/src/libcamera/camera_sensor.cpp
> +++ b/src/libcamera/camera_sensor.cpp
> @@ -582,16 +582,19 @@ int CameraSensor::setTestPatternMode(controls::draft::TestPatternModeEnum mode)
>  	if (testPatternMode_ == mode)
>  		return 0;
>  
> +	if (testPatternModes_.empty()) {
> +		LOG(CameraSensor, Error)
> +			<< "Camera sensor does not support test pattern modes.";
> +		return -EINVAL;
> +	}
> +
>  	return applyTestPatternMode(mode);
>  }
>  
>  int CameraSensor::applyTestPatternMode(controls::draft::TestPatternModeEnum mode)
>  {
> -	if (testPatternModes_.empty()) {
> -		LOG(CameraSensor, Error)
> -			<< "Camera sensor does not support test pattern modes.";
> +	if (testPatternModes_.empty())
>  		return 0;
> -	}
>  
>  	auto it = std::find(testPatternModes_.begin(), testPatternModes_.end(),
>  			    mode);

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list