From: Conor Dooley <conor@kernel.org>
To: Nicolae-Daniel Deaconescu <Nicolae-daniel.Deaconescu@analog.com>
Cc: "Sergiu Cuciurean" <sergiu.cuciurean@analog.com>,
"Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Uwe Kleine-König" <ukleinek@kernel.org>,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pwm@vger.kernel.org
Subject: Re: [PATCH 1/2] dt-bindings: iio: adc: add lltc,ltc2387
Date: Tue, 27 Oct 2026 18:28:34 +0000 [thread overview]
Message-ID: <20261027-attic-collector-cb4ffdb5cf82@spud> (raw)
In-Reply-To: <20261027134409.76824-2-Nicolae-daniel.Deaconescu@analog.com>
[-- Attachment #1: Type: text/plain, Size: 7026 bytes --]
On Tue, Oct 27, 2026 at 03:44:08PM +0200, Nicolae-Daniel Deaconescu wrote:
> From: Sergiu Cuciurean <sergiu.cuciurean@analog.com>
>
> Add bindings for the LTC2387-16 and LTC2387-18, 15 Msps SAR ADCs with
> an LVDS data interface, and for the ADAQ23875, ADAQ23876 and ADAQ23878
> uModule ADCs, which pair an LTC2387 die with a fully differential
> amplifier front end.
>
> Conversion start (CNV) and the gated LVDS clock are driven by two PWM
> channels. Sample data is captured by an AXI ADC IP core, referenced
> through io-backends. adi,use-two-lanes selects two-lane output, and
> adi,gain-milli gives the front-end gain: fixed at 2 on the ADAQ23875,
> set by pin strapping on the ADAQ23876 and ADAQ23878.
>
> Signed-off-by: Sergiu Cuciurean <sergiu.cuciurean@analog.com>
> Co-developed-by: Nicolae-Daniel Deaconescu <Nicolae-daniel.Deaconescu@analog.com>
> Signed-off-by: Nicolae-Daniel Deaconescu <Nicolae-daniel.Deaconescu@analog.com>
> Assisted-by: Claude:claude-opus-5-5
> ---
> .../bindings/iio/adc/lltc,ltc2387.yaml | 138 ++++++++++++++++++
> MAINTAINERS | 8 +
> 2 files changed, 146 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/adc/lltc,ltc2387.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/lltc,ltc2387.yaml b/Documentation/devicetree/bindings/iio/adc/lltc,ltc2387.yaml
> new file mode 100644
> index 000000000000..f912260c8f79
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/adc/lltc,ltc2387.yaml
> @@ -0,0 +1,138 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +# Copyright 2022 Analog Devices Inc.
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/adc/lltc,ltc2387.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Linear Technology / Analog Devices LTC2387 ADC
> +
> +maintainers:
> + - Sergiu Cuciurean <sergiu.cuciurean@analog.com>
> + - Nicolae-Daniel Deaconescu <Nicolae-daniel.Deaconescu@analog.com>
> +
> +description: |
> + The LTC2387-18 is a low noise, high speed, 18-bit 15Msps
> + successive approximation register (SAR) ADC ideally
> + suited for a wide range of applications.
> +
> + https://www.analog.com/media/en/technical-documentation/data-sheets/238718fa.pdf
> + https://www.analog.com/media/en/technical-documentation/data-sheets/238716f.pdf
> +
> +properties:
> + compatible:
> + enum:
> + - adi,adaq23875
> + - adi,adaq23876
> + - adi,adaq23878
> + - lltc,ltc2387-16
> + - lltc,ltc2387-16-x4
> + - lltc,ltc2387-18
> + - lltc,ltc2387-18-x4
Why are we getting new devices with linear vendor prefixes? My
understanding was that new devices from ADI subsidiaries were to use the
adi vendor prefix.
> +
> + clocks:
> + description: Sampling clock
> + maxItems: 1
> +
> + pwms:
> + maxItems: 2
> + description:
> + PWM signals used to synchronize the sampling procedure
> +
> + pwm-names:
> + items:
> + - const: cnv
> + - const: clk_gate
Hmm, ltc2387-16 does not appear to have these signals?
Well, it has "cnv" but "cnv" has "sample clock" as the input name so is
the clocks property above and pwm-clock can be used if the provider is a
pwm?
Either there's some mutual exclusion missing here or the modelling in
incorrect.
"clk_gate" doesn't appear in either of the datasheets I looked at, what
does that actually do?
pw-bot: changes-requested
> +
> + io-backends:
> + description:
> + The AXI ADC IP block (axi_ltc2387) that captures the LVDS data stream.
> + maxItems: 1
> +
> + vref-supply:
> + description:
> + External voltage reference. When absent the device's internal 4.096 V
> + reference is assumed.
> +
> + adi,use-two-lanes:
> + description: The device uses two lanes for data transfer
> + type: boolean
Please explain how this is not determinable from the compatible.
Cheers,
Conor.
> +
> + adi,gain-milli:
> + description:
> + Gain of the fully-differential amplifier that the ADAQ2387x modules
> + integrate ahead of the LTC2387 die, expressed as gain * 1000. It is
> + fixed on the ADAQ23875 and set by pin strapping on the ADAQ23876 and
> + ADAQ23878, so it must match the board. The bare ltc2387-* parts have
> + no amplifier.
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [370, 730, 870, 1380, 2000, 2250]
> +
> +required:
> + - compatible
> + - clocks
> + - io-backends
> + - pwms
> + - pwm-names
> +
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - lltc,ltc2387-16
> + - lltc,ltc2387-16-x4
> + - lltc,ltc2387-18
> + - lltc,ltc2387-18-x4
> + then:
> + properties:
> + adi,gain-milli: false
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: adi,adaq23875
> + then:
> + properties:
> + adi,gain-milli:
> + const: 2000
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - adi,adaq23876
> + - adi,adaq23878
> + then:
> + properties:
> + adi,gain-milli:
> + enum: [370, 730, 870, 1380, 2250]
> + required:
> + - adi,gain-milli
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + adc {
> + compatible = "lltc,ltc2387-16";
> + clocks = <&clk 0>;
> + io-backends = <&axi_adc>;
> + pwms = <&pwm 0 0>, <&pwm 1 0>;
> + pwm-names = "cnv", "clk_gate";
> + vref-supply = <&vref>;
> + };
> + - |
> + adc {
> + compatible = "adi,adaq23878";
> + clocks = <&clk 0>;
> + io-backends = <&axi_adc>;
> + pwms = <&pwm 0 0>, <&pwm 1 0>;
> + pwm-names = "cnv", "clk_gate";
> + vref-supply = <&vref>;
> + adi,use-two-lanes;
> + adi,gain-milli = <870>;
> + };
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 52024397dc78..b871d7f25d76 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -15529,6 +15529,14 @@ W: https://ez.analog.com/linux-software-drivers
> F: Documentation/devicetree/bindings/iio/adc/adi,ltc2378.yaml
> F: drivers/iio/adc/ltc2378.c
>
> +LTC2387 IIO ADC DRIVER
> +M: Nicolae-Daniel Deaconescu <Nicolae-daniel.Deaconescu@analog.com>
> +M: Sergiu Cuciurean <sergiu.cuciurean@analog.com>
> +L: linux-iio@vger.kernel.org
> +S: Supported
> +W: https://ez.analog.com/linux-software-drivers
> +F: Documentation/devicetree/bindings/iio/adc/lltc,ltc2387.yaml
> +
> LTC2664 IIO DAC DRIVER
> M: Michael Hennerich <michael.hennerich@analog.com>
> M: Kim Seer Paller <kimseer.paller@analog.com>
> --
> 2.34.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2026-10-27 18:28 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-27 13:44 [PATCH 0/2] iio: adc: add LTC2387 and ADAQ2387x support Nicolae-Daniel Deaconescu
2026-10-27 13:44 ` [PATCH 1/2] dt-bindings: iio: adc: add lltc,ltc2387 Nicolae-Daniel Deaconescu
2026-10-27 13:59 ` sashiko-bot
2026-10-27 18:28 ` Conor Dooley [this message]
2026-10-29 9:47 ` Krzysztof Kozlowski
2026-10-27 13:44 ` [PATCH 2/2] iio: adc: add ltc2387 driver Nicolae-Daniel Deaconescu
2026-10-27 14:06 ` sashiko-bot
2026-10-27 14:37 ` Joshua Crofts
2026-10-28 2:39 ` Jonathan Cameron
2026-10-27 15:56 ` [PATCH 0/2] iio: adc: add LTC2387 and ADAQ2387x support 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=20261027-attic-collector-cb4ffdb5cf82@spud \
--to=conor@kernel.org \
--cc=Nicolae-daniel.Deaconescu@analog.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=sergiu.cuciurean@analog.com \
--cc=ukleinek@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.