[v8,12/12] ipa: raspberry: Report new AeEnable control as available
diff mbox series

Message ID 20250113215946.1033762-13-paul.elder@ideasonboard.com
State New
Headers show
Series
  • AEGC controls
Related show

Commit Message

Paul Elder Jan. 13, 2025, 9:59 p.m. UTC
Even though the new AeEnable control internally switches on and off the
sub-controls (ExposureTimeMode and AnalogueGainMode), it still needs to
be declared as available. Report this control as available in the
rpi IPA.

Support for the control does not need to be added as it is handled by
the Camera class. It does not need to be handled in metadata either as
the new version of AeEnable is not returned in metadata.

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>

---
Changes in v8:
- add "true" as default value

No change in v7

New in v6
---
 src/ipa/rpi/common/ipa_base.cpp | 2 ++
 1 file changed, 2 insertions(+)

Comments

Naushir Patuck Jan. 14, 2025, 9:17 a.m. UTC | #1
Hi Paul,

Thanks for the patch.

On Mon, 13 Jan 2025 at 22:02, Paul Elder <paul.elder@ideasonboard.com> wrote:
>
> Even though the new AeEnable control internally switches on and off the
> sub-controls (ExposureTimeMode and AnalogueGainMode), it still needs to
> be declared as available. Report this control as available in the
> rpi IPA.
>
> Support for the control does not need to be added as it is handled by
> the Camera class. It does not need to be handled in metadata either as
> the new version of AeEnable is not returned in metadata.
>
> 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>

Reviewed-by: Naushir Patuck <naush@raspberrypi.com>

>
> ---
> Changes in v8:
> - add "true" as default value
>
> No change in v7
>
> New in v6
> ---
>  src/ipa/rpi/common/ipa_base.cpp | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp
> index 0fb58c1d0..a5c46e6ec 100644
> --- a/src/ipa/rpi/common/ipa_base.cpp
> +++ b/src/ipa/rpi/common/ipa_base.cpp
> @@ -55,6 +55,8 @@ constexpr Duration controllerMinFrameDuration = 1.0s / 30.0;
>
>  /* List of controls handled by the Raspberry Pi IPA */
>  const ControlInfoMap::Map ipaControls{
> +       /* \todo Move this to the Camera class */
> +       { &controls::AeEnable, ControlInfo(false, true, true) },
>         { &controls::ExposureTimeMode,
>           ControlInfo(static_cast<int32_t>(controls::ExposureTimeModeAuto),
>                       static_cast<int32_t>(controls::ExposureTimeModeManual),
> --
> 2.39.2
>

Patch
diff mbox series

diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp
index 0fb58c1d0..a5c46e6ec 100644
--- a/src/ipa/rpi/common/ipa_base.cpp
+++ b/src/ipa/rpi/common/ipa_base.cpp
@@ -55,6 +55,8 @@  constexpr Duration controllerMinFrameDuration = 1.0s / 30.0;
 
 /* List of controls handled by the Raspberry Pi IPA */
 const ControlInfoMap::Map ipaControls{
+	/* \todo Move this to the Camera class */
+	{ &controls::AeEnable, ControlInfo(false, true, true) },
 	{ &controls::ExposureTimeMode,
 	  ControlInfo(static_cast<int32_t>(controls::ExposureTimeModeAuto),
 		      static_cast<int32_t>(controls::ExposureTimeModeManual),