[PATCH v1 7/8] ipa: rkisp1: Add sensor info to context

Stefan Klug stefan.klug at ideasonboard.com
Mon Aug 26 17:22:05 CEST 2024


For the LSC algorithm to dynamically calculate the LSC tables based on
the sensor size and the crop rectangle it needs access to that data.
Provide access to it by adding the sensorInfo object to the context.

Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
---
 src/ipa/rkisp1/ipa_context.h | 2 ++
 src/ipa/rkisp1/rkisp1.cpp    | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h
index 061efc0c578e..18c294798524 100644
--- a/src/ipa/rkisp1/ipa_context.h
+++ b/src/ipa/rkisp1/ipa_context.h
@@ -17,6 +17,7 @@
 #include <libcamera/control_ids.h>
 #include <libcamera/controls.h>
 #include <libcamera/geometry.h>
+#include <libcamera/ipa/core_ipa_interface.h>
 
 #include <libipa/camera_sensor_helper.h>
 #include <libipa/fc_queue.h>
@@ -178,6 +179,7 @@ struct IPAFrameContext : public FrameContext {
 
 struct IPAContext {
 	const IPAHwSettings *hw;
+	IPACameraSensorInfo sensorInfo;
 	IPASessionConfiguration configuration;
 	IPAActiveState activeState;
 
diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
index 23e0826cc335..c671629956c7 100644
--- a/src/ipa/rkisp1/rkisp1.cpp
+++ b/src/ipa/rkisp1/rkisp1.cpp
@@ -111,7 +111,7 @@ const ControlInfoMap::Map rkisp1Controls{
 } /* namespace */
 
 IPARkISP1::IPARkISP1()
-	: context_({ {}, {}, {}, { kMaxFrameContexts }, {}, {} })
+	: context_({ {}, {}, {}, {}, { kMaxFrameContexts }, {}, {} })
 {
 }
 
@@ -143,6 +143,8 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
 
 	LOG(IPARkISP1, Debug) << "Hardware revision is " << hwRevision;
 
+	context_.sensorInfo = sensorInfo;
+
 	context_.camHelper = CameraSensorHelperFactoryBase::create(settings.sensorModel);
 	if (!context_.camHelper) {
 		LOG(IPARkISP1, Error)
-- 
2.43.0



More information about the libcamera-devel mailing list