summaryrefslogtreecommitdiff
path: root/src/ipa/rkisp1/ipa_context.h
diff options
context:
space:
mode:
authorPaul Elder <paul.elder@ideasonboard.com>2025-01-13 15:59:40 -0600
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2025-01-20 21:36:40 +0200
commit3d23f325fd8d6dd0961b8ead04551f478585c526 (patch)
tree8a8a2aabc78ec6f2632bd036d8951703c3b65723 /src/ipa/rkisp1/ipa_context.h
parentc45a2682c3067ee92d0bdd4a5fbde3e941edc95a (diff)
ipa: rkisp1: Port to the new AEGC controls
The newly introduced controls to drive the AEGC algorithm allow controlling the computation of the exposure time and analogue gain separately. Augument the RkISP1 AEGC implementation to handle the exposure and gain controls separately using the new controls. Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Stefan Klug <stefan.klug@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/ipa/rkisp1/ipa_context.h')
-rw-r--r--src/ipa/rkisp1/ipa_context.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h
index b83c1822..5d5b79fa 100644
--- a/src/ipa/rkisp1/ipa_context.h
+++ b/src/ipa/rkisp1/ipa_context.h
@@ -79,7 +79,8 @@ struct IPAActiveState {
double gain;
} automatic;
- bool autoEnabled;
+ bool autoExposureEnabled;
+ bool autoGainEnabled;
controls::AeConstraintModeEnum constraintMode;
controls::AeExposureModeEnum exposureMode;
controls::AeMeteringModeEnum meteringMode;
@@ -124,12 +125,15 @@ struct IPAFrameContext : public FrameContext {
struct {
uint32_t exposure;
double gain;
- bool autoEnabled;
+ bool autoExposureEnabled;
+ bool autoGainEnabled;
controls::AeConstraintModeEnum constraintMode;
controls::AeExposureModeEnum exposureMode;
controls::AeMeteringModeEnum meteringMode;
utils::Duration maxFrameDuration;
bool updateMetering;
+ bool autoExposureModeChange;
+ bool autoGainModeChange;
} agc;
struct {