The pipeline handler populates a new sensorControls ControlList, to have the effective exposure and gain values for the current frame. This is done when a statistics buffer is received. Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
54 lines
1.1 KiB
Plaintext
54 lines
1.1 KiB
Plaintext
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
|
|
/*
|
|
* \todo Document the interface and remove the related EXCLUDE_PATTERNS entry.
|
|
*/
|
|
|
|
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)
|
|
=> (int32 ret);
|
|
start() => (int32 ret);
|
|
stop();
|
|
|
|
configure(libcamera.IPACameraSensorInfo sensorInfo,
|
|
map<uint32, libcamera.IPAStream> streamConfig,
|
|
map<uint32, libcamera.ControlInfoMap> entityControls)
|
|
=> (int32 ret);
|
|
|
|
mapBuffers(array<libcamera.IPABuffer> buffers);
|
|
unmapBuffers(array<uint32> ids);
|
|
|
|
[async] processEvent(RkISP1Event ev);
|
|
};
|
|
|
|
interface IPARkISP1EventInterface {
|
|
queueFrameAction(uint32 frame, RkISP1Action action);
|
|
};
|