]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
iio: adc: ad4851: add spi 3-wire support
authorAntoniu Miclaus <antoniu.miclaus@analog.com>
Thu, 26 Jun 2025 10:40:24 +0000 (13:40 +0300)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 6 Jul 2025 09:37:51 +0000 (10:37 +0100)
Add support for 3-wire configuration within the driver.
By default 4-wire configuration is used.

Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://patch.msgid.link/20250626104024.8645-2-antoniu.miclaus@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad4851.c

index 31e1e02c0ce333dedb27d72f6504316bf41f8103..1ad77f2a45802fcb187b8749ccba83273385b44c 100644 (file)
@@ -444,10 +444,12 @@ static int ad4851_setup(struct ad4851_state *st)
        if (ret)
                return ret;
 
-       ret = regmap_write(st->regmap, AD4851_REG_INTERFACE_CONFIG_A,
-                          AD4851_SDO_ENABLE);
-       if (ret)
-               return ret;
+       if (!(st->spi->mode & SPI_3WIRE)) {
+               ret = regmap_write(st->regmap, AD4851_REG_INTERFACE_CONFIG_A,
+                                  AD4851_SDO_ENABLE);
+               if (ret)
+                       return ret;
+       }
 
        ret = regmap_read(st->regmap, AD4851_REG_PRODUCT_ID_L, &product_id);
        if (ret)