Re: [PATCH] iio: adc: ad7944: drop bits_per_word hack

From: Nuno Sá
Date: Tue Apr 01 2025 - 05:11:52 EST


On Mon, 2025-03-31 at 14:29 -0500, David Lechner wrote:
> Remove setting bits_per_word in SPI xfers without data. The shortcoming
> that this was working around was fixed in the SPI controller driver, so
> it is no longer necessary. And we don't need this to be cargo-culted to
> new drivers.
>
> Signed-off-by: David Lechner <dlechner@xxxxxxxxxxxx>
> ---

Reviewed-by: Nuno Sá <nuno.sa@xxxxxxxxxx>

>  drivers/iio/adc/ad7944.c | 11 -----------
>  1 file changed, 11 deletions(-)
>
> diff --git a/drivers/iio/adc/ad7944.c b/drivers/iio/adc/ad7944.c
> index
> 2f949fe5587318957f2e423029294ced0a6f803d..70f313545af2393a625ae2ec3c2cff2e2915
> 3ffb 100644
> --- a/drivers/iio/adc/ad7944.c
> +++ b/drivers/iio/adc/ad7944.c
> @@ -189,11 +189,6 @@ static int ad7944_3wire_cs_mode_init_msg(struct device
> *dev, struct ad7944_adc *
>      : adc->timing_spec-
> >conv_ns;
>   struct spi_transfer *xfers = adc->xfers;
>  
> - /*
> - * NB: can get better performance from some SPI controllers if we use
> - * the same bits_per_word in every transfer.
> - */
> - xfers[0].bits_per_word = chan->scan_type.realbits;
>   /*
>   * CS is tied to CNV and we need a low to high transition to start
> the
>   * conversion, so place CNV low for t_QUIET to prepare for this.
> @@ -208,7 +203,6 @@ static int ad7944_3wire_cs_mode_init_msg(struct device
> *dev, struct ad7944_adc *
>   xfers[1].cs_off = 1;
>   xfers[1].delay.value = t_conv_ns;
>   xfers[1].delay.unit = SPI_DELAY_UNIT_NSECS;
> - xfers[1].bits_per_word = chan->scan_type.realbits;
>  
>   /* Then we can read the data during the acquisition phase */
>   xfers[2].rx_buf = &adc->sample.raw;
> @@ -227,11 +221,6 @@ static int ad7944_4wire_mode_init_msg(struct device *dev,
> struct ad7944_adc *adc
>      : adc->timing_spec-
> >conv_ns;
>   struct spi_transfer *xfers = adc->xfers;
>  
> - /*
> - * NB: can get better performance from some SPI controllers if we use
> - * the same bits_per_word in every transfer.
> - */
> - xfers[0].bits_per_word = chan->scan_type.realbits;
>   /*
>   * CS has to be high for full conversion time to avoid triggering the
>   * busy indication.
>
> ---
> base-commit: f8ffc92ae9052e6615896052f0c5b808bfc17520
> change-id: 20250331-iio-adc-ad7944-drop-bits_per_word-hack-a71b2d51fa3f
>
> Best regards,