libcamera: mali-c55: Fix error paths in ::init()

In the MaliC55CameraData::init() function there are two places that
return values they 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@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
Daniel Scally 2025-01-21 13:00:37 +00:00 committed by Kieran Bingham
parent fabee6055f
commit e342f050c2

View file

@ -157,15 +157,16 @@ int MaliC55CameraData::init()
*/ */
sensor_ = CameraSensorFactoryBase::create(entity_); sensor_ = CameraSensorFactoryBase::create(entity_);
if (!sensor_) if (!sensor_)
return ret; return -ENODEV;
const MediaPad *sourcePad = entity_->getPadByIndex(0); const MediaPad *sourcePad = entity_->getPadByIndex(0);
MediaEntity *csiEntity = sourcePad->links()[0]->sink()->entity(); MediaEntity *csiEntity = sourcePad->links()[0]->sink()->entity();
csi_ = std::make_unique<V4L2Subdevice>(csiEntity); csi_ = std::make_unique<V4L2Subdevice>(csiEntity);
if (csi_->open()) { ret = csi_->open();
if (ret) {
LOG(MaliC55, Error) << "Failed to open CSI-2 subdevice"; LOG(MaliC55, Error) << "Failed to open CSI-2 subdevice";
return false; return ret;
} }
return 0; return 0;