[libcamera-devel] [RFC PATCH 11/12] ipa: rkisp1: Transfer queueRequest() call to each algorithm

Kieran Bingham kieran.bingham at ideasonboard.com
Thu Jul 21 14:13:09 CEST 2022


From: Florian Sylvestre <fsylvestre at baylibre.com>

Implement rkisp1 queueRequest() function to update each algorithm with user
controls.

Signed-off-by: Florian Sylvestre <fsylvestre at baylibre.com>
Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

---
v2: (Kieran)

 - Provide frame, and frame context to the algorithms.
 - Use RKISP1FrameContext type now

Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
---
 src/ipa/rkisp1/rkisp1.cpp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
index b468e08a67fa..c2bd5ef36c1b 100644
--- a/src/ipa/rkisp1/rkisp1.cpp
+++ b/src/ipa/rkisp1/rkisp1.cpp
@@ -267,10 +267,13 @@ void IPARkISP1::unmapBuffers(const std::vector<unsigned int> &ids)
 	}
 }
 
-void IPARkISP1::queueRequest([[maybe_unused]] const uint32_t frame,
-			     [[maybe_unused]] const ControlList &controls)
+void IPARkISP1::queueRequest(const uint32_t frame,
+			     const ControlList &controls)
 {
-	/* \todo Start processing for 'frame' based on 'controls'. */
+	RKISP1FrameContext &frameContext = context_.frameContexts.initialise(frame);
+
+	for (auto const &algo : algorithms())
+		algo->queueRequest(context_, frame, frameContext, controls);
 }
 
 void IPARkISP1::fillParamsBuffer(const uint32_t frame, const uint32_t bufferId)
-- 
2.34.1



More information about the libcamera-devel mailing list