diff options
author | Beniamin Bia <beniamin.bia@analog.com> | 2019-04-02 16:18:40 +0300 |
---|---|---|
committer | Jonathan Cameron <Jonathan.Cameron@huawei.com> | 2019-04-14 13:22:29 +0100 |
commit | 7989b4bb23fe489996de7ad97b9327e804d7c158 (patch) | |
tree | a7fb0fccddcfa7f6407512d44ef7f6dcad2550bf /drivers/iio/adc/ad7606_spi.c | |
parent | 6bf229abce7528bcf70c62d913eeabfc770ee72c (diff) | |
download | linux-7989b4bb23fe489996de7ad97b9327e804d7c158.tar.gz linux-7989b4bb23fe489996de7ad97b9327e804d7c158.tar.bz2 linux-7989b4bb23fe489996de7ad97b9327e804d7c158.zip |
iio: adc: ad7616: Add support for AD7616 ADC
The AD7616 is a 12-bit ADC with 16 channels.
The AD7616 can be configured to work in hardware mode by controlling it via
gpio pins and read data via spi. No support for software mode yet, but it
is a work in progress.
This device requires a reset in order to update oversampling, so chip info
has got a new attribute to mark this.
The current assumption that this driver makes for AD7616, is that it's
working in Hardware Mode with Serial, Burst and Sequencer modes activated.
To activate them, following pins must be pulled high:
-SER/PAR
-SEQEN
And following must be pulled low:
-WR/BURST
-DB4/SEQEN
Datasheets:
Link: https://www.analog.com/media/en/technical-documentation/data-sheets/ad7616.pdf
Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers/iio/adc/ad7606_spi.c')
-rw-r--r-- | drivers/iio/adc/ad7606_spi.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/iio/adc/ad7606_spi.c b/drivers/iio/adc/ad7606_spi.c index 4fd0ec36a086..b7faef69a58f 100644 --- a/drivers/iio/adc/ad7606_spi.c +++ b/drivers/iio/adc/ad7606_spi.c @@ -53,6 +53,7 @@ static const struct spi_device_id ad7606_id_table[] = { { "ad7606-4", ID_AD7606_4 }, { "ad7606-6", ID_AD7606_6 }, { "ad7606-8", ID_AD7606_8 }, + { "ad7616", ID_AD7616 }, {} }; MODULE_DEVICE_TABLE(spi, ad7606_id_table); @@ -62,6 +63,7 @@ static const struct of_device_id ad7606_of_match[] = { { .compatible = "adi,ad7606-4" }, { .compatible = "adi,ad7606-6" }, { .compatible = "adi,ad7606-8" }, + { .compatible = "adi,ad7616" }, { }, }; MODULE_DEVICE_TABLE(of, ad7606_of_match); |