[PATCH 3/3] ipa: rksip1: Remove setControls(0) to reduce startup oscillations
Kieran Bingham
kieran.bingham at ideasonboard.com
Wed Mar 5 11:31:54 CET 2025
Quoting Stefan Klug (2025-03-05 09:51:15)
> Hi Kieran
>
> Thank you for the review.
>
> On Tue, Mar 04, 2025 at 09:22:02PM +0000, Kieran Bingham wrote:
> > Quoting Stefan Klug (2025-02-28 12:55:55)
> > > The call to setControls(0) is counter productive. At start() time, no
> > > requests were queued and no stats were received. So setControls(0)
> > > accesses a zeroed frame context and in turn sends 0 as gain, exposure
> > > and vblank to the pipeline handler and DelayedControls. This leads to
> > > strong oscillations on every start of the camera.
> > >
> > > A proper fix for handling the startup controls still needs to be done
> > > and was already started in [1] and [2].
> > >
> > > From a DelayedControls point of view the call to setControls(0) is also
> > > unnecessary as DelayedControls treat frame 0 as already being queued in
> > > after initialization.
> > >
> > > So it is save to just remove it and the removal fixes the zero
> >
> > s/save/safe/
> >
> > > effectiveExposureValue discussed in the previous patch for rkisp1.
> > >
> > > [1]: https://patchwork.libcamera.org/patch/21708/
> > > [2]: https://patchwork.libcamera.org/patch/22445/
> > >
> > > Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
> > > ---
> > > src/ipa/rkisp1/rkisp1.cpp | 2 --
> > > 1 file changed, 2 deletions(-)
> > >
> > > diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
> > > index 5f1583e8219b..b09dd6efdf08 100644
> > > --- a/src/ipa/rkisp1/rkisp1.cpp
> > > +++ b/src/ipa/rkisp1/rkisp1.cpp
> > > @@ -211,8 +211,6 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
> > >
> > > int IPARkISP1::start()
> > > {
> > > - setControls(0);
> > > -
> >
> > Aha, I thought I had recollection of this being added here more recently
> > but this dates all the way back to 2021
> > (1456efe7d51a3a0c6b57db4310f75b2a08ab1756) ... so I don't think it
> > tramples on any active development of AGC.
> >
> >
> > The above makes enough sense to me so:
> >
> > Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> >
> >
> > Though - now I check through patchwork - I see:
> >
> > https://patchwork.libcamera.org/patch/21708/
> >
> > from https://patchwork.libcamera.org/project/libcamera/list/?series=4728
> > also touches code here. Have you reviewed that series? Does anything
> > there need to be also considered or reviewed ?
> >
>
> Yes, I'm aware of that series (that's why I mentioned it in the commit
> message above). Time wise those changes overlapped with similar changes
Oopps, Sorry - I missed that !
> I did to improve regulation in rkisp1. I'll continue to push on that and
> will pull in changes from Mikhail as fit.
>
> This series is just a tiny step in that direction and makes upcoming
> changes easier.
>
Great, Looking forward to this series progressing!
--
Kieran
> Best regards,
> Stefan
>
> > --
> > Kieran
> >
> >
> > > return 0;
> > > }
> > >
> > > --
> > > 2.43.0
> > >
More information about the libcamera-devel
mailing list