| # 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@analog.com> |
| - Nuno Sá <nuno.sa@analog.com> |
| |
| description: | |
| A family of single channel differential analog to digital converters. |
| |
| * 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: true |
| vdd2-supply: true |
| vio-supply: true |
| |
| 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: |
| items: |
| - description: PWM connected to the CNV input on the ADC. |
| - description: PWM that gates the clock connected to the ADC's CLK input. |
| |
| pwm-names: |
| items: |
| - const: cnv |
| - const: clk_gate |
| |
| io-backends: |
| description: |
| The AXI ADC IP block connected to the D+/- and DCO+/- lines of the |
| ADC. An example backend can be found at |
| http://analogdevicesinc.github.io/hdl/projects/pulsar_lvds/index.html. |
| maxItems: 1 |
| |
| adi,no-dco: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: |
| Indicates the wiring of the DCO+/- lines. If true, then they are |
| grounded and the device is in self-clocked mode. If this is not |
| present, then the device is in echoed clock mode. |
| |
| 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 |
| |
| allOf: |
| - if: |
| required: |
| - ref-supply |
| then: |
| properties: |
| refin-supply: false |
| - if: |
| required: |
| - refin-supply |
| then: |
| properties: |
| ref-supply: false |
| - if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - adi,ad7625 |
| - adi,ad7626 |
| then: |
| properties: |
| en2-gpios: false |
| en3-gpios: false |
| adi,en2-always-on: false |
| adi,en3-always-on: false |
| |
| - if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - adi,ad7960 |
| - adi,ad7961 |
| then: |
| # ad796x parts must have one of the two supplies |
| oneOf: |
| - required: [ref-supply] |
| - required: [refin-supply] |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/gpio/gpio.h> |
| adc { |
| compatible = "adi,ad7625"; |
| vdd1-supply = <&supply_5V>; |
| vdd2-supply = <&supply_2_5V>; |
| vio-supply = <&supply_2_5V>; |
| io-backends = <&axi_adc>; |
| clocks = <&ref_clk>; |
| pwms = <&axi_pwm_gen 0 0>, <&axi_pwm_gen 1 0>; |
| pwm-names = "cnv", "clk_gate"; |
| en0-gpios = <&gpio0 86 GPIO_ACTIVE_HIGH>; |
| en1-gpios = <&gpio0 87 GPIO_ACTIVE_HIGH>; |
| }; |