The camera module initialization routine does not check the return
value of a few functions. Fix that.

Reviewed-by: Kieran Bingham <kieran.bingham+rene...@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo+rene...@jmondi.org>
---
 drivers/media/i2c/rdacm20.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/media/i2c/rdacm20.c b/drivers/media/i2c/rdacm20.c
index d3a2520c4113..7ed3866b5335 100644
--- a/drivers/media/i2c/rdacm20.c
+++ b/drivers/media/i2c/rdacm20.c
@@ -447,11 +447,16 @@ static int rdacm20_init(struct v4l2_subdev *sd, unsigned 
int val)
         *  Ensure that we have a good link configuration before attempting to
         *  identify the device.
         */
-       max9271_configure_i2c(&dev->serializer, MAX9271_I2CSLVSH_469NS_234NS |
-                                               MAX9271_I2CSLVTO_1024US |
-                                               MAX9271_I2CMSTBT_105KBPS);
+       ret = max9271_configure_i2c(&dev->serializer,
+                                   MAX9271_I2CSLVSH_469NS_234NS |
+                                   MAX9271_I2CSLVTO_1024US |
+                                   MAX9271_I2CMSTBT_105KBPS);
+       if (ret)
+               return ret;
 
-       max9271_configure_gmsl_link(&dev->serializer);
+       ret = max9271_configure_gmsl_link(&dev->serializer);
+       if (ret)
+               return ret;
 
        ret = max9271_verify_id(&dev->serializer);
        if (ret < 0)
-- 
2.30.0

Reply via email to