ipa: rkisp1: agc: Fix build on debian 11 (gcc-9)

In the CI on debian 11 (gcc 9.3.0 and gcc 10.2.1) compilation fails
because the compiler incorrectly selects the

explicit ControlInfo(std::set<bool> values, bool def)

version of the ControlInfo constructor. This behavior was not
reproducible using gcc 9.5.0 and 10.5.0. So it seems newer versions of
gcc already contain a fix. Fix the CI build by explicitly passing a
ControlValue as second argument to the constructor.

Fixes: ee918b370a ("ipa: rkisp1: agc: Initialize enum controls with a list of values")
Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Stefan Klug 2025-02-11 18:20:56 +01:00
parent ee918b370a
commit f63f4d71d4

View file

@ -151,11 +151,11 @@ int Agc::init(IPAContext &context, const YamlObject &tuningData)
context.ctrlMap[&controls::ExposureTimeMode] = context.ctrlMap[&controls::ExposureTimeMode] =
ControlInfo({ { ControlValue(controls::ExposureTimeModeAuto), ControlInfo({ { ControlValue(controls::ExposureTimeModeAuto),
ControlValue(controls::ExposureTimeModeManual) } }, ControlValue(controls::ExposureTimeModeManual) } },
controls::ExposureTimeModeAuto); ControlValue(controls::ExposureTimeModeAuto));
context.ctrlMap[&controls::AnalogueGainMode] = context.ctrlMap[&controls::AnalogueGainMode] =
ControlInfo({ { ControlValue(controls::AnalogueGainModeAuto), ControlInfo({ { ControlValue(controls::AnalogueGainModeAuto),
ControlValue(controls::AnalogueGainModeManual) } }, ControlValue(controls::AnalogueGainModeManual) } },
controls::AnalogueGainModeAuto); ControlValue(controls::AnalogueGainModeAuto));
/* \todo Move this to the Camera class */ /* \todo Move this to the Camera class */
context.ctrlMap[&controls::AeEnable] = ControlInfo(false, true, true); context.ctrlMap[&controls::AeEnable] = ControlInfo(false, true, true);
context.ctrlMap.merge(controls()); context.ctrlMap.merge(controls());