OSDN Git Service

iio: dac: ad5446: Add support for new AD5600 DAC
authorStefan Popa <stefan.popa@analog.com>
Wed, 6 Nov 2019 09:47:21 +0000 (11:47 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 10 Nov 2019 15:14:06 +0000 (15:14 +0000)
The AD5600 is a single channel, 16-bit resolution, voltage output digital
to analog converter (DAC). The AD5600 uses a 3-wire SPI interface. It is
part of the AD5541 family of DACs.

The ad5446 IIO driver implements support for some of these DACs (in the
AD5441 family), so the change is a simple entry in this driver.

Link: https://www.analog.com/media/en/technical-documentation/data-sheets/AD5600.pdf
Signed-off-by: Stefan Popa <stefan.popa@analog.com>
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/dac/Kconfig
drivers/iio/dac/ad5446.c

index cc42219..9790701 100644 (file)
@@ -60,8 +60,8 @@ config AD5446
        help
          Say yes here to build support for Analog Devices AD5300, AD5301, AD5310,
          AD5311, AD5320, AD5321, AD5444, AD5446, AD5450, AD5451, AD5452, AD5453,
-         AD5512A, AD5541A, AD5542A, AD5543, AD5553, AD5601, AD5602, AD5611, AD5612,
-         AD5620, AD5621, AD5622, AD5640, AD5641, AD5660, AD5662 DACs
+         AD5512A, AD5541A, AD5542A, AD5543, AD5553, AD5600, AD5601, AD5602, AD5611,
+         AD5612, AD5620, AD5621, AD5622, AD5640, AD5641, AD5660, AD5662 DACs
          as well as Texas Instruments DAC081S101, DAC101S101, DAC121S101.
 
          To compile this driver as a module, choose M here: the
index 7df8b4c..61c670f 100644 (file)
@@ -327,6 +327,7 @@ enum ad5446_supported_spi_device_ids {
        ID_AD5541A,
        ID_AD5512A,
        ID_AD5553,
+       ID_AD5600,
        ID_AD5601,
        ID_AD5611,
        ID_AD5621,
@@ -381,6 +382,10 @@ static const struct ad5446_chip_info ad5446_spi_chip_info[] = {
                .channel = AD5446_CHANNEL(14, 16, 0),
                .write = ad5446_write,
        },
+       [ID_AD5600] = {
+               .channel = AD5446_CHANNEL(16, 16, 0),
+               .write = ad5446_write,
+       },
        [ID_AD5601] = {
                .channel = AD5446_CHANNEL_POWERDOWN(8, 16, 6),
                .write = ad5446_write,
@@ -448,6 +453,7 @@ static const struct spi_device_id ad5446_spi_ids[] = {
        {"ad5542a", ID_AD5541A}, /* ad5541a and ad5542a are compatible */
        {"ad5543", ID_AD5541A}, /* ad5541a and ad5543 are compatible */
        {"ad5553", ID_AD5553},
+       {"ad5600", ID_AD5600},
        {"ad5601", ID_AD5601},
        {"ad5611", ID_AD5611},
        {"ad5621", ID_AD5621},