[PATCH] iio: proximity: isl29501: Fix return type of isl29501_register_write

Salah Triki posted 1 patch 1 week ago
drivers/iio/proximity/isl29501.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] iio: proximity: isl29501: Fix return type of isl29501_register_write
Posted by Salah Triki 1 week ago
isl29501_register_write() was returning a u32 instead of an int.
Since the function returns negative error codes (such as -ERANGE or
return values from i2c_smbus_write_byte_data()), returning an unsigned
integer type prevents callers from correctly checking for negative error
conditions.

Fix this by changing the function return type from u32 to int.

This was found through manual code review.

Fixes: 1c28799257bc ("iio: light: isl29501: Add support for the ISL29501 ToF sensor.")
Signed-off-by: Salah Triki <salah.triki@gmail.com>
---
 drivers/iio/proximity/isl29501.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/proximity/isl29501.c b/drivers/iio/proximity/isl29501.c
index 95fb7238f678..a98a9975323c 100644
--- a/drivers/iio/proximity/isl29501.c
+++ b/drivers/iio/proximity/isl29501.c
@@ -226,7 +226,7 @@ static int isl29501_register_read(struct isl29501_private *isl29501,
 	return ret;
 }
 
-static u32 isl29501_register_write(struct isl29501_private *isl29501,
+static int isl29501_register_write(struct isl29501_private *isl29501,
 				   enum isl29501_register_name name,
 				   u32 value)
 {
-- 
2.43.0
Re: [PATCH] iio: proximity: isl29501: Fix return type of isl29501_register_write
Posted by Joshua Crofts 1 week ago
On Thu, 17 Sep 2026 14:00:52 +0100
Salah Triki <salah.triki@gmail.com> wrote:

> isl29501_register_write() was returning a u32 instead of an int.
> Since the function returns negative error codes (such as -ERANGE or
> return values from i2c_smbus_write_byte_data()), returning an unsigned
> integer type prevents callers from correctly checking for negative error
> conditions.
> 
> Fix this by changing the function return type from u32 to int.
> 
> This was found through manual code review.
> 
> Fixes: 1c28799257bc ("iio: light: isl29501: Add support for the ISL29501 ToF sensor.")
> Signed-off-by: Salah Triki <salah.triki@gmail.com>
> ---

Makes sense. I'd mark this for stable.

Reviewed-by: Joshua Crofts <joshua.crofts1@gmail.com>

-- 
Kind regards,
Joshua Crofts
Re: [PATCH] iio: proximity: isl29501: Fix return type of isl29501_register_write
Posted by Jonathan Cameron 4 days, 2 hours ago
On Thu, 17 Sep 2026 15:23:39 +0200
Joshua Crofts <joshua.crofts1@gmail.com> wrote:

> On Thu, 17 Sep 2026 14:00:52 +0100
> Salah Triki <salah.triki@gmail.com> wrote:
> 
> > isl29501_register_write() was returning a u32 instead of an int.
> > Since the function returns negative error codes (such as -ERANGE or
> > return values from i2c_smbus_write_byte_data()), returning an unsigned
> > integer type prevents callers from correctly checking for negative error
> > conditions.
> > 
> > Fix this by changing the function return type from u32 to int.
> > 
> > This was found through manual code review.
> > 
> > Fixes: 1c28799257bc ("iio: light: isl29501: Add support for the ISL29501 ToF sensor.")
> > Signed-off-by: Salah Triki <salah.triki@gmail.com>
> > ---  
> 
> Makes sense. I'd mark this for stable.
> 
> Reviewed-by: Joshua Crofts <joshua.crofts1@gmail.com>
Applied and marked for stable.  Note this doesn't mean it will
go upstream particularly quickly.  Most likely I'll be folding
the fixes into the pull request for the next merge window.

Thanks,

Jonathan

>