Re: [PATCH] Revert "Staging: iio: adt7316: Add an extra check for 'ret' equals to 0"

From: Shreeya Patel
Date: Wed Dec 05 2018 - 14:56:05 EST


On Tue, 2018-12-04 at 18:49 -0700, Jeremy Fertic wrote:
> This reverts commit 00426e99789357dbff7e719a092ce36a3ce49d94.
>
> i2c_smbus_read_byte() returns 0 when a byte with the value 0 is read
> from
> the device. This is a valid read so revert the check for 0.
>
> Signed-off-by: Jeremy Fertic <jeremyfertic@xxxxxxxxx>
> ---

Hi Jeremy,

As per my understanding, 0 value indicates no error but no data read.
Then how can this be a valid case?

Can you please make me understand that how can we consider this as a
valid case even when no data has been read?


Thanks

> drivers/staging/iio/addac/adt7316-i2c.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/staging/iio/addac/adt7316-i2c.c
> b/drivers/staging/iio/addac/adt7316-i2c.c
> index ac91163656b5..2d51bd425662 100644
> --- a/drivers/staging/iio/addac/adt7316-i2c.c
> +++ b/drivers/staging/iio/addac/adt7316-i2c.c
> @@ -30,10 +30,6 @@ static int adt7316_i2c_read(void *client, u8 reg,
> u8 *data)
> }
>
> ret = i2c_smbus_read_byte(client);
> -
> - if (!ret)
> - return -EIO;
> -
> if (ret < 0) {
> dev_err(&cl->dev, "I2C read error\n");
> return ret;