Extend the AD4000 series device tree documentation to also describe
PulSAR devices.
The single-channel series of PulSAR devices is similar to the AD4000 series
except PulSAR devices sample at slower rates and don't have a
configuration register. Because PulSAR devices don't have a configuration
register, they don't support all features of AD4000 devices and thus fewer
interfaces are provided to user space. Also, while AD4000 may have their
SDI pin connected to SPI host MOSI line, PulSAR SDI pin is never connected
to MOSI.
Some devices within the PulSAR series are just faster versions of others.
From fastest to slowest, AD7980, AD7988-5, AD7686, AD7685, and AD7988-1 are
all 16-bit pseudo-differential pin-for-pin compatible ADCs. Devices that
only vary on the sample rate are documented with a common fallback
compatible.
Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com>
---
Change log v4 -> v5
- Added const items for fallback compatibles.
.../bindings/iio/adc/adi,ad4000.yaml | 59 +++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml
index e413a9d8d2a2..5b6662f5f40f 100644
--- a/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml
@@ -19,6 +19,20 @@ description: |
https://www.analog.com/media/en/technical-documentation/data-sheets/ad4020-4021-4022.pdf
https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4001.pdf
https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4003.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7685.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7686.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7687.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7688.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7690.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7691.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7693.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7942.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7946.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7980.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7982.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7983.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7984.pdf
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad7988-1_7988-5.pdf
$ref: /schemas/spi/spi-peripheral-props.yaml#
@@ -63,6 +77,35 @@ properties:
- const: adi,adaq4003
+ - const: adi,ad7983
+ - items:
+ - enum:
+ - adi,ad7685
+ - adi,ad7686
+ - adi,ad7980
+ - adi,ad7988-1
+ - adi,ad7988-5
+ - const: adi,ad7983
+
+ - const: adi,ad7687
+ - items:
+ - enum:
+ - adi,ad7688
+ - adi,ad7693
+ - const: adi,ad7687
+
+ - const: adi,ad7691
+ - items:
+ - enum:
+ - adi,ad7690
+ - adi,ad7982
+ - adi,ad7984
+ - const: adi,ad7691
+
+ - enum:
+ - adi,ad7942
+ - adi,ad7946
+
reg:
maxItems: 1
@@ -133,6 +176,22 @@ required:
- ref-supply
allOf:
+ # Single-channel PulSAR devices have SDI either tied to VIO, GND, or host CS.
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - adi,ad7687
+ - adi,ad7691
+ - adi,ad7942
+ - adi,ad7946
+ - adi,ad7983
+ then:
+ properties:
+ adi,sdi-pin:
+ enum: [ high, low, cs ]
+ default: cs
# The configuration register can only be accessed if SDI is connected to MOSI
- if:
required:
--
2.45.2
On Fri, Nov 29, 2024 at 10:13:35AM -0300, Marcelo Schmitt wrote: > Extend the AD4000 series device tree documentation to also describe > PulSAR devices. > > The single-channel series of PulSAR devices is similar to the AD4000 series > except PulSAR devices sample at slower rates and don't have a > configuration register. Because PulSAR devices don't have a configuration > register, they don't support all features of AD4000 devices and thus fewer > interfaces are provided to user space. Also, while AD4000 may have their > SDI pin connected to SPI host MOSI line, PulSAR SDI pin is never connected > to MOSI. > > Some devices within the PulSAR series are just faster versions of others. > >From fastest to slowest, AD7980, AD7988-5, AD7686, AD7685, and AD7988-1 are > all 16-bit pseudo-differential pin-for-pin compatible ADCs. Devices that > only vary on the sample rate are documented with a common fallback > compatible. > > Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com> > --- > Change log v4 -> v5 > - Added const items for fallback compatibles. > > .../bindings/iio/adc/adi,ad4000.yaml | 59 +++++++++++++++++++ > 1 file changed, 59 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml > index e413a9d8d2a2..5b6662f5f40f 100644 > --- a/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml > @@ -19,6 +19,20 @@ description: | > https://www.analog.com/media/en/technical-documentation/data-sheets/ad4020-4021-4022.pdf > https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4001.pdf > https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4003.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7685.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7686.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7687.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7688.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7690.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7691.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7693.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7942.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7946.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7980.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7982.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7983.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7984.pdf > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7988-1_7988-5.pdf > > $ref: /schemas/spi/spi-peripheral-props.yaml# > > @@ -63,6 +77,35 @@ properties: > > - const: adi,adaq4003 > > + - const: adi,ad7983 Why this is here but not in enum? > + - items: > + - enum: > + - adi,ad7685 > + - adi,ad7686 > + - adi,ad7980 > + - adi,ad7988-1 > + - adi,ad7988-5 > + - const: adi,ad7983 > + > + - const: adi,ad7687 > + - items: > + - enum: > + - adi,ad7688 > + - adi,ad7693 > + - const: adi,ad7687 > + > + - const: adi,ad7691 > + - items: > + - enum: > + - adi,ad7690 > + - adi,ad7982 > + - adi,ad7984 > + - const: adi,ad7691 > + > + - enum: > + - adi,ad7942 > + - adi,ad7946 Look, you have here enum for all single-compatible cases. Add all of other cases here as well. That's the convention in 99% of bindings. Best regards, Krzysztof
© 2016 - 2026 Red Hat, Inc.