Message ID | 20240822-eblanc-ad4630_v1-v1-1-5c68f3327fdd@baylibre.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | iio: adc: ad4030: new driver for AD4030 and similar ADCs | expand |
On Thu, Aug 22, 2024 at 02:45:17PM +0200, Esteban Blanc wrote: > This adds a binding specification for the Analog Devices Inc. AD4030, > AD4630 and AD4632 families of ADCs. > > - ad4030-24 is a 1 channel SAR ADC with 24 bits of precision and a > sampling rate of 2M samples per second > - ad4630-16 is a 2 channels SAR ADC with 16 bits of precision and a > sampling rate of 2M samples per second > - ad4630-24 is a 2 channels SAR ADC with 24 bits of precision and a > sampling rate of 2M samples per second > - ad4632-16 is a 2 channels SAR ADC with 16 bits of precision and a > sampling rate of 500K samples per second > - ad4632-24 is a 2 channels SAR ADC with 24 bits of precision and a > sampling rate of 500K samples per second > > Signed-off-by: Esteban Blanc <eblanc@baylibre.com> > --- > .../devicetree/bindings/iio/adc/adi,ad4030.yaml | 113 +++++++++++++++++++++ > MAINTAINERS | 8 ++ > 2 files changed, 121 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml > new file mode 100644 > index 000000000000..7957c0c0ac7a > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml > @@ -0,0 +1,113 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright 2024 Analog Devices Inc. > +# Copyright 2024 BayLibre, SAS. > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/adc/adi,ad4030.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD4030 and AD4630 ADC family device driver > + > +maintainers: > + - Nuno Sa <nuno.sa@analog.com> > + - Michael Hennerich <michael.hennerich@analog.com> This doesn't match the MAINTAINERS file entry below FYI. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Thanks, Conor.
On 22/08/2024 14:45, Esteban Blanc wrote: > This adds a binding specification for the Analog Devices Inc. AD4030, > AD4630 and AD4632 families of ADCs. > > - ad4030-24 is a 1 channel SAR ADC with 24 bits of precision and a > sampling rate of 2M samples per second > - ad4630-16 is a 2 channels SAR ADC with 16 bits of precision and a > sampling rate of 2M samples per second > - ad4630-24 is a 2 channels SAR ADC with 24 bits of precision and a > sampling rate of 2M samples per second > - ad4632-16 is a 2 channels SAR ADC with 16 bits of precision and a > sampling rate of 500K samples per second > - ad4632-24 is a 2 channels SAR ADC with 24 bits of precision and a > sampling rate of 500K samples per second > > Signed-off-by: Esteban Blanc <eblanc@baylibre.com> > --- > .../devicetree/bindings/iio/adc/adi,ad4030.yaml | 113 +++++++++++++++++++++ > MAINTAINERS | 8 ++ > 2 files changed, 121 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml > new file mode 100644 > index 000000000000..7957c0c0ac7a > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml > @@ -0,0 +1,113 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright 2024 Analog Devices Inc. > +# Copyright 2024 BayLibre, SAS. > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/adc/adi,ad4030.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD4030 and AD4630 ADC family device driver "device driver"? Bindings are for hardware. Explain the hardware, not driver. > + > +maintainers: > + - Nuno Sa <nuno.sa@analog.com> > + - Michael Hennerich <michael.hennerich@analog.com> > + > +description: | > + Analog Devices AD4030 single channel and AD4630 dual channel precision SAR ADC > + family Does not look like wrapped according to Linux coding style. Read the coding style (not checkpatch). > + > + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4030-24-4032-24.pdf > + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-24_ad4632-24.pdf > + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-16-4632-16.pdf > + > +properties: > + Drop blank line > + compatible: > + enum: > + - adi,ad4030-24 > + - adi,ad4630-16 > + - adi,ad4630-24 > + - adi,ad4632-16 > + - adi,ad4632-24 > + > + reg: > + maxItems: 1 > + > + spi-max-frequency: > + maximum: 100000000 > + > + spi-rx-bus-width: > + enum: [1, 2, 4] > + > + vdd-5v-supply: true > + vdd-1v8-supply: true > + vio-supply: true > + > + ref-supply: > + description: > + Optional External unbuffered reference. Used when refin-supply is not > + connected. > + > + refin-supply: > + description: > + Internal buffered Reference. Used when ref-supply is not connected. > + > + cnv-gpio: Nope, there is no "gpio" property. It IS ALWAYS gpios. Look at other examples. > + description: > + The Convert Input (CNV). It initiates the sampling conversions. > + maxItems: 1 > + > + reset-gpio: Same problem. > + description: > + Reset Input (Active Low). Used for asynchronous device reset. > + maxItems: 1 > + > + interrupts: > + description: > + The BUSY pin is used to signal that the conversions results are available > + to be transferred when in SPI Clocking Mode. This nodes should be connected > + to an interrupt that is triggered when the BUSY line goes low. > + maxItems: 1 > + > Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml new file mode 100644 index 000000000000..7957c0c0ac7a --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml @@ -0,0 +1,113 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright 2024 Analog Devices Inc. +# Copyright 2024 BayLibre, SAS. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/adi,ad4030.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices AD4030 and AD4630 ADC family device driver + +maintainers: + - Nuno Sa <nuno.sa@analog.com> + - Michael Hennerich <michael.hennerich@analog.com> + +description: | + Analog Devices AD4030 single channel and AD4630 dual channel precision SAR ADC + family + + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4030-24-4032-24.pdf + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-24_ad4632-24.pdf + * https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-16-4632-16.pdf + +properties: + + compatible: + enum: + - adi,ad4030-24 + - adi,ad4630-16 + - adi,ad4630-24 + - adi,ad4632-16 + - adi,ad4632-24 + + reg: + maxItems: 1 + + spi-max-frequency: + maximum: 100000000 + + spi-rx-bus-width: + enum: [1, 2, 4] + + vdd-5v-supply: true + vdd-1v8-supply: true + vio-supply: true + + ref-supply: + description: + Optional External unbuffered reference. Used when refin-supply is not + connected. + + refin-supply: + description: + Internal buffered Reference. Used when ref-supply is not connected. + + cnv-gpio: + description: + The Convert Input (CNV). It initiates the sampling conversions. + maxItems: 1 + + reset-gpio: + description: + Reset Input (Active Low). Used for asynchronous device reset. + maxItems: 1 + + interrupts: + description: + The BUSY pin is used to signal that the conversions results are available + to be transferred when in SPI Clocking Mode. This nodes should be connected + to an interrupt that is triggered when the BUSY line goes low. + maxItems: 1 + + interrupt-names: + const: busy + +required: + - compatible + - reg + - vdd-5v-supply + - vdd-1v8-supply + - vio-supply + - cnv-gpio + +oneOf: + - required: + - ref-supply + - required: + - refin-supply + +allOf: + - $ref: /schemas/spi/spi-peripheral-props.yaml# + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + spi { + #address-cells = <1>; + #size-cells = <0>; + + adc@0 { + compatible = "adi,ad4030-24"; + reg = <0>; + spi-max-frequency = <80000000>; + vdd-5v-supply = <&supply_5V>; + vdd-1v8-supply = <&supply_1_8V>; + vio-supply = <&supply_1_8V>; + ref-supply = <&supply_5V>; + cnv-gpio = <&gpio0 0 GPIO_ACTIVE_HIGH>; + }; + }; + diff --git a/MAINTAINERS b/MAINTAINERS index 417c6751c0dc..f17c42bea19c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -413,6 +413,14 @@ S: Maintained W: https://parisc.wiki.kernel.org/index.php/AD1889 F: sound/pci/ad1889.* +AD4030 ADC DRIVER (AD4030-24/AD4630-16/AD4630-24/AD4632-16/AD4632-24) +M: Michael Hennerich <michael.hennerich@analog.com> +M: Nuno Sá <nuno.sa@analog.com> +R: Esteban Blanc <eblanc@baylibre.com> +S: Supported +W: https://ez.analog.com/linux-software-drivers +F: Documentation/devicetree/bindings/iio/adc/adi,ad4030.yaml + AD5110 ANALOG DEVICES DIGITAL POTENTIOMETERS DRIVER M: Mugilraj Dhavachelvan <dmugil2000@gmail.com> L: linux-iio@vger.kernel.org
This adds a binding specification for the Analog Devices Inc. AD4030, AD4630 and AD4632 families of ADCs. - ad4030-24 is a 1 channel SAR ADC with 24 bits of precision and a sampling rate of 2M samples per second - ad4630-16 is a 2 channels SAR ADC with 16 bits of precision and a sampling rate of 2M samples per second - ad4630-24 is a 2 channels SAR ADC with 24 bits of precision and a sampling rate of 2M samples per second - ad4632-16 is a 2 channels SAR ADC with 16 bits of precision and a sampling rate of 500K samples per second - ad4632-24 is a 2 channels SAR ADC with 24 bits of precision and a sampling rate of 500K samples per second Signed-off-by: Esteban Blanc <eblanc@baylibre.com> --- .../devicetree/bindings/iio/adc/adi,ad4030.yaml | 113 +++++++++++++++++++++ MAINTAINERS | 8 ++ 2 files changed, 121 insertions(+)