iio: light: fix improper return value
authorPan Bian <bianpan2016@163.com>
Sat, 3 Dec 2016 09:24:17 +0000 (17:24 +0800)
committerJonathan Cameron <jic23@kernel.org>
Sun, 4 Dec 2016 10:56:26 +0000 (10:56 +0000)
In function cm3232_reg_init(), it returns 0 even if the last call to
i2c_smbus_write_byte_data() returns a negative value (indicates error).
As a result, the return value may be inconsistent with the execution
status, and the caller of cm3232_reg_init() will not be able to detect
the error. This patch fixes the bug.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=188641

Signed-off-by: Pan Bian <bianpan2016@163.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/light/cm3232.c

index fe89b68..263e972 100644 (file)
@@ -119,7 +119,7 @@ static int cm3232_reg_init(struct cm3232_chip *chip)
        if (ret < 0)
                dev_err(&chip->client->dev, "Error writing reg_cmd\n");
 
-       return 0;
+       return ret;
 }
 
 /**