From 5ca7afd2d33d7019af17796ba1cfa9d61d2f4bc0 Mon Sep 17 00:00:00 2001 From: David Plowman Date: Mon, 22 Sep 2025 09:37:12 +0100 Subject: [PATCH] ipa: rpi: agc: Allow exposure mode to be updated in auto mode The code was only allowing the exposure mode to be updated when both exposure/gain were in manual mode, which is a mistake. It needs to be updatable precisely when the auto modes are enabled. The fix is to ignore the enabled/disabled status of AEC/AGC, matching our other controls (metering mode, constraint mode etc.). While there might be a debate to be had about what the actual behaviour of all these controls should be, for the time being we'll just match everything else. Signed-off-by: David Plowman Reviewed-by: Naushir Patuck Signed-off-by: Kieran Bingham --- src/ipa/rpi/common/ipa_base.cpp | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp index 6448e6ab..8dfe35cc 100644 --- a/src/ipa/rpi/common/ipa_base.cpp +++ b/src/ipa/rpi/common/ipa_base.cpp @@ -1026,13 +1026,6 @@ void IpaBase::applyControls(const ControlList &controls) break; } - /* - * Ignore AE_EXPOSURE_MODE if the shutter or the gain - * are in auto mode. - */ - if (agc->autoExposureEnabled() || agc->autoGainEnabled()) - break; - int32_t idx = ctrl.second.get(); if (ExposureModeTable.count(idx)) { agc->setExposureMode(ExposureModeTable.at(idx));