RE: [PATCH 3/7] iio: adis16475: do not return ints in irq handlers

Sa, Nuno
2021-04-15T07:39:11Z

> From: Alexandru Ardelean <ardeleanalex@gmail.com>
> Sent: Wednesday, April 14, 2021 9:27 AM
> To: Sa, Nuno <Nuno.Sa@analog.com>
> Cc: linux-iio <linux-iio@vger.kernel.org>; Jonathan Cameron
> <jic23@kernel.org>; Hennerich, Michael
> <Michael.Hennerich@analog.com>; Lars-Peter Clausen
> <lars@metafoo.de>
> Subject: Re: [PATCH 3/7] iio: adis16475: do not return ints in irq
> handlers
>
> [External]
>
> On Tue, Apr 13, 2021 at 5:45 PM Nuno Sa <nuno.sa@analog.com>
> wrote:
> >
> > On an IRQ handler we should return normal error codes as
> 'irqreturn_t'
> > is expected.
> >
> > Fixes: fff7352bf7a3c ("iio: imu: Add support for adis16475")
> >
> > Signed-off-by: Nuno Sa <nuno.sa@analog.com>
> > ---
> > drivers/iio/imu/adis16475.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/iio/imu/adis16475.c b/drivers/iio/imu/adis16475.c
> > index 1de62fc79e0f..51b76444db0b 100644
> > --- a/drivers/iio/imu/adis16475.c
> > +++ b/drivers/iio/imu/adis16475.c
> > @@ -1068,7 +1068,7 @@ static irqreturn_t
> adis16475_trigger_handler(int irq, void *p)
> >
> > ret = spi_sync(adis->spi, &adis->msg);
> > if (ret)
> > - return ret;
> > + goto check_burst32;
>
> This is also going to call adis16475_burst32_check().
> Which in itself is [probably] an undesired behavior change.
>
> Maybe this needs a new 'irq_done' label?

That was intentional. If someone changed the decimation or the FIR
filters so that we can change to burst32, we can just do it now...