[PATCH 04/10] ipa: rkisp1: Refactor automatic/manual structure in IPAActiveState

Kieran Bingham kieran.bingham at ideasonboard.com
Mon Feb 17 13:23:38 CET 2025


Quoting Kieran Bingham (2025-02-17 12:06:05)
> Quoting Stefan Klug (2025-02-17 10:01:45)
> > Swap gains and automatic/manual in the IPAActiveState structure. This is
> > in preparation to adding another member, which is easier in this
> > structure.  This is also in sync with how it is modeled in agc. This
> > patch contains no functional changes.
> > 
> > Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
> > ---
> >  src/ipa/rkisp1/algorithms/awb.cpp | 24 ++++++++++++------------

<snip>

> > diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h
> > index c765b928a55f..1a374c96cd1a 100644
> > --- a/src/ipa/rkisp1/ipa_context.h
> > +++ b/src/ipa/rkisp1/ipa_context.h
> > @@ -89,9 +89,12 @@ struct IPAActiveState {
> >  
> >         struct {
> >                 struct {
> > -                       RGB<double> manual;
> > -                       RGB<double> automatic;
> > -               } gains;
> > +                       RGB<double> gains;
> > +               } manual;
> > +
> > +               struct {
> > +                       RGB<double> gains;
> > +               } automatic;
> 
> Will we always add everything to both manual and automatic? I.e. should
> should this be a defined as a structure struct AgcState or something
> with
>         struct AgcState {
>                 RGB<double> gains;
>         };
> 
>         AgcState manual;
>         AgcState automatic;
> 
> ?

Perhaps even more so if we should then just put an AgcState agc into the
FrameContext for directly assigning the 
	
	FrameContext.agc = ManualMode ?
			   activeState.agc.manual : activeState.agc.automatic;

> 
> >  
> >                 unsigned int temperatureK;
> >                 bool autoEnabled;
> > -- 
> > 2.43.0
> >


More information about the libcamera-devel mailing list