[PATCH] staging: iio: addac: adt7316: document SPI interface switching sequence

Hungyu Lin posted 1 patch 1 month ago
There is a newer version of this series
drivers/staging/iio/addac/adt7316-spi.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
[PATCH] staging: iio: addac: adt7316: document SPI interface switching sequence
Posted by Hungyu Lin 1 month ago
The device powers up in I2C mode. Switching to SPI mode
requires sending a sequence of SPI writes as described in
the datasheet.

During this sequence, the device may still be in I2C mode,
so SPI transactions may not be recognized and can fail.
Such errors are expected and are ignored.

Add a comment to clarify this behavior.

Signed-off-by: Hungyu Lin <dennylin0707@gmail.com>
---
 drivers/staging/iio/addac/adt7316-spi.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/iio/addac/adt7316-spi.c b/drivers/staging/iio/addac/adt7316-spi.c
index f91325d11394..6d710e1d4aaa 100644
--- a/drivers/staging/iio/addac/adt7316-spi.c
+++ b/drivers/staging/iio/addac/adt7316-spi.c
@@ -106,7 +106,15 @@ static int adt7316_spi_probe(struct spi_device *spi_dev)
 		return -EINVAL;
 	}
 
-	/* switch from default I2C protocol to SPI protocol */
+	/*
+	 * The device powers up in I2C mode. Switching to SPI mode
+	 * requires sending a sequence of SPI writes as described in
+	 * the datasheet.
+	 *
+	 * During this sequence, the device may still be in I2C mode,
+	 * so SPI transactions may not be recognized and can fail.
+	 * Such errors are expected and are ignored.
+	 */
 	adt7316_spi_write(spi_dev, 0, 0);
 	adt7316_spi_write(spi_dev, 0, 0);
 	adt7316_spi_write(spi_dev, 0, 0);
-- 
2.34.1
Re: [PATCH] staging: iio: addac: adt7316: document SPI interface switching sequence
Posted by Andy Shevchenko 1 month ago
On Sun, May 10, 2026 at 07:29:18AM +0000, Hungyu Lin wrote:
> The device powers up in I2C mode. Switching to SPI mode
> requires sending a sequence of SPI writes as described in
> the datasheet.
> 
> During this sequence, the device may still be in I2C mode,
> so SPI transactions may not be recognized and can fail.
> Such errors are expected and are ignored.
> 
> Add a comment to clarify this behavior.

...

> -	/* switch from default I2C protocol to SPI protocol */
> +	/*
> +	 * The device powers up in I2C mode. Switching to SPI mode
> +	 * requires sending a sequence of SPI writes as described in
> +	 * the datasheet.

Add a reference (Section number and title, and/or table / chart number
and its title).

> +	 * During this sequence, the device may still be in I2C mode,
> +	 * so SPI transactions may not be recognized and can fail.
> +	 * Such errors are expected and are ignored.
> +	 */

Otherwise it is indeed what we want to be here.

Perhaps also add a line closer to the code (that will be visible in the patch
in case someone ignores to read the comment)

	 *
	 * TL;DR: Do not change this!
	 */

-- 
With Best Regards,
Andy Shevchenko