Re: [PATCH 4/7] iio: adis16475: re-set max spi transfer

Alexandru Ardelean
2021-04-14T07:29:15Z

On Tue, Apr 13, 2021 at 5:45 PM Nuno Sa <nuno.sa@analog.com> wrote:
>
> In case 'spi_sync()' fails, we would be left with a max spi transfer
> which is not the one the user expects it to be. Hence, we need to re-set
> it also in this error path.
>
> Fixes: fff7352bf7a3c ("iio: imu: Add support for adis16475")
> Signed-off-by: Nuno Sa <nuno.sa@analog.com>
> ---
> drivers/iio/imu/adis16475.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/iio/imu/adis16475.c b/drivers/iio/imu/adis16475.c
> index 51b76444db0b..9dca7e506200 100644
> --- a/drivers/iio/imu/adis16475.c
> +++ b/drivers/iio/imu/adis16475.c
> @@ -1067,8 +1067,10 @@ static irqreturn_t adis16475_trigger_handler(int irq, void *p)
> adis->spi->max_speed_hz = ADIS16475_BURST_MAX_SPEED;
>
> ret = spi_sync(adis->spi, &adis->msg);

Purely stylistic here.
But, the restore from the cached variable could be done here in a single line.
So. just moving [1] here.

> - if (ret)
> + if (ret) {
> + adis->spi->max_speed_hz = cached_spi_speed_hz;
> goto check_burst32;
> + }
>
> adis->spi->max_speed_hz = cached_spi_speed_hz;
[1]

> buffer = adis->buffer;
> --
> 2.31.1
>