[PATCH] libcamera: mali-c55: Fix error paths in ::init()
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Jan 21 14:18:28 CET 2025
Hi Dan,
Thank you for the patch.
On Tue, Jan 21, 2025 at 01:00:37PM +0000, Daniel Scally wrote:
> In the ::init() function there are two places that return values they
MaliC55CameraData::init() ? ::init() in C++ means global namespace.
> shouldn't; the ret variable is returned after checking a pointer is
> not null instead of an explicit -ENODEV and later the boolean value
> false is returned on failure instead of the error value returned by
> V4L2Subdevice::open() - fix both problems.
>
> Signed-off-by: Daniel Scally <dan.scally at ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> src/libcamera/pipeline/mali-c55/mali-c55.cpp | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/src/libcamera/pipeline/mali-c55/mali-c55.cpp b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> index 5abd6b20..6aa2f2d9 100644
> --- a/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> +++ b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> @@ -159,15 +159,16 @@ int MaliC55CameraData::init()
> */
> sensor_ = CameraSensorFactoryBase::create(entity_);
> if (!sensor_)
> - return ret;
> + return -ENODEV;
>
> const MediaPad *sourcePad = entity_->getPadByIndex(0);
> MediaEntity *csiEntity = sourcePad->links()[0]->sink()->entity();
>
> csi_ = std::make_unique<V4L2Subdevice>(csiEntity);
> - if (csi_->open()) {
> + ret = csi_->open();
> + if (ret) {
> LOG(MaliC55, Error) << "Failed to open CSI-2 subdevice";
> - return false;
> + return ret;
> }
>
> return 0;
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list