Message ID | 20240510064053.278257-2-Mariel.Tinaco@analog.com |
---|---|
State | Changes Requested |
Headers | show |
Series | add AD8460 DAC driver | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success | |
robh/patch-applied | success | |
robh/dt-meta-schema | fail | build log |
On Fri, 10 May 2024 14:40:52 +0800, Mariel Tinaco wrote: > This adds the bindings documentation for the 14-bit > High Voltage, High Current, Waveform Generator > Digital-to-Analog converter. > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > --- > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > MAINTAINERS | 7 ++ > 2 files changed, 74 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dts:22.17-27: Warning (reg_format): /example-0/spi/dac@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1) Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (pci_device_reg): Failed prerequisite 'reg_format' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (pci_device_bus_num): Failed prerequisite 'reg_format' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (simple_bus_reg): Failed prerequisite 'reg_format' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (i2c_bus_reg): Failed prerequisite 'reg_format' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dts:19.13-29.11: Warning (spi_bus_bridge): /example-0/spi: incorrect #address-cells for SPI bus Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dts:19.13-29.11: Warning (spi_bus_bridge): /example-0/spi: incorrect #size-cells for SPI bus Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (spi_bus_reg): Failed prerequisite 'reg_format' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (spi_bus_reg): Failed prerequisite 'spi_bus_bridge' Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dts:20.19-28.15: Warning (avoid_default_addr_size): /example-0/spi/dac@0: Relying on default #address-cells value Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dts:20.19-28.15: Warning (avoid_default_addr_size): /example-0/spi/dac@0: Relying on default #size-cells value Documentation/devicetree/bindings/iio/dac/adi,ad8460.example.dtb: Warning (unique_unit_address_if_enabled): Failed prerequisite 'avoid_default_addr_size' doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240510064053.278257-2-Mariel.Tinaco@analog.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Fri, May 10, 2024 at 1:42 AM Mariel Tinaco <Mariel.Tinaco@analog.com> wrote: > > This adds the bindings documentation for the 14-bit > High Voltage, High Current, Waveform Generator > Digital-to-Analog converter. > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > --- > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > MAINTAINERS | 7 ++ > 2 files changed, 74 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > new file mode 100644 > index 000000000..924f76209 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > @@ -0,0 +1,67 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +# Copyright 2024 Analog Devices Inc. > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/dac/adi,ad8460.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD8460 DAC > + > +maintainers: > + - Mariel Tinaco <mariel.tinaco@analog.com> > + > +description: | > + Analog Devices AD8460 110 V High Voltage, 1 A High Current, > + Arbitrary Waveform Generator with Integrated 14-Bit High Speed DAC > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad8460.pdf > + > +properties: > + compatible: > + enum: > + - adi,ad8460 > + > + reg: > + maxItems: 1 > + > + spi-max-frequency: > + maximum: 20000000 > + > + vref-supply: It would be nice to make the property name match the pin name since there is more than one reference voltage input. refio-1p2v-supply: > + description: Drive voltage in the range of 1.2V maximum to as low as > + low as 0.12V through the REF_IO pin to adjust full scale output span I don't seen anything in the datasheet named REF_IO. Is this a typo and it should be REFIO_1P2V? > + > + clocks: > + description: The clock for the DAC. This is the sync clock > + > + adi,rset-ohms: > + description: Specify value of external resistor connected to FS_ADJ pin > + to establish internal HVDAC's reference current I_REF > + minimum: 2000 > + maximum: 20000 > + I see lots more pins on the datasheet, many of which should be trivial to add bindings for (we prefer to have the bindings as complete as possible even if the driver doesn't implement everything). Potential candidates: sdn-reset-gpios: (active high) reset-gpios: (active low) sdn-io-gpios: (active high) hvcc-supply: hvee-supply: vcc-5v-supply: vref-5v-supply: dvdd-3p3v-supply: avdd-3p3v-supply: It also looks like there is a parallel interface for data, so I would expect to see an io-backends property that links to the PHY used for handling that. > +required: > + - compatible > + - reg > + - clocks > + > +allOf: > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > + > +additionalProperties: false > + > +examples: > + - | > + > + spi { > + dac@0 { > + compatible = "adi,ad8460"; > + reg = <0>; > + spi-max-frequency = <8000000>; > + adi,rset-ohms = <2000>; > + > + vref-supply = <&vrefio>; > + clocks = <&sync_ext_clk>; > + }; > + }; > + > +... > diff --git a/MAINTAINERS b/MAINTAINERS > index 758c202ec..dae93df2a 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -1234,6 +1234,13 @@ W: https://ez.analog.com/linux-software-drivers > F: Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml > F: drivers/iio/adc/ad7780.c > > +ANALOG DEVICES INC AD8460 DRIVER > +M: Mariel Tinaco <Mariel.Tinaco@analog.com> > +L: linux-iio@vger.kernel.org > +S: Supported > +W: https://ez.analog.com/linux-software-drivers > +F: Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > + > ANALOG DEVICES INC AD9739a DRIVER > M: Nuno Sa <nuno.sa@analog.com> > M: Dragos Bogdan <dragos.bogdan@analog.com> > -- > 2.34.1 > >
On Fri, 10 May 2024 12:28:19 -0500 David Lechner <dlechner@baylibre.com> wrote: > On Fri, May 10, 2024 at 1:42 AM Mariel Tinaco <Mariel.Tinaco@analog.com> wrote: > > > > This adds the bindings documentation for the 14-bit > > High Voltage, High Current, Waveform Generator > > Digital-to-Analog converter. > > > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > > --- > > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > > MAINTAINERS | 7 ++ > > 2 files changed, 74 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > new file mode 100644 > > index 000000000..924f76209 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > @@ -0,0 +1,67 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +# Copyright 2024 Analog Devices Inc. > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/iio/dac/adi,ad8460.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Analog Devices AD8460 DAC > > + > > +maintainers: > > + - Mariel Tinaco <mariel.tinaco@analog.com> > > + > > +description: | > > + Analog Devices AD8460 110 V High Voltage, 1 A High Current, > > + Arbitrary Waveform Generator with Integrated 14-Bit High Speed DAC > > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad8460.pdf > > + > > +properties: > > + compatible: > > + enum: > > + - adi,ad8460 > > + > > + reg: > > + maxItems: 1 > > + > > + spi-max-frequency: > > + maximum: 20000000 > > + > > + vref-supply: > > It would be nice to make the property name match the pin name since > there is more than one reference voltage input. > > refio-1p2v-supply: > > > + description: Drive voltage in the range of 1.2V maximum to as low as > > + low as 0.12V through the REF_IO pin to adjust full scale output span > > I don't seen anything in the datasheet named REF_IO. Is this a typo > and it should be REFIO_1P2V? > > > + > > + clocks: > > + description: The clock for the DAC. This is the sync clock > > + > > + adi,rset-ohms: > > + description: Specify value of external resistor connected to FS_ADJ pin > > + to establish internal HVDAC's reference current I_REF > > + minimum: 2000 > > + maximum: 20000 > > + > > I see lots more pins on the datasheet, many of which should be trivial > to add bindings for (we prefer to have the bindings as complete as > possible even if the driver doesn't implement everything). Potential > candidates: > > sdn-reset-gpios: (active high) > reset-gpios: (active low) > sdn-io-gpios: (active high) > > hvcc-supply: > hvee-supply: > vcc-5v-supply: > vref-5v-supply: > dvdd-3p3v-supply: > avdd-3p3v-supply: > > It also looks like there is a parallel interface for data, so I would > expect to see an io-backends property that links to the PHY used for > handling that. > Ultimately yes, but the parallel interface might require some decisions on binding that are non obvious until it's actually implemented. So maybe don't need that bit from the start. The rest I agree should be here. > > > +required: > > + - compatible > > + - reg > > + - clocks > > + > > +allOf: > > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + > > + spi { > > + dac@0 { > > + compatible = "adi,ad8460"; > > + reg = <0>; > > + spi-max-frequency = <8000000>; > > + adi,rset-ohms = <2000>; > > + > > + vref-supply = <&vrefio>; > > + clocks = <&sync_ext_clk>; > > + }; > > + }; > > + > > +... > > diff --git a/MAINTAINERS b/MAINTAINERS > > index 758c202ec..dae93df2a 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -1234,6 +1234,13 @@ W: https://ez.analog.com/linux-software-drivers > > F: Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml > > F: drivers/iio/adc/ad7780.c > > > > +ANALOG DEVICES INC AD8460 DRIVER > > +M: Mariel Tinaco <Mariel.Tinaco@analog.com> > > +L: linux-iio@vger.kernel.org > > +S: Supported > > +W: https://ez.analog.com/linux-software-drivers > > +F: Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > + > > ANALOG DEVICES INC AD9739a DRIVER > > M: Nuno Sa <nuno.sa@analog.com> > > M: Dragos Bogdan <dragos.bogdan@analog.com> > > -- > > 2.34.1 > > > >
On Sat, May 11, 2024 at 11:25 AM Jonathan Cameron <jic23@kernel.org> wrote: > > On Fri, 10 May 2024 12:28:19 -0500 > David Lechner <dlechner@baylibre.com> wrote: > > > On Fri, May 10, 2024 at 1:42 AM Mariel Tinaco <Mariel.Tinaco@analog.com> wrote: > > > > > > This adds the bindings documentation for the 14-bit > > > High Voltage, High Current, Waveform Generator > > > Digital-to-Analog converter. > > > > > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > > > --- > > > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > > > MAINTAINERS | 7 ++ > > > 2 files changed, 74 insertions(+) > > > create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > > > diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > new file mode 100644 > > > index 000000000..924f76209 > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > @@ -0,0 +1,67 @@ > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > > +# Copyright 2024 Analog Devices Inc. > > > +%YAML 1.2 > > > +--- > > > +$id: http://devicetree.org/schemas/iio/dac/adi,ad8460.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: Analog Devices AD8460 DAC > > > + > > > +maintainers: > > > + - Mariel Tinaco <mariel.tinaco@analog.com> > > > + > > > +description: | > > > + Analog Devices AD8460 110 V High Voltage, 1 A High Current, > > > + Arbitrary Waveform Generator with Integrated 14-Bit High Speed DAC > > > + https://www.analog.com/media/en/technical-documentation/data-sheets/ad8460.pdf > > > + > > > +properties: > > > + compatible: > > > + enum: > > > + - adi,ad8460 > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + spi-max-frequency: > > > + maximum: 20000000 > > > + > > > + vref-supply: > > > > It would be nice to make the property name match the pin name since > > there is more than one reference voltage input. > > > > refio-1p2v-supply: > > > > > + description: Drive voltage in the range of 1.2V maximum to as low as > > > + low as 0.12V through the REF_IO pin to adjust full scale output span > > > > I don't seen anything in the datasheet named REF_IO. Is this a typo > > and it should be REFIO_1P2V? > > > > > + > > > + clocks: > > > + description: The clock for the DAC. This is the sync clock > > > + > > > + adi,rset-ohms: > > > + description: Specify value of external resistor connected to FS_ADJ pin > > > + to establish internal HVDAC's reference current I_REF > > > + minimum: 2000 > > > + maximum: 20000 > > > + > > > > I see lots more pins on the datasheet, many of which should be trivial > > to add bindings for (we prefer to have the bindings as complete as > > possible even if the driver doesn't implement everything). Potential > > candidates: > > > > sdn-reset-gpios: (active high) > > reset-gpios: (active low) > > sdn-io-gpios: (active high) > > > > hvcc-supply: > > hvee-supply: > > vcc-5v-supply: > > vref-5v-supply: > > dvdd-3p3v-supply: > > avdd-3p3v-supply: > > > > It also looks like there is a parallel interface for data, so I would > > expect to see an io-backends property that links to the PHY used for > > handling that. > > > Ultimately yes, but the parallel interface might require some decisions on > binding that are non obvious until it's actually implemented. So maybe > don't need that bit from the start. The rest I agree should be here. > > Since the driver patch uses a DMA channel that isn't documented here, I am assuming that the parallel interface is being used so we do need to consider it now. :-)
On Sat, 2024-05-11 at 13:47 -0500, David Lechner wrote: > On Sat, May 11, 2024 at 11:25 AM Jonathan Cameron <jic23@kernel.org> wrote: > > > > On Fri, 10 May 2024 12:28:19 -0500 > > David Lechner <dlechner@baylibre.com> wrote: > > > > > On Fri, May 10, 2024 at 1:42 AM Mariel Tinaco <Mariel.Tinaco@analog.com> > > > wrote: > > > > > > > > This adds the bindings documentation for the 14-bit > > > > High Voltage, High Current, Waveform Generator > > > > Digital-to-Analog converter. > > > > > > > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > > > > --- > > > > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > > > > MAINTAINERS | 7 ++ > > > > 2 files changed, 74 insertions(+) > > > > create mode 100644 > > > > Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > > > > > diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > new file mode 100644 > > > > index 000000000..924f76209 > > > > --- /dev/null > > > > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > @@ -0,0 +1,67 @@ > > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > > > +# Copyright 2024 Analog Devices Inc. > > > > +%YAML 1.2 > > > > +--- > > > > +$id: http://devicetree.org/schemas/iio/dac/adi,ad8460.yaml# > > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > > + > > > > +title: Analog Devices AD8460 DAC > > > > + > > > > +maintainers: > > > > + - Mariel Tinaco <mariel.tinaco@analog.com> > > > > + > > > > +description: | > > > > + Analog Devices AD8460 110 V High Voltage, 1 A High Current, > > > > + Arbitrary Waveform Generator with Integrated 14-Bit High Speed DAC > > > > + > > > > https://www.analog.com/media/en/technical-documentation/data-sheets/ad8460.pdf > > > > + > > > > +properties: > > > > + compatible: > > > > + enum: > > > > + - adi,ad8460 > > > > + > > > > + reg: > > > > + maxItems: 1 > > > > + > > > > + spi-max-frequency: > > > > + maximum: 20000000 > > > > + > > > > + vref-supply: > > > > > > It would be nice to make the property name match the pin name since > > > there is more than one reference voltage input. > > > > > > refio-1p2v-supply: > > > > > > > + description: Drive voltage in the range of 1.2V maximum to as low > > > > as > > > > + low as 0.12V through the REF_IO pin to adjust full scale output > > > > span > > > > > > I don't seen anything in the datasheet named REF_IO. Is this a typo > > > and it should be REFIO_1P2V? > > > > > > > + > > > > + clocks: > > > > + description: The clock for the DAC. This is the sync clock > > > > + > > > > + adi,rset-ohms: > > > > + description: Specify value of external resistor connected to FS_ADJ > > > > pin > > > > + to establish internal HVDAC's reference current I_REF > > > > + minimum: 2000 > > > > + maximum: 20000 > > > > + > > > > > > I see lots more pins on the datasheet, many of which should be trivial > > > to add bindings for (we prefer to have the bindings as complete as > > > possible even if the driver doesn't implement everything). Potential > > > candidates: > > > > > > sdn-reset-gpios: (active high) > > > reset-gpios: (active low) > > > sdn-io-gpios: (active high) > > > > > > hvcc-supply: > > > hvee-supply: > > > vcc-5v-supply: > > > vref-5v-supply: > > > dvdd-3p3v-supply: > > > avdd-3p3v-supply: > > > > > > It also looks like there is a parallel interface for data, so I would > > > expect to see an io-backends property that links to the PHY used for > > > handling that. > > > > > Ultimately yes, but the parallel interface might require some decisions on > > binding that are non obvious until it's actually implemented. So maybe > > don't need that bit from the start. The rest I agree should be here. > > > > > > Since the driver patch uses a DMA channel that isn't documented here, > I am assuming that the parallel interface is being used so we do need > to consider it now. :-) AFAIU, the way this is designed, the parallel interface is directly connected to the DMA IP controller. So, at this point there's really no use for the DAC backend. We may have different designs in the future but no use case for now. - Nuno Sá
> -----Original Message----- > From: Jonathan Cameron <jic23@kernel.org> > Sent: Sunday, May 12, 2024 12:25 AM > To: David Lechner <dlechner@baylibre.com> > Cc: Tinaco, Mariel <Mariel.Tinaco@analog.com>; linux-iio@vger.kernel.org; > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; Lars-Peter Clausen > <lars@metafoo.de>; Rob Herring <robh@kernel.org>; Krzysztof Kozlowski > <krzk+dt@kernel.org>; Conor Dooley <conor+dt@kernel.org>; Liam Girdwood > <lgirdwood@gmail.com>; Mark Brown <broonie@kernel.org>; Hennerich, > Michael <Michael.Hennerich@analog.com>; Marcelo Schmitt > <marcelo.schmitt1@gmail.com>; Dimitri Fedrau <dima.fedrau@gmail.com>; > Guenter Roeck <linux@roeck-us.net> > Subject: Re: [PATCH 1/2] dt-bindings: iio: dac: add docs for ad8460 > > [External] > > On Fri, 10 May 2024 12:28:19 -0500 > David Lechner <dlechner@baylibre.com> wrote: > > > On Fri, May 10, 2024 at 1:42 AM Mariel Tinaco <Mariel.Tinaco@analog.com> > wrote: > > > > > > This adds the bindings documentation for the 14-bit High Voltage, > > > High Current, Waveform Generator Digital-to-Analog converter. > > > > > > Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> > > > --- > > > .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ > > > MAINTAINERS | 7 ++ > > > 2 files changed, 74 insertions(+) > > > create mode 100644 > > > Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > > > > diff --git > > > a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > new file mode 100644 > > > index 000000000..924f76209 > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > @@ -0,0 +1,67 @@ > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) # Copyright > > > +2024 Analog Devices Inc. > > > +%YAML 1.2 > > > +--- > > > +$id: > > > +https://urldefense.com/v3/__http://devicetree.org/schemas/iio/dac/a > > > > +di,ad8460.yaml*__;Iw!!A3Ni8CS0y2Y!6gGs7KbAH3BGqwLcGM0Yihd9U4zdncT > ai > > > +eQzg6e_e5cN4fl2NnTYjro4r3D2bqynKuOHDTnLw-cBN74x$ > > > +$schema: > > > +https://urldefense.com/v3/__http://devicetree.org/meta-schemas/core > > > > +.yaml*__;Iw!!A3Ni8CS0y2Y!6gGs7KbAH3BGqwLcGM0Yihd9U4zdncTaieQzg6e_ > e5 > > > +cN4fl2NnTYjro4r3D2bqynKuOHDTnLw11zc2OH$ > > > + > > > +title: Analog Devices AD8460 DAC > > > + > > > +maintainers: > > > + - Mariel Tinaco <mariel.tinaco@analog.com> > > > + > > > +description: | > > > + Analog Devices AD8460 110 V High Voltage, 1 A High Current, > > > + Arbitrary Waveform Generator with Integrated 14-Bit High Speed > > > +DAC > > > + > > > +https://www.analog.com/media/en/technical-documentation/data-sheets > > > +/ad8460.pdf > > > + > > > +properties: > > > + compatible: > > > + enum: > > > + - adi,ad8460 > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + spi-max-frequency: > > > + maximum: 20000000 > > > + > > > + vref-supply: > > > > It would be nice to make the property name match the pin name since > > there is more than one reference voltage input. > > > > refio-1p2v-supply: > > > > > + description: Drive voltage in the range of 1.2V maximum to as low as > > > + low as 0.12V through the REF_IO pin to adjust full scale > > > + output span > > > > I don't seen anything in the datasheet named REF_IO. Is this a typo > > and it should be REFIO_1P2V? > > > > > + > > > + clocks: > > > + description: The clock for the DAC. This is the sync clock > > > + > > > + adi,rset-ohms: > > > + description: Specify value of external resistor connected to FS_ADJ pin > > > + to establish internal HVDAC's reference current I_REF > > > + minimum: 2000 > > > + maximum: 20000 > > > + > > > > I see lots more pins on the datasheet, many of which should be trivial > > to add bindings for (we prefer to have the bindings as complete as > > possible even if the driver doesn't implement everything). Potential > > candidates: > > > > sdn-reset-gpios: (active high) > > reset-gpios: (active low) > > sdn-io-gpios: (active high) > > > > hvcc-supply: > > hvee-supply: > > vcc-5v-supply: > > vref-5v-supply: > > dvdd-3p3v-supply: > > avdd-3p3v-supply: > > > > It also looks like there is a parallel interface for data, so I would > > expect to see an io-backends property that links to the PHY used for > > handling that. > > > Ultimately yes, but the parallel interface might require some decisions on binding > that are non obvious until it's actually implemented. So maybe don't need that > bit from the start. The rest I agree should be here. > Added these parameters to the device tree bindings. Not necessarily to the driver > > > > > +required: > > > + - compatible > > > + - reg > > > + - clocks > > > + > > > +allOf: > > > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > > > + > > > +additionalProperties: false > > > + > > > +examples: > > > + - | > > > + > > > + spi { > > > + dac@0 { > > > + compatible = "adi,ad8460"; > > > + reg = <0>; > > > + spi-max-frequency = <8000000>; > > > + adi,rset-ohms = <2000>; > > > + > > > + vref-supply = <&vrefio>; > > > + clocks = <&sync_ext_clk>; > > > + }; > > > + }; > > > + > > > +... > > > diff --git a/MAINTAINERS b/MAINTAINERS > > > index 758c202ec..dae93df2a 100644 > > > --- a/MAINTAINERS > > > +++ b/MAINTAINERS > > > @@ -1234,6 +1234,13 @@ W: https://ez.analog.com/linux-software- > drivers > > > F: Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml > > > F: drivers/iio/adc/ad7780.c > > > > > > +ANALOG DEVICES INC AD8460 DRIVER > > > +M: Mariel Tinaco <Mariel.Tinaco@analog.com> > > > +L: linux-iio@vger.kernel.org > > > +S: Supported > > > +W: https://ez.analog.com/linux-software-drivers > > > +F: Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml > > > + > > > ANALOG DEVICES INC AD9739a DRIVER > > > M: Nuno Sa <nuno.sa@analog.com> > > > M: Dragos Bogdan <dragos.bogdan@analog.com> > > > -- > > > 2.34.1 > > > > > >
diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml new file mode 100644 index 000000000..924f76209 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml @@ -0,0 +1,67 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright 2024 Analog Devices Inc. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/dac/adi,ad8460.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices AD8460 DAC + +maintainers: + - Mariel Tinaco <mariel.tinaco@analog.com> + +description: | + Analog Devices AD8460 110 V High Voltage, 1 A High Current, + Arbitrary Waveform Generator with Integrated 14-Bit High Speed DAC + https://www.analog.com/media/en/technical-documentation/data-sheets/ad8460.pdf + +properties: + compatible: + enum: + - adi,ad8460 + + reg: + maxItems: 1 + + spi-max-frequency: + maximum: 20000000 + + vref-supply: + description: Drive voltage in the range of 1.2V maximum to as low as + low as 0.12V through the REF_IO pin to adjust full scale output span + + clocks: + description: The clock for the DAC. This is the sync clock + + adi,rset-ohms: + description: Specify value of external resistor connected to FS_ADJ pin + to establish internal HVDAC's reference current I_REF + minimum: 2000 + maximum: 20000 + +required: + - compatible + - reg + - clocks + +allOf: + - $ref: /schemas/spi/spi-peripheral-props.yaml# + +additionalProperties: false + +examples: + - | + + spi { + dac@0 { + compatible = "adi,ad8460"; + reg = <0>; + spi-max-frequency = <8000000>; + adi,rset-ohms = <2000>; + + vref-supply = <&vrefio>; + clocks = <&sync_ext_clk>; + }; + }; + +... diff --git a/MAINTAINERS b/MAINTAINERS index 758c202ec..dae93df2a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1234,6 +1234,13 @@ W: https://ez.analog.com/linux-software-drivers F: Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml F: drivers/iio/adc/ad7780.c +ANALOG DEVICES INC AD8460 DRIVER +M: Mariel Tinaco <Mariel.Tinaco@analog.com> +L: linux-iio@vger.kernel.org +S: Supported +W: https://ez.analog.com/linux-software-drivers +F: Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml + ANALOG DEVICES INC AD9739a DRIVER M: Nuno Sa <nuno.sa@analog.com> M: Dragos Bogdan <dragos.bogdan@analog.com>
This adds the bindings documentation for the 14-bit High Voltage, High Current, Waveform Generator Digital-to-Analog converter. Signed-off-by: Mariel Tinaco <Mariel.Tinaco@analog.com> --- .../bindings/iio/dac/adi,ad8460.yaml | 67 +++++++++++++++++++ MAINTAINERS | 7 ++ 2 files changed, 74 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/dac/adi,ad8460.yaml