[libcamera-devel] [PATCH 1/3] ipu3: Registering AF controls

Kate Hsuan hpa at redhat.com
Fri Sep 16 12:37:11 CEST 2022


Regitering AF controls, including AF_MODE and LENS_POSITION.

Signed-off-by: Kate Hsuan <hpa at redhat.com>
---
 src/ipa/ipu3/ipu3.cpp                | 4 ++++
 src/libcamera/pipeline/ipu3/ipu3.cpp | 2 ++
 2 files changed, 6 insertions(+)

diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp
index e37b2fa0..ac0c42a7 100644
--- a/src/ipa/ipu3/ipu3.cpp
+++ b/src/ipa/ipu3/ipu3.cpp
@@ -277,6 +277,10 @@ void IPAIPU3::updateControls(const IPACameraSensorInfo &sensorInfo,
 							       frameDurations[1],
 							       frameDurations[2]);
 
+	/* Af controls */
+	controls[&controls::AfMode] = ControlInfo(controls::AfModeValues);
+	controls[&controls::LensPosition] = ControlInfo(0.0f, 1.0f, 0.5f);
+
 	*ipaControls = ControlInfoMap(std::move(controls), controls::controls);
 }
 
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 93219a6c..2e35b9bc 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -43,6 +43,8 @@ LOG_DEFINE_CATEGORY(IPU3)
 
 static const ControlInfoMap::Map IPU3Controls = {
 	{ &controls::draft::PipelineDepth, ControlInfo(2, 3) },
+	{ &controls::AfMode, ControlInfo(controls::AfModeValues) },
+	{ &controls::LensPosition, ControlInfo(0.0f, 1.0f, 0.5f) }
 };
 
 class IPU3CameraData : public Camera::Private
-- 
2.37.3



More information about the libcamera-devel mailing list