mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Pop Ioan Daniel <pop.ioan-daniel@analog.com>
To: <jic23@kernel.org>
Cc: "Nuno Sá" <nuno.sa@analog.com>,
	"Michael Hennerich" <Michael.Hennerich@analog.com>,
	"David Lechner" <dlechner@baylibre.com>,
	"Andy Shevchenko" <andy@kernel.org>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Dragos Bogdan" <dragos.bogdan@analog.com>,
	"Ioan Daniel" <pop.ioan-daniel@analog.com>,
	linux@analog.com, linux-iio@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v2 2/2] iio: adc: ad7405: Add support for ADuM7801/7802/7811/7812
Date: Thu, 5 Nov 2026 11:35:31 +0200	[thread overview]
Message-ID: <20261105093531.7562-3-pop.ioan-daniel@analog.com> (raw)
In-Reply-To: <20261105093531.7562-1-pop.ioan-daniel@analog.com>

Add a chip information structure and a device tree match table entry
for each of the ADuM7801, ADuM7802, ADuM7811 and ADuM7812. These parts
are handled the same way as the existing ADuM770x devices and differ
only in their full-scale input range: ±320 mV for the ADuM7801 and
ADuM7811, and ±64 mV for the ADuM7802 and ADuM7812.

The device tree binding lists the ADuM7701 and ADuM7702 as fallback
compatibles, so the driver can handle these parts through the fallback
alone. The dedicated entries are added so that the IIO device reports
the real part name instead of the name of the fallback part.

Rework the Kconfig help text to list one supported part per line, so
that new parts can be added without rewrapping the text, and make the
prompt generic instead of naming only the AD7405.

Signed-off-by: Pop Ioan Daniel <pop.ioan-daniel@analog.com>
---
changes in v2:
 - keep dedicated match entries so the IIO device reports the real
   part name (the binding now has fallback compatibles)
 - list one supported part per line in the Kconfig help text
 - make the Kconfig prompt generic instead of naming only the AD7405
 
 drivers/iio/adc/Kconfig  | 14 +++++++++++---
 drivers/iio/adc/ad7405.c | 24 ++++++++++++++++++++++++
 2 files changed, 35 insertions(+), 3 deletions(-)

diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
index f8456c8039883..bdcb1f5c9a218 100644
--- a/drivers/iio/adc/Kconfig
+++ b/drivers/iio/adc/Kconfig
@@ -355,11 +355,19 @@ config AD7380
 	  called ad7380.
 
 config AD7405
-	tristate "Analog Devices AD7405 ADC Driver"
+	tristate "Analog Devices AD7405 and similar isolated sigma-delta modulators driver"
 	depends on IIO_BACKEND
 	help
-	  Say yes here to build support for Analog Devices AD7405, ADUM7701,
-	  ADUM7702, ADUM7703 analog to digital converters (ADC).
+	  Say yes here to build support for Analog Devices isolated
+	  sigma-delta modulators:
+	  - AD7405
+	  - ADuM7701
+	  - ADuM7702
+	  - ADuM7703
+	  - ADuM7801
+	  - ADuM7802
+	  - ADuM7811
+	  - ADuM7812
 
 	  To compile this driver as a module, choose M here: the module will be
 	  called ad7405.
diff --git a/drivers/iio/adc/ad7405.c b/drivers/iio/adc/ad7405.c
index 0996f48d76f1e..ee9873b47a84f 100644
--- a/drivers/iio/adc/ad7405.c
+++ b/drivers/iio/adc/ad7405.c
@@ -158,6 +158,26 @@ static const struct ad7405_chip_info adum7703_chip_info = {
 	.full_scale_mv = 320,
 };
 
+static const struct ad7405_chip_info adum7801_chip_info = {
+	.name = "adum7801",
+	.full_scale_mv = 320,
+};
+
+static const struct ad7405_chip_info adum7802_chip_info = {
+	.name = "adum7802",
+	.full_scale_mv = 64,
+};
+
+static const struct ad7405_chip_info adum7811_chip_info = {
+	.name = "adum7811",
+	.full_scale_mv = 320,
+};
+
+static const struct ad7405_chip_info adum7812_chip_info = {
+	.name = "adum7812",
+	.full_scale_mv = 64,
+};
+
 static const char * const ad7405_power_supplies[] = {
 	"vdd1",	"vdd2",
 };
@@ -232,6 +252,10 @@ static const struct of_device_id ad7405_of_match[] = {
 	{ .compatible = "adi,adum7701", .data = &adum7701_chip_info, },
 	{ .compatible = "adi,adum7702", .data = &adum7702_chip_info, },
 	{ .compatible = "adi,adum7703", .data = &adum7703_chip_info, },
+	{ .compatible = "adi,adum7801", .data = &adum7801_chip_info, },
+	{ .compatible = "adi,adum7802", .data = &adum7802_chip_info, },
+	{ .compatible = "adi,adum7811", .data = &adum7811_chip_info, },
+	{ .compatible = "adi,adum7812", .data = &adum7812_chip_info, },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, ad7405_of_match);
-- 
2.34.1


  parent reply	other threads:[~2026-11-05  9:36 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-05  9:35 [PATCH v2 0/2] iio: adc: ad7405: Add ADuM7801/7802/7811/7812 support Pop Ioan Daniel
2026-11-05  9:35 ` [PATCH v2 1/2] dt-bindings: " Pop Ioan Daniel
2026-11-05  9:35 ` Pop Ioan Daniel [this message]
2026-11-05 12:16   ` [PATCH v2 2/2] iio: adc: ad7405: Add support for ADuM7801/7802/7811/7812 Andy Shevchenko

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=20261105093531.7562-3-pop.ioan-daniel@analog.com \
    --to=pop.ioan-daniel@analog.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=dragos.bogdan@analog.com \
    --cc=jic23@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@analog.com \
    --cc=nuno.sa@analog.com \
    --cc=robh@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

all inboxes | Powered by JetHome®