[libcamera-devel] [PATCH v1] ipa: ipu3: af: A not initialized frame ignore counter fixing

Kieran Bingham kieran.bingham at ideasonboard.com
Wed Apr 13 10:10:05 CEST 2022


Quoting Kate Hsuan via libcamera-devel (2022-04-13 08:43:53)
> A not initialized frame ignore counter (ignoreCounter_) makes the AF
> function not work since the ignore counter may start from a random
> negative number. The counter was set to kIgnoreFrame when AF is in
> prepare stage.
> 
> Signed-off-by: Kate Hsuan<hpa at redhat.com>
> ---
>  src/ipa/ipu3/algorithms/af.cpp | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/src/ipa/ipu3/algorithms/af.cpp b/src/ipa/ipu3/algorithms/af.cpp
> index addf98af..f700b01f 100644
> --- a/src/ipa/ipu3/algorithms/af.cpp
> +++ b/src/ipa/ipu3/algorithms/af.cpp
> @@ -181,6 +181,9 @@ int Af::configure(IPAContext &context, const IPAConfigInfo &configInfo)
>         /* Initial max focus step */
>         maxStep_ = kMaxFocusSteps;
>  
> +       /* Initial frame ignore counter */
> +       afIgnoreFrameReset();
> +

Should this be handled by the constructor at all? (I suspect it doesn't
need to if the data is not accessed before the algorithm is running) Or
is there any requirement to reset the counter when a stream off, stream
on cycle occurs (without a reconfigure in between?)

Assuming those are fine...


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


>         /* Initial focus value */
>         context.frameContext.af.focus = 0;
>         /* Maximum variance of the AF statistics */
> -- 
> 2.35.1
>


More information about the libcamera-devel mailing list