From 4adf0e0b1cf9733127591c24c2a6129fda481dd9 Mon Sep 17 00:00:00 2001 From: Stefan Klug Date: Wed, 26 Mar 2025 14:47:22 +0100 Subject: ipa: rksip1: Remove setControls(0) to reduce startup oscillations 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 safe to just remove it and the removal fixes the zero 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 Reviewed-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- src/ipa/rkisp1/rkisp1.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp index cb487ae5..70ce0cba 100644 --- a/src/ipa/rkisp1/rkisp1.cpp +++ b/src/ipa/rkisp1/rkisp1.cpp @@ -211,8 +211,7 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision, int IPARkISP1::start() { - setControls(0); - + /* \todo Properly handle startup controls. */ return 0; } -- cgit v1.2.1