Add devicetree bindings for ad458x DAS family.
Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
---
.../bindings/iio/adc/adi,ad485x.yaml | 82 +++++++++++++++++++
1 file changed, 82 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml
new file mode 100644
index 000000000000..5f5bdfa9522b
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml
@@ -0,0 +1,82 @@
+# 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/adi,ad485x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices AD485X DAS family device driver
+
+maintainers:
+ - Sergiu Cuciurean <sergiu.cuciurean@analog.com>
+ - Dragos Bogdan <dragos.bogdan@analog.com>
+ - Antoniu Miclaus <antoniu.miclaus@analog.com>
+
+description: |
+ Analog Devices AD485X DAS family
+
+ https://www.analog.com/media/en/technical-documentation/data-sheets/ad4858.pdf
+
+properties:
+ compatible:
+ enum:
+ - adi,ad4858
+ - adi,ad4857
+ - adi,ad4856
+ - adi,ad4855
+ - adi,ad4854
+ - adi,ad4853
+ - adi,ad4852
+ - adi,ad4851
+ - adi,ad4858i
+
+ reg:
+ maxItems: 1
+
+ vcc-supply: true
+
+ vdd-supply: true
+
+ vddh-supply: true
+
+ vio-supply: true
+
+ pwms:
+ maxItems: 1
+
+ io-backends:
+ maxItems: 1
+
+ spi-max-frequency:
+ maximum: 100000000
+
+required:
+ - compatible
+ - reg
+ - vcc-supply
+ - vdd-supply
+ - vddh-supply
+ - vio-supply
+ - pwms
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ adc@0{
+ compatible = "adi,ad4858";
+ reg = <0>;
+ spi-max-frequency = <10000000>;
+ vcc-supply = <&vcc>;
+ vdd-supply = <&vdd>;
+ vddh-supply = <&vddh>;
+ vio-supply = <&vio>;
+ pwms = <&pwm_gen 0 0>;
+ io-backends = <&iio_backend>;
+ };
+ };
+...
--
2.46.0
On Mon, Sep 23, 2024 at 01:10:22PM +0300, Antoniu Miclaus wrote: > Add devicetree bindings for ad458x DAS family. typo: ad485x Subject too. > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com> > --- > .../bindings/iio/adc/adi,ad485x.yaml | 82 +++++++++++++++++++ > 1 file changed, 82 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > new file mode 100644 > index 000000000000..5f5bdfa9522b > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > @@ -0,0 +1,82 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright 2022 Analog Devices Inc. It's 2024 > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/adc/adi,ad485x.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD485X DAS family device driver What's DAS? This is a binding, not 'device driver'. Just drop. > + > +maintainers: > + - Sergiu Cuciurean <sergiu.cuciurean@analog.com> > + - Dragos Bogdan <dragos.bogdan@analog.com> > + - Antoniu Miclaus <antoniu.miclaus@analog.com> > + > +description: | > + Analog Devices AD485X DAS family > + > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad4858.pdf > + > +properties: > + compatible: > + enum: > + - adi,ad4858 > + - adi,ad4857 > + - adi,ad4856 > + - adi,ad4855 > + - adi,ad4854 > + - adi,ad4853 > + - adi,ad4852 > + - adi,ad4851 > + - adi,ad4858i > + > + reg: > + maxItems: 1 > + > + vcc-supply: true > + > + vdd-supply: true > + > + vddh-supply: true > + > + vio-supply: true > + > + pwms: > + maxItems: 1 > + > + io-backends: > + maxItems: 1 > + > + spi-max-frequency: > + maximum: 100000000 > + > +required: > + - compatible > + - reg > + - vcc-supply > + - vdd-supply > + - vddh-supply > + - vio-supply > + - pwms > + > +unevaluatedProperties: false > + > +examples: > + - | > + spi { > + #address-cells = <1>; > + #size-cells = <0>; > + > + adc@0{ > + compatible = "adi,ad4858"; > + reg = <0>; > + spi-max-frequency = <10000000>; > + vcc-supply = <&vcc>; > + vdd-supply = <&vdd>; > + vddh-supply = <&vddh>; > + vio-supply = <&vio>; > + pwms = <&pwm_gen 0 0>; > + io-backends = <&iio_backend>; > + }; > + }; > +... > -- > 2.46.0 >
On Mon, Sep 23, 2024 at 12:17 PM Antoniu Miclaus <antoniu.miclaus@analog.com> wrote: > > Add devicetree bindings for ad458x DAS family. > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com> > --- > .../bindings/iio/adc/adi,ad485x.yaml | 82 +++++++++++++++++++ > 1 file changed, 82 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > new file mode 100644 > index 000000000000..5f5bdfa9522b > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > @@ -0,0 +1,82 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright 2022 Analog Devices Inc. > +%YAML 1.2 > +--- I think we could make the bindings a bit more complete (even if the driver doesn't use everything yet). Some suggestions below. > +$id: http://devicetree.org/schemas/iio/adc/adi,ad485x.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD485X DAS family device driver > + > +maintainers: > + - Sergiu Cuciurean <sergiu.cuciurean@analog.com> > + - Dragos Bogdan <dragos.bogdan@analog.com> > + - Antoniu Miclaus <antoniu.miclaus@analog.com> > + > +description: | > + Analog Devices AD485X DAS family > + > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad4858.pdf Links for other parts? (I only looked at this datasheet, so some of my comments below might only apply to this part and not the others.) Since this is a SPI peripheral, we should add... $ref: /schemas/spi/spi-peripheral-props.yaml# > + > +properties: > + compatible: > + enum: > + - adi,ad4858 > + - adi,ad4857 > + - adi,ad4856 > + - adi,ad4855 > + - adi,ad4854 > + - adi,ad4853 > + - adi,ad4852 > + - adi,ad4851 > + - adi,ad4858i > + > + reg: > + maxItems: 1 > + > + vcc-supply: true Do we also need vee-supply (it can be a negative voltage or 0V)? Or is vcc-supply the voltage between V_CC and V_EE? > + > + vdd-supply: true > + > + vddh-supply: true Datasheet says V_DDL can be the same or separate supply as V_DDH, so should probably also have vddl-supply: true. > + > + vio-supply: true What about reference supplies (REFIO and REFBUF)? > + > + pwms: > + maxItems: 1 I suppose this is connected to the CNV pin? Probably worth adding a description to say that since it isn't so obvious. > + > + io-backends: > + maxItems: 1 For PD pin (power down): pd-gpios: maxItems: 1 > + > + spi-max-frequency: > + maximum: 100000000 Datasheet says that minimum CSCK Period is 40 ns, so that would be 25000000 Hz max frequency. > + > +required: > + - compatible > + - reg > + - vcc-supply > + - vdd-supply > + - vddh-supply Datasheet says to tie V_DDH to GND to disable LDO, so it sounds like vddh-supply should be optional, not required. > + - vio-supply > + - pwms > + > +unevaluatedProperties: false > + > +examples: > + - | > + spi { > + #address-cells = <1>; > + #size-cells = <0>; > + > + adc@0{ > + compatible = "adi,ad4858"; > + reg = <0>; > + spi-max-frequency = <10000000>; > + vcc-supply = <&vcc>; > + vdd-supply = <&vdd>; > + vddh-supply = <&vddh>; > + vio-supply = <&vio>; > + pwms = <&pwm_gen 0 0>; > + io-backends = <&iio_backend>; > + }; > + }; > +... > -- > 2.46.0 >
On Mon, Sep 23, 2024 at 01:10:22PM +0300, Antoniu Miclaus wrote: > Add devicetree bindings for ad458x DAS family. > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com> > --- > .../bindings/iio/adc/adi,ad485x.yaml | 82 +++++++++++++++++++ > 1 file changed, 82 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > new file mode 100644 > index 000000000000..5f5bdfa9522b > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad485x.yaml > @@ -0,0 +1,82 @@ > +# 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/adi,ad485x.yaml# The filename should match one of the compatibles. > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD485X DAS family device driver > + > +maintainers: > + - Sergiu Cuciurean <sergiu.cuciurean@analog.com> > + - Dragos Bogdan <dragos.bogdan@analog.com> > + - Antoniu Miclaus <antoniu.miclaus@analog.com> > + > +description: | > + Analog Devices AD485X DAS family > + > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad4858.pdf > + > +properties: > + compatible: > + enum: > + - adi,ad4858 > + - adi,ad4857 > + - adi,ad4856 > + - adi,ad4855 > + - adi,ad4854 > + - adi,ad4853 > + - adi,ad4852 > + - adi,ad4851 > + - adi,ad4858i I take it that all of these devices have some differences between them? Everything else here seems pretty okay.
© 2016 - 2024 Red Hat, Inc.