Re: [PATCH] staging: iio: adt7316: Add error handling to adt7316_spi_probe()

From: Jonathan Cameron

Date: Mon Apr 27 2026 - 06:02:33 EST


On Mon, 27 Apr 2026 11:18:51 +0300
Dan Carpenter <error27@xxxxxxxxx> wrote:

> On Sun, Apr 26, 2026 at 03:50:38PM -0500, Maxwell Doose wrote:
> > Currently, the return values of the adt7316_spi_write() calls in
> > adt7316_spi_probe() are unchecked. Add error handling to return early
> > and pass on the error code if we receive an error from
> > adt7316_spi_write().
> >
> > While at it, move all three adt7316_spi_write() calls inside a for loop
> > to condense the logic.
> >
> > Signed-off-by: Maxwell Doose <m32285159@xxxxxxxxx>
> > ---
>
> A lot of the time, functions can't fail or if they do it means
> you need to buy a new computer and there is nothing the
> operating system can do to help you. spi_write() feels like
> one of those things.

We do normally check spi and i2c writes. Though given spi doesn't
have known markers like I2C does, it's not always clear we can detect
an error. However, these are 'special' as the comment above makes
clear. Device is in i2c mode and a magic SPI hammering sequence is
used to make it switch. For this sort of stuff all bets are off.
If it were the other way around we'd definitely expect errors from
the i2c transfers - though as mentioned above it is really hard
to tell if SPI failed.

Anyhow as far as I'm concerned adding checks to normal calls is
fine, but not to things around reset, mode switches or power
management unless you can test them.


>
> Plus we wouldn't add new checks like this unless they had been
> tested.
>
> regards,
> dan carpenter
>