Query the params device for RKISP1_CID_SUPPORTED_PARAMS_BLOCKS and inject the information into the IPA hardware context for use by the algorithms. To be able to modify the hardware configuration at runtime, replace the pointer with an instance and create a copy of the static hardware specific data. Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
44 lines
1.3 KiB
Plaintext
44 lines
1.3 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";
|
|
|
|
struct IPAConfigInfo {
|
|
libcamera.IPACameraSensorInfo sensorInfo;
|
|
libcamera.ControlInfoMap sensorControls;
|
|
uint32 paramFormat;
|
|
};
|
|
|
|
interface IPARkISP1Interface {
|
|
init(libcamera.IPASettings settings,
|
|
uint32 hwRevision, uint32 supportedBlocks,
|
|
libcamera.IPACameraSensorInfo sensorInfo,
|
|
libcamera.ControlInfoMap sensorControls)
|
|
=> (int32 ret, libcamera.ControlInfoMap ipaControls);
|
|
start() => (int32 ret);
|
|
stop();
|
|
|
|
configure(IPAConfigInfo configInfo,
|
|
map<uint32, libcamera.IPAStream> streamConfig)
|
|
=> (int32 ret, libcamera.ControlInfoMap ipaControls);
|
|
|
|
mapBuffers(array<libcamera.IPABuffer> buffers);
|
|
unmapBuffers(array<uint32> ids);
|
|
|
|
[async] queueRequest(uint32 frame, libcamera.ControlList reqControls);
|
|
[async] computeParams(uint32 frame, uint32 bufferId);
|
|
[async] processStats(uint32 frame, uint32 bufferId,
|
|
libcamera.ControlList sensorControls);
|
|
};
|
|
|
|
interface IPARkISP1EventInterface {
|
|
paramsComputed(uint32 frame, uint32 bytesused);
|
|
setSensorControls(uint32 frame, libcamera.ControlList sensorControls);
|
|
metadataReady(uint32 frame, libcamera.ControlList metadata);
|
|
};
|