| From abdf9cb110e39c1d27ff0775d481c01882c2ab6e Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 27 Apr 2021 10:54:49 +0200 |
| Subject: iio: adis16475: do not return ints in irq handlers |
| |
| From: Nuno Sa <nuno.sa@analog.com> |
| |
| [ Upstream commit 00a72db718fa198da3946286dcad222399ccd4fb ] |
| |
| On an IRQ handler we should not return normal error codes as 'irqreturn_t' |
| is expected. |
| |
| This is done by jumping to the 'check_burst32' label where we return |
| 'IRQ_HANDLED'. Note that it is fine to do the burst32 check in this |
| error path. If we have proper settings to apply burst32, we might just |
| do the setup now so that the next sample already uses it. |
| |
| Fixes: fff7352bf7a3c ("iio: imu: Add support for adis16475") |
| Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com> |
| Signed-off-by: Nuno Sa <nuno.sa@analog.com> |
| Link: https://lore.kernel.org/r/20210427085454.30616-2-nuno.sa@analog.com |
| Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| 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 197d48240991..3c4e4deb8760 100644 |
| --- a/drivers/iio/imu/adis16475.c |
| +++ b/drivers/iio/imu/adis16475.c |
| @@ -990,7 +990,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; |
| |
| adis->spi->max_speed_hz = cached_spi_speed_hz; |
| buffer = adis->buffer; |
| -- |
| 2.30.2 |
| |