Commit 64f4eaa5 authored by Lars-Peter Clausen's avatar Lars-Peter Clausen Committed by Greg Kroah-Hartman

staging:iio:dac:ad5064: Add AD5666 support

The AD5666 is identical to the ad5064-1, except that it has a internal reference
voltage.
Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
Acked-by: default avatarJonathan Cameron <jic23@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bb92ff3e
...@@ -4,12 +4,12 @@ ...@@ -4,12 +4,12 @@
menu "Digital to analog converters" menu "Digital to analog converters"
config AD5064 config AD5064
tristate "Analog Devices AD5064/64-1/65/44/45/24/25, AD5628/48/68 DAC driver" tristate "Analog Devices AD5064/64-1/65/44/45/24/25, AD5628/48/66/68 DAC driver"
depends on SPI depends on SPI
help help
Say yes here to build support for Analog Devices AD5024, AD5025, AD5044, Say yes here to build support for Analog Devices AD5024, AD5025, AD5044,
AD5045, AD5064, AD5064-1, AD5065, AD5628, AD5648, AD5668 Digital to Analog AD5045, AD5064, AD5064-1, AD5065, AD5628, AD5648, AD5666, AD5668 Digital
Converter. to Analog Converter.
To compile this driver as a module, choose M here: the To compile this driver as a module, choose M here: the
module will be called ad5064. module will be called ad5064.
......
/* /*
* AD5024, AD5025, AD5044, AD5045, AD5064, AD5064-1, AD5065, AD5628, AD5648, * AD5024, AD5025, AD5044, AD5045, AD5064, AD5064-1, AD5065, AD5628, AD5648,
* AD5668 Digital to analog converters driver * AD5666, AD5668 Digital to analog converters driver
* *
* Copyright 2011 Analog Devices Inc. * Copyright 2011 Analog Devices Inc.
* *
...@@ -104,6 +104,8 @@ enum ad5064_type { ...@@ -104,6 +104,8 @@ enum ad5064_type {
ID_AD5628_2, ID_AD5628_2,
ID_AD5648_1, ID_AD5648_1,
ID_AD5648_2, ID_AD5648_2,
ID_AD5666_1,
ID_AD5666_2,
ID_AD5668_1, ID_AD5668_1,
ID_AD5668_2, ID_AD5668_2,
}; };
...@@ -388,6 +390,18 @@ static const struct ad5064_chip_info ad5064_chip_info_tbl[] = { ...@@ -388,6 +390,18 @@ static const struct ad5064_chip_info ad5064_chip_info_tbl[] = {
.channels = ad5044_channels, .channels = ad5044_channels,
.num_channels = 8, .num_channels = 8,
}, },
[ID_AD5666_1] = {
.shared_vref = true,
.internal_vref = 2500000,
.channels = ad5064_channels,
.num_channels = 4,
},
[ID_AD5666_2] = {
.shared_vref = true,
.internal_vref = 5000000,
.channels = ad5064_channels,
.num_channels = 4,
},
[ID_AD5668_1] = { [ID_AD5668_1] = {
.shared_vref = true, .shared_vref = true,
.internal_vref = 2500000, .internal_vref = 2500000,
...@@ -520,6 +534,8 @@ static const struct spi_device_id ad5064_id[] = { ...@@ -520,6 +534,8 @@ static const struct spi_device_id ad5064_id[] = {
{"ad5628-2", ID_AD5628_2}, {"ad5628-2", ID_AD5628_2},
{"ad5648-1", ID_AD5648_1}, {"ad5648-1", ID_AD5648_1},
{"ad5648-2", ID_AD5648_2}, {"ad5648-2", ID_AD5648_2},
{"ad5666-1", ID_AD5666_1},
{"ad5666-2", ID_AD5666_2},
{"ad5668-1", ID_AD5668_1}, {"ad5668-1", ID_AD5668_1},
{"ad5668-2", ID_AD5668_2}, {"ad5668-2", ID_AD5668_2},
{"ad5668-3", ID_AD5668_2}, /* similar enough to ad5668-2 */ {"ad5668-3", ID_AD5668_2}, /* similar enough to ad5668-2 */
...@@ -539,5 +555,5 @@ static struct spi_driver ad5064_driver = { ...@@ -539,5 +555,5 @@ static struct spi_driver ad5064_driver = {
module_spi_driver(ad5064_driver); module_spi_driver(ad5064_driver);
MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>"); MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>");
MODULE_DESCRIPTION("Analog Devices AD5024/25/44/45/64/64-1/65, AD5628/48/68 DAC"); MODULE_DESCRIPTION("Analog Devices AD5024/25/44/45/64/64-1/65, AD5628/48/66/68 DAC");
MODULE_LICENSE("GPL v2"); MODULE_LICENSE("GPL v2");
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment