[PATCH] iio: dac: ad5770r: fix error return in ad5770r_read_raw()

Antoniu Miclaus posted 1 patch 3 weeks, 5 days ago
drivers/iio/dac/ad5770r.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] iio: dac: ad5770r: fix error return in ad5770r_read_raw()
Posted by Antoniu Miclaus 3 weeks, 5 days ago
Return the error code from regmap_bulk_read() instead of 0 so
that I/O failures are properly propagated.

Fixes: cbbb819837f6 ("iio: dac: ad5770r: Add AD5770R support")
Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
---
 drivers/iio/dac/ad5770r.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/dac/ad5770r.c b/drivers/iio/dac/ad5770r.c
index cd47cb1c685c..6027e8d88b27 100644
--- a/drivers/iio/dac/ad5770r.c
+++ b/drivers/iio/dac/ad5770r.c
@@ -322,7 +322,7 @@ static int ad5770r_read_raw(struct iio_dev *indio_dev,
 				       chan->address,
 				       st->transf_buf, 2);
 		if (ret)
-			return 0;
+			return ret;
 
 		buf16 = get_unaligned_le16(st->transf_buf);
 		*val = buf16 >> 2;
-- 
2.43.0
Re: [PATCH] iio: dac: ad5770r: fix error return in ad5770r_read_raw()
Posted by Jonathan Cameron 2 weeks, 2 days ago
On Thu, 12 Mar 2026 13:20:24 +0200
Antoniu Miclaus <antoniu.miclaus@analog.com> wrote:

> Return the error code from regmap_bulk_read() instead of 0 so
> that I/O failures are properly propagated.
> 
> Fixes: cbbb819837f6 ("iio: dac: ad5770r: Add AD5770R support")
> Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
Applied to the fixes-togreg branch of iio.git and marked for stable.

Thanks

Jonathan

> ---
>  drivers/iio/dac/ad5770r.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/dac/ad5770r.c b/drivers/iio/dac/ad5770r.c
> index cd47cb1c685c..6027e8d88b27 100644
> --- a/drivers/iio/dac/ad5770r.c
> +++ b/drivers/iio/dac/ad5770r.c
> @@ -322,7 +322,7 @@ static int ad5770r_read_raw(struct iio_dev *indio_dev,
>  				       chan->address,
>  				       st->transf_buf, 2);
>  		if (ret)
> -			return 0;
> +			return ret;
>  
>  		buf16 = get_unaligned_le16(st->transf_buf);
>  		*val = buf16 >> 2;