@@ -891,6 +891,16 @@ int PipelineHandlerIPU3::initControls(IPU3CameraData *data)
ControlInfoMap::Map controls = IPU3Controls;
const ControlInfoMap &sensorControls = sensor->controls();
+ if (!sensorInfo.testPatternModes.empty()) {
+ std::vector<ControlValue> values;
+ values.reserve(sensorInfo.testPatternModes.size());
+
+ for (int32_t pattern : sensorInfo.testPatternModes)
+ values.emplace_back(pattern);
+
+ controls[&controls::draft::TestPatternMode] = ControlInfo(values);
+ }
+
/*
* Compute exposure time limits.
*
PipelineHandlerIPU3 gets available test pattern modes of the sensor device and reports them to a client. Signed-off-by: Hirokazu Honda <hiroh@chromium.org> --- src/libcamera/pipeline/ipu3/ipu3.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+)