summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorUmang Jain <umang.jain@ideasonboard.com>2022-03-23 19:56:13 +0530
committerUmang Jain <umang.jain@ideasonboard.com>2022-03-23 21:53:42 +0530
commitc7d4599565a74cf6fbe3eba61d56666516c5d380 (patch)
treef952cd8f1f468c7b689624c2479d2e0f433a931c /include
parentdb269cc4b36d1da80a2116f6406e96b3de8d6e95 (diff)
ipa: rkisp1: Replace event-based ops with dedicated functions
The IPARkISP1Interface currently uses event-type based structures in order to communicate with the pipeline-handler (and vice-versa). Replace the event based structures with dedicated functions associated to each operation. The translated naming scheme of operations to dedicated functions: ActionV4L2Set => setSensorControls ActionParamFilled => paramsBufferReady ActionMetadata => metdataReady EventSignalStatBuffer => processStatsBuffer() EventQueueRequest => queueRequest() The lexical of IPARkISP1::metadataReady() will now conflict with the metadataReady Signal being introduced in this patch as part of the interface change. Hence, rename IPARkISP1::metadataReady() to IPARkISP1::prepareReady() to prevent the conflict. Signed-off-by: Umang Jain <umang.jain@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Tested-by: Paul Elder <paul.elder@ideasonboard.com>
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/ipa/rkisp1.mojom31
1 files changed, 7 insertions, 24 deletions
diff --git a/include/libcamera/ipa/rkisp1.mojom b/include/libcamera/ipa/rkisp1.mojom
index c3a6d8e1..f50f1e11 100644
--- a/include/libcamera/ipa/rkisp1.mojom
+++ b/include/libcamera/ipa/rkisp1.mojom
@@ -8,28 +8,6 @@ module ipa.rkisp1;
import "include/libcamera/ipa/core.mojom";
-enum RkISP1Operations {
- ActionV4L2Set = 1,
- ActionParamFilled = 2,
- ActionMetadata = 3,
- EventSignalStatBuffer = 4,
- EventQueueRequest = 5,
-};
-
-struct RkISP1Event {
- RkISP1Operations op;
- uint32 frame;
- uint32 bufferId;
- libcamera.ControlList controls;
- libcamera.ControlList sensorControls;
-};
-
-struct RkISP1Action {
- RkISP1Operations op;
- libcamera.ControlList controls;
- libcamera.ControlList sensorControls;
-};
-
interface IPARkISP1Interface {
init(libcamera.IPASettings settings,
uint32 hwRevision)
@@ -45,9 +23,14 @@ interface IPARkISP1Interface {
mapBuffers(array<libcamera.IPABuffer> buffers);
unmapBuffers(array<uint32> ids);
- [async] processEvent(RkISP1Event ev);
+ [async] queueRequest(uint32 frame, uint32 bufferId,
+ libcamera.ControlList reqControls);
+ [async] processStatsBuffer(uint32 frame, uint32 bufferId,
+ libcamera.ControlList sensorControls);
};
interface IPARkISP1EventInterface {
- queueFrameAction(uint32 frame, RkISP1Action action);
+ paramsBufferReady(uint32 frame);
+ setSensorControls(uint32 frame, libcamera.ControlList sensorControls);
+ metadataReady(uint32 frame, libcamera.ControlList metadata);
};