[v3,23/41] libipa: awb: Populate frameContext in queueRequest() in auto mode
diff mbox series

Message ID 20260914140309.3354666-24-stefan.klug@ideasonboard.com
State New
Headers show
Series
  • rkisp1: pipeline rework for PFC
Related show

Commit Message

Stefan Klug Sept. 14, 2026, 2:02 p.m. UTC
In case of a param buffer underrun computeParams() is not called on a
frame. At the moment this causes invalid metadata when
processStats() is called on that frame. Fix this by initializing all the
values in queueRequest().

Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>

---

Changes in v3:
- Added this commit
---
 src/ipa/libipa/awb.cpp | 2 ++
 1 file changed, 2 insertions(+)

Comments

Barnabás Pőcze Sept. 22, 2026, 2:16 p.m. UTC | #1
2026. 09. 14. 16:02 keltezéssel, Stefan Klug írta:
> In case of a param buffer underrun computeParams() is not called on a
> frame. At the moment this causes invalid metadata when
> processStats() is called on that frame. Fix this by initializing all the
> values in queueRequest().
> 
> Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>
> 
> ---
> 
> Changes in v3:
> - Added this commit
> ---
>   src/ipa/libipa/awb.cpp | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/src/ipa/libipa/awb.cpp b/src/ipa/libipa/awb.cpp
> index 81d616c3a646..df3e3b8c283c 100644
> --- a/src/ipa/libipa/awb.cpp
> +++ b/src/ipa/libipa/awb.cpp
> @@ -304,6 +304,8 @@ void AwbAlgorithmBase::queueRequest(awb::ActiveState &state,
>   	}
>   
>   	frameContext.autoEnabled = state.autoEnabled;
> +	frameContext.gains = state.automatic.gains;
> +	frameContext.colourTemperature = state.automatic.colourTemperature;

So this depends on the manual case overwriting these values later in this function.

Reviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>


>   
>   	if (frameContext.autoEnabled)
>   		return;

Patch
diff mbox series

diff --git a/src/ipa/libipa/awb.cpp b/src/ipa/libipa/awb.cpp
index 81d616c3a646..df3e3b8c283c 100644
--- a/src/ipa/libipa/awb.cpp
+++ b/src/ipa/libipa/awb.cpp
@@ -304,6 +304,8 @@  void AwbAlgorithmBase::queueRequest(awb::ActiveState &state,
 	}
 
 	frameContext.autoEnabled = state.autoEnabled;
+	frameContext.gains = state.automatic.gains;
+	frameContext.colourTemperature = state.automatic.colourTemperature;
 
 	if (frameContext.autoEnabled)
 		return;