Re: [PATCH v4 2/2] staging: iio: adc: ad7816: Use DMA-safe buffer for SPI read

From: Joshua Crofts

Date: Sun Sep 06 2026 - 10:16:08 EST


On Sun, 6 Sep 2026 14:40:49 +0300
Abdelnasser Hussein <abdelnasserhussein11@xxxxxxxxx> wrote:

> diff --git a/drivers/staging/iio/adc/ad7816.c b/drivers/staging/iio/adc/ad7816.c
> index ab80b3a889bb..e14ae805f076 100644
> --- a/drivers/staging/iio/adc/ad7816.c
> +++ b/drivers/staging/iio/adc/ad7816.c
> @@ -52,6 +52,8 @@ struct ad7816_chip_info {
> u8 oti_data[AD7816_CS_MAX + 1];
> u8 channel_id; /* 0 always be temperature */
> u8 mode;
> + struct mutex lock; /* protect device state during SPI transfers */

See my 2 replies to the previous patch. This change shouldn't be here.

> + __be16 rx_buf __aligned(IIO_DMA_MINALIGN);
> };
>
> enum ad7816_type {
> @@ -94,13 +96,13 @@ static int ad7816_spi_read(struct ad7816_chip_info *chip, u16 *data)
>
> gpiod_set_value(chip->rdwr_pin, 0);
> gpiod_set_value(chip->rdwr_pin, 1);
> - ret = spi_read(spi_dev, &buf, sizeof(*data));

As well as the fact you removed buf in the first patch, causing build
errors.

--
Kind regards,
Joshua Crofts