[libcamera-devel] [PATCH v2] ipu3: Disallow raw only camera configuration
Kieran Bingham
kieran.bingham at ideasonboard.com
Fri Aug 6 16:39:21 CEST 2021
Hi Umang,
On 04/08/2021 14:25, Umang Jain wrote:
> Ideally to capture the raw frames, ImgU should not be required.
> However, we do need to configure the IPA since it shall setup
> the sensor controls (exposure, vblank and so on) for the capture.
> One cannot simply configure the IPA, without the ImgU as the
> parameters and statistics buffer passed to the IPA are actually
> managed by the ImgU.
>
> Until we prepare and setup the ImgU to run an internal queue for
> raw-only camera configuration, disallow this configuration and
> report it as invalid.
>
> Signed-off-by: Umang Jain <umang.jain at ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
Tested-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
This fixes lc-compliance at least, which helps unblock testing of
Nicolas' series too.
> ---
> src/libcamera/pipeline/ipu3/ipu3.cpp | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
> index 76c3bb3d..9f6a6f21 100644
> --- a/src/libcamera/pipeline/ipu3/ipu3.cpp
> +++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
> @@ -248,6 +248,20 @@ CameraConfiguration::Status IPU3CameraConfiguration::validate()
> if (rawCount > 1 || yuvCount > 2) {
> LOG(IPU3, Debug) << "Camera configuration not supported";
> return Invalid;
> + } else if (rawCount && !yuvCount) {
> + /*
> + * Disallow raw-only camera configuration. Currently, ImgU does
> + * not get configured for raw-only streams and has early return
> + * in configure(). To support raw-only stream, we do need the IPA
> + * to get configured since it will setup the sensor controls for
> + * the capture.
> + *
> + * \todo Configure the ImgU with internal buffers which will enable
> + * the IPA to get configured, for the raw-only camera configuration.
> + */
> + LOG(IPU3, Debug)
> + << "Camera configuration cannot support raw-only streams";
> + return Invalid;
> }
>
> /*
>
More information about the libcamera-devel
mailing list