From 53ada24e63f471e6a4931f769e5c88ea13a432f7 Mon Sep 17 00:00:00 2001 From: Naushir Patuck Date: Wed, 22 Jun 2022 11:20:45 +0100 Subject: pipeline: ipa: raspberrypi: Move ControlInfoMap to the IPA Currently the pipeline handler advertises controls handled by the IPA from a static ControlInfoMap defined in the raspberrypi.h header. This change removes this header file, and instead the IPA returns the ControlInfoMap to the pipeline handler from the ipa::init() function. This is done to allow the IPA to adjust the limits of the controls based on the sensor mode in a subsequent change. Bug: https://bugs.libcamera.org/show_bug.cgi?id=83 Signed-off-by: Naushir Patuck Reviewed-by: Kieran Bingham Reviewed-by: David Plowman Signed-off-by: Kieran Bingham --- include/libcamera/ipa/raspberrypi.mojom | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'include/libcamera/ipa/raspberrypi.mojom') diff --git a/include/libcamera/ipa/raspberrypi.mojom b/include/libcamera/ipa/raspberrypi.mojom index a60c3bb4..77f52c28 100644 --- a/include/libcamera/ipa/raspberrypi.mojom +++ b/include/libcamera/ipa/raspberrypi.mojom @@ -26,6 +26,11 @@ struct SensorConfig { uint32 sensorMetadata; }; +struct IPAInitResult { + SensorConfig sensorConfig; + libcamera.ControlInfoMap controlInfo; +}; + struct ISPConfig { uint32 embeddedBufferId; uint32 bayerBufferId; @@ -50,7 +55,7 @@ struct StartConfig { interface IPARPiInterface { init(libcamera.IPASettings settings) - => (int32 ret, SensorConfig sensorConfig); + => (int32 ret, IPAInitResult result); start(libcamera.ControlList controls) => (StartConfig startConfig); stop(); -- cgit v1.2.1