From: Mike Looijmans <mike.looijmans@topic.nl>
To: lars@metafoo.de, Michael.Hennerich@analog.com
Cc: linux-iio@vger.kernel.org, Mike Looijmans <mike.looijmans@topic.nl>
Subject: [PATCH] iio/adc/ad9467.c: Add support for AD9649
Date: Mon, 16 Nov 2015 08:18:07 +0100 [thread overview]
Message-ID: <1447658287-7785-1-git-send-email-mike.looijmans@topic.nl> (raw)
The AD9649 is a 14-bit 20-80Msps ADC.
---
drivers/iio/adc/ad9467.c | 22 +++++++++++++++++++++-
drivers/iio/adc/cf_axi_adc.h | 7 +++++++
2 files changed, 28 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/adc/ad9467.c b/drivers/iio/adc/ad9467.c
index dde27cb..ca67b74 100644
--- a/drivers/iio/adc/ad9467.c
+++ b/drivers/iio/adc/ad9467.c
@@ -370,6 +370,7 @@ static int ad9467_dco_calibrate(struct iio_dev *indio_dev, unsigned chan)
case CHIPID_AD9680:
case CHIPID_AD9625:
case CHIPID_AD9434:
+ case CHIPID_AD9649:
return 0;
case CHIPID_AD9265:
case CHIPID_AD9652:
@@ -417,6 +418,10 @@ static const int ad9652_scale_table[][2] = {
{1250, 0}, {1125, 1}, {1200, 2}, {1250, 3}, {1000, 5},
};
+static const int ad9649_scale_table[][2] = {
+ {2000, 0},
+};
+
static int ad9467_scale(struct axiadc_converter *conv, int index)
{
if (index > conv->chip_info->num_scales)
@@ -848,7 +853,15 @@ static const struct axiadc_chip_info axiadc_chip_info_tbl[] = {
.channel[0] = AIM_CHAN_NOCALIB(0, 0, 12, 'S', 0, NULL, 0),
.channel[1] = AIM_CHAN_NOCALIB(1, 1, 12, 'S', 0, NULL, 0),
},
-
+ [ID_AD9649] = {
+ .name = "AD9649",
+ .max_rate = 80000000UL,
+ .scale_table = ad9649_scale_table,
+ .num_scales = ARRAY_SIZE(ad9649_scale_table),
+ .max_testmode = TESTMODE_ONE_ZERO_TOGGLE,
+ .num_channels = 1,
+ .channel[0] = AIM_CHAN_NOCALIB(0, 0, 14, 'S', 0, NULL, 0),
+ },
};
static int ad9250_setup(struct spi_device *spi, unsigned m, unsigned l)
@@ -1351,6 +1364,12 @@ static int ad9467_probe(struct spi_device *spi)
AD9643_DEF_OUTPUT_MODE | OUTPUT_MODE_TWOS_COMPLEMENT;
ret = ad9467_outputmode_set(spi, conv->adc_output_mode);
break;
+ case CHIPID_AD9649:
+ conv->chip_info = &axiadc_chip_info_tbl[ID_AD9649];
+ conv->adc_output_mode =
+ AD9643_DEF_OUTPUT_MODE | OUTPUT_MODE_TWOS_COMPLEMENT;
+ ret = ad9467_outputmode_set(spi, conv->adc_output_mode);
+ break;
default:
dev_err(&spi->dev, "Unrecognized CHIP_ID 0x%X\n", conv->id);
ret = -ENODEV;
@@ -1424,6 +1443,7 @@ static const struct spi_device_id ad9467_id[] = {
{"ad9680", CHIPID_AD9680},
{"ad9652", CHIPID_AD9652},
{"ad9234", CHIPID_AD9234},
+ {"ad9649", CHIPID_AD9649},
{}
};
diff --git a/drivers/iio/adc/cf_axi_adc.h b/drivers/iio/adc/cf_axi_adc.h
index 0ad524e..8c36b9c 100644
--- a/drivers/iio/adc/cf_axi_adc.h
+++ b/drivers/iio/adc/cf_axi_adc.h
@@ -316,6 +316,12 @@ enum adc_data_sel {
#define CHIPID_AD9234 0xCE
+/*
+ * Analog Devices AD9649
+ */
+
+#define CHIPID_AD9649 0x6F
+
/* debugfs direct register access */
#define DEBUGFS_DRA_PCORE_REG_MAGIC 0x80000000
@@ -335,6 +341,7 @@ enum {
ID_AD9652,
ID_AD9234,
ID_AD9680_x2,
+ ID_AD9649,
};
struct axiadc_chip_info {
--
1.9.1
next reply other threads:[~2015-11-16 7:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-16 7:18 Mike Looijmans [this message]
2015-11-22 12:14 ` [PATCH] iio/adc/ad9467.c: Add support for AD9649 Jonathan Cameron
2015-11-23 8:24 ` Mike Looijmans
2015-11-23 9:36 ` Lars-Peter Clausen
2015-11-23 10:46 ` Lars-Peter Clausen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1447658287-7785-1-git-send-email-mike.looijmans@topic.nl \
--to=mike.looijmans@topic.nl \
--cc=Michael.Hennerich@analog.com \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox