1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/iio/adc/adi,ad7625.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Analog Devices Fast PulSAR Analog to Digital Converters 8 9maintainers: 10 - Michael Hennerich <Michael.Hennerich@analog.com> 11 - Nuno Sá <nuno.sa@analog.com> 12 13description: | 14 A family of single channel differential analog to digital converters. 15 16 * https://www.analog.com/en/products/ad7625.html 17 * https://www.analog.com/en/products/ad7626.html 18 * https://www.analog.com/en/products/ad7960.html 19 * https://www.analog.com/en/products/ad7961.html 20 21properties: 22 compatible: 23 enum: 24 - adi,ad7625 25 - adi,ad7626 26 - adi,ad7960 27 - adi,ad7961 28 29 vdd1-supply: true 30 vdd2-supply: true 31 vio-supply: true 32 33 ref-supply: 34 description: 35 Voltage regulator for the external reference voltage (REF). 36 37 refin-supply: 38 description: 39 Voltage regulator for the reference buffer input (REFIN). 40 41 clocks: 42 description: 43 The clock connected to the CLK pins, gated by the clk_gate PWM. 44 maxItems: 1 45 46 pwms: 47 items: 48 - description: PWM connected to the CNV input on the ADC. 49 - description: PWM that gates the clock connected to the ADC's CLK input. 50 51 pwm-names: 52 items: 53 - const: cnv 54 - const: clk_gate 55 56 io-backends: 57 description: 58 The AXI ADC IP block connected to the D+/- and DCO+/- lines of the 59 ADC. An example backend can be found at 60 http://analogdevicesinc.github.io/hdl/projects/pulsar_lvds/index.html. 61 maxItems: 1 62 63 adi,no-dco: 64 $ref: /schemas/types.yaml#/definitions/flag 65 description: 66 Indicates the wiring of the DCO+/- lines. If true, then they are 67 grounded and the device is in self-clocked mode. If this is not 68 present, then the device is in echoed clock mode. 69 70 adi,en0-always-on: 71 $ref: /schemas/types.yaml#/definitions/flag 72 description: 73 Indicates if EN0 is hard-wired to the high state. If neither this 74 nor en0-gpios are present, then EN0 is hard-wired low. 75 76 adi,en1-always-on: 77 $ref: /schemas/types.yaml#/definitions/flag 78 description: 79 Indicates if EN1 is hard-wired to the high state. If neither this 80 nor en1-gpios are present, then EN1 is hard-wired low. 81 82 adi,en2-always-on: 83 $ref: /schemas/types.yaml#/definitions/flag 84 description: 85 Indicates if EN2 is hard-wired to the high state. If neither this 86 nor en2-gpios are present, then EN2 is hard-wired low. 87 88 adi,en3-always-on: 89 $ref: /schemas/types.yaml#/definitions/flag 90 description: 91 Indicates if EN3 is hard-wired to the high state. If neither this 92 nor en3-gpios are present, then EN3 is hard-wired low. 93 94 en0-gpios: 95 description: 96 Configurable EN0 pin. 97 98 en1-gpios: 99 description: 100 Configurable EN1 pin. 101 102 en2-gpios: 103 description: 104 Configurable EN2 pin. 105 106 en3-gpios: 107 description: 108 Configurable EN3 pin. 109 110required: 111 - compatible 112 - vdd1-supply 113 - vdd2-supply 114 - vio-supply 115 - clocks 116 - pwms 117 - pwm-names 118 - io-backends 119 120allOf: 121 - if: 122 required: 123 - ref-supply 124 then: 125 properties: 126 refin-supply: false 127 - if: 128 required: 129 - refin-supply 130 then: 131 properties: 132 ref-supply: false 133 - if: 134 properties: 135 compatible: 136 contains: 137 enum: 138 - adi,ad7625 139 - adi,ad7626 140 then: 141 properties: 142 en2-gpios: false 143 en3-gpios: false 144 adi,en2-always-on: false 145 adi,en3-always-on: false 146 147 - if: 148 properties: 149 compatible: 150 contains: 151 enum: 152 - adi,ad7960 153 - adi,ad7961 154 then: 155 # ad796x parts must have one of the two supplies 156 oneOf: 157 - required: [ref-supply] 158 - required: [refin-supply] 159 160additionalProperties: false 161 162examples: 163 - | 164 #include <dt-bindings/gpio/gpio.h> 165 adc { 166 compatible = "adi,ad7625"; 167 vdd1-supply = <&supply_5V>; 168 vdd2-supply = <&supply_2_5V>; 169 vio-supply = <&supply_2_5V>; 170 io-backends = <&axi_adc>; 171 clocks = <&ref_clk>; 172 pwms = <&axi_pwm_gen 0 0>, <&axi_pwm_gen 1 0>; 173 pwm-names = "cnv", "clk_gate"; 174 en0-gpios = <&gpio0 86 GPIO_ACTIVE_HIGH>; 175 en1-gpios = <&gpio0 87 GPIO_ACTIVE_HIGH>; 176 }; 177