Re: [PATCH RFC 1/3] dt-bindings: iio: adc: add AD762x/AD796x ADCs

From: Krzysztof Kozlowski
Date: Wed Jul 31 2024 - 10:12:04 EST


On 31/07/2024 15:48, Trevor Gamblin wrote:
> This adds a binding specification for the Analog Devices Inc. AD7625,
> AD7626, AD7960, and AD7961 ADCs.

Please do not use "This commit/patch/change", but imperative mood. See
longer explanation here:
https://elixir.bootlin.com/linux/v5.17.1/source/Documentation/process/submitting-patches.rst#L95

Why this is not ready, but RFC? What exactly needs to be commented here?

>
> Signed-off-by: Trevor Gamblin <tgamblin@xxxxxxxxxxxx>
> ---
> .../devicetree/bindings/iio/adc/adi,ad7625.yaml | 176 +++++++++++++++++++++
> MAINTAINERS | 9 ++
> 2 files changed, 185 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7625.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7625.yaml
> new file mode 100644
> index 000000000000..e88db0ac2534
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7625.yaml
> @@ -0,0 +1,176 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/adc/adi,ad7625.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analog Devices Fast PulSAR Analog to Digital Converters
> +
> +maintainers:
> + - Michael Hennerich <Michael.Hennerich@xxxxxxxxxx>
> + - Nuno Sá <nuno.sa@xxxxxxxxxx>
> +
> +description: |
> + A family of single channel differential analog to digital converters
> + in a LFCSP package. Note that these bindings are for the device when
> + used with the PulSAR LVDS project:
> + http://analogdevicesinc.github.io/hdl/projects/pulsar_lvds/index.html.

Eh? And what could be other case - used for what? What are the
differences? Why mentioning it?

> +
> + * https://www.analog.com/en/products/ad7625.html
> + * https://www.analog.com/en/products/ad7626.html
> + * https://www.analog.com/en/products/ad7960.html
> + * https://www.analog.com/en/products/ad7961.html
> +
> +properties:
> + compatible:
> + enum:
> + - adi,ad7625
> + - adi,ad7626
> + - adi,ad7960
> + - adi,ad7961
> +
> + vdd1-supply:
> + description: A supply that powers the analog and digital circuitry.
> +
> + vdd2-supply:
> + description: A supply that powers the analog and digital circuitry.
> +
> + vio-supply:
> + description: A supply for the inputs and outputs.
> +
> + ref-supply:
> + description:
> + Voltage regulator for the external reference voltage (REF).
> +
> + refin-supply:
> + description:
> + Voltage regulator for the reference buffer input (REFIN).
> +
> + clocks:
> + description:
> + The clock connected to the CLK pins, gated by the clk_gate PWM.
> + maxItems: 1
> +
> + pwms:
> + maxItems: 2
> +
> + pwm-names:
> + maxItems: 2
> + items:
> + - const: cnv
> + description: PWM connected to the CNV input on the ADC.
> + - const: clk_gate
> + description: PWM that gates the clock connected to the ADC's CLK input.
> +
> + io-backends:
> + description:
> + The AXI ADC IP block connected to the D+/- and DCO+/- lines of the ADC.
> + maxItems: 1
> +
> + adi,en0-always-on:
> + $ref: /schemas/types.yaml#/definitions/flag
> + description:
> + Indicates if EN0 is hard-wired to the high state. If neither this
> + nor en0-gpios are present, then EN0 is hard-wired low.
> +
> + adi,en1-always-on:
> + $ref: /schemas/types.yaml#/definitions/flag
> + description:
> + Indicates if EN1 is hard-wired to the high state. If neither this
> + nor en1-gpios are present, then EN1 is hard-wired low.
> +
> + adi,en2-always-on:
> + $ref: /schemas/types.yaml#/definitions/flag
> + description:
> + Indicates if EN2 is hard-wired to the high state. If neither this
> + nor en2-gpios are present, then EN2 is hard-wired low.
> +
> + adi,en3-always-on:
> + $ref: /schemas/types.yaml#/definitions/flag
> + description:
> + Indicates if EN3 is hard-wired to the high state. If neither this
> + nor en3-gpios are present, then EN3 is hard-wired low.
> +
> + en0-gpios:
> + description:
> + Configurable EN0 pin.
> +
> + en1-gpios:
> + description:
> + Configurable EN1 pin.
> +
> + en2-gpios:
> + description:
> + Configurable EN2 pin.
> +
> + en3-gpios:
> + description:
> + Configurable EN3 pin.
> +
> +required:
> + - compatible
> + - vdd1-supply
> + - vdd2-supply
> + - vio-supply
> + - clocks
> + - pwms
> + - pwm-names
> + - io-backends
> +
> +- if:
> + properties:

I don't think this was ever tested. Please use existing bindings or
example-schema as template.

> + compatible:
> + contains:
> + enum:
> + - adi,ad7625
> + - adi,ad7626


Best regards,
Krzysztof