summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUmang Jain <umang.jain@ideasonboard.com>2022-03-31 21:18:44 +0530
committerUmang Jain <umang.jain@ideasonboard.com>2022-04-08 15:15:36 +0530
commit5647f50d30a069332ad460179e1aae9ecf103fa6 (patch)
tree87f166a9ae5631a333be9a67f9211f6c05ad4ac6
parentb8aea554164aa240d69cc3f7fb8e04fc3e3e4a9d (diff)
ipu3: Inline fillParams() in fillParamsBuffer()
Since we have moved away from switch/case on the operation ID, there's little reason to split the operation in two functions. Signed-off-by: Umang Jain <umang.jain@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
-rw-r--r--ipu3.cpp52
1 files changed, 23 insertions, 29 deletions
diff --git a/ipu3.cpp b/ipu3.cpp
index b6d2129..0543a2e 100644
--- a/ipu3.cpp
+++ b/ipu3.cpp
@@ -60,7 +60,6 @@ private:
const ControlInfoMap &sensorControls,
ControlInfoMap *ipaControls);
void runAiq(unsigned int frame);
- void fillParams(unsigned int frame, ipu3_uapi_params *params);
void parseStatistics(unsigned int frame,
int64_t frameTimestamp,
const ipu3_uapi_stats_3a *stats,
@@ -342,7 +341,29 @@ void IPAIPU3::fillParamsBuffer(const uint32_t frame, const uint32_t bufferId)
ipu3_uapi_params *params =
reinterpret_cast<ipu3_uapi_params *>(mem.data());
- fillParams(frame, params);
+ /* Prepare parameters buffer. */
+ memset(params, 0, sizeof(*params));
+
+ /*
+ * Call into the AIQ object, and set up the library with any requested
+ * controls or settings from the incoming request.
+ *
+ * (statistics are fed into the library as a separate event
+ * when available)
+ *
+ * - Run algorithms
+ *
+ * - Fill params buffer with the results of the algorithms.
+ */
+ runAiq(frame);
+
+ aiq::AiqResults& latestResults = resultsHistory_.latest();
+ aic_.updateRuntimeParams(latestResults);
+ aic_.run(params);
+
+ setControls(frame);
+
+ paramsBufferReady.emit(frame);
}
void IPAIPU3::processStatsBuffer(const uint32_t frame, const int64_t frameTimestamp,
@@ -390,33 +411,6 @@ void IPAIPU3::runAiq([[maybe_unused]] unsigned int frame)
lensPosition_ = latestResults.af()->next_lens_position;
}
-void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)
-{
- /* Prepare parameters buffer. */
- memset(params, 0, sizeof(*params));
-
- /*
- * Call into the AIQ object, and set up the library with any requested
- * controls or settings from the incoming request.
- *
- * (statistics are fed into the library as a separate event
- * when available)
- *
- * - Run algorithms
- *
- * - Fill params buffer with the results of the algorithms.
- */
- runAiq(frame);
-
- aiq::AiqResults& latestResults = resultsHistory_.latest();
- aic_.updateRuntimeParams(latestResults);
- aic_.run(params);
-
- setControls(frame);
-
- paramsBufferReady.emit(frame);
-}
-
void IPAIPU3::parseStatistics(unsigned int frame,
int64_t frameTimestamp,
const ipu3_uapi_stats_3a *stats,