[libcamera-devel] [PATCH 2/4] ipa: ipu3: Shorten exposure and gain lines

Kieran Bingham kieran.bingham at ideasonboard.com
Thu Nov 25 12:54:52 CET 2021


Quoting Jean-Michel Hautbois (2021-11-25 10:21:41)
> When the effective sensor values are stored during the EventStatReady
> event, the lines are long. Fix it.
> 
> Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois at ideasonboard.com>
> ---
>  src/ipa/ipu3/ipu3.cpp | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp
> index b0c75541..7a010019 100644
> --- a/src/ipa/ipu3/ipu3.cpp
> +++ b/src/ipa/ipu3/ipu3.cpp
> @@ -547,8 +547,10 @@ void IPAIPU3::processEvent(const IPU3Event &event)
>                 const ipu3_uapi_stats_3a *stats =
>                         reinterpret_cast<ipu3_uapi_stats_3a *>(mem.data());
>  
> -               context_.frameContext.sensor.exposure = event.sensorControls.get(V4L2_CID_EXPOSURE).get<int32_t>();
> -               context_.frameContext.sensor.gain = camHelper_->gain(event.sensorControls.get(V4L2_CID_ANALOGUE_GAIN).get<int32_t>());
> +               context_.frameContext.sensor.exposure =
> +                       event.sensorControls.get(V4L2_CID_EXPOSURE).get<int32_t>();
> +               context_.frameContext.sensor.gain =
> +                       camHelper_->gain(event.sensorControls.get(V4L2_CID_ANALOGUE_GAIN).get<int32_t>());

This might also look /read better if we extract the control value first
?

		int32_t exposure = event.sensorControls.get(V4L2_CID_EXPOSURE).get<int32_t>();
		int32_t gain = event.sensorControls.get(V4L2_CID_ANALOGUE_GAIN).get<int32_t>();

		context_.frameContext.sensor.exposure = exposure;
		context_.frameContext.sensor.gain = camHelper_->gain(gain);

The compiler will optimise away the extra local variable anyway I
expect, so it should generate identical code...

But either way:

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

>  
>                 parseStatistics(event.frame, event.frameTimestamp, stats);
>                 break;
> -- 
> 2.32.0
>


More information about the libcamera-devel mailing list