File Index
Files and directories
Sign in
FILE

adi,ad4695.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/iio/adc/adi,ad4695.yaml YAML
  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,ad4695.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Analog Devices Easy Drive Multiplexed SAR 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 similar multi-channel analog to digital converters with SPI bus.
 15
 16  * https://www.analog.com/en/products/ad4695.html
 17  * https://www.analog.com/en/products/ad4696.html
 18  * https://www.analog.com/en/products/ad4697.html
 19  * https://www.analog.com/en/products/ad4698.html
 20
 21$ref: /schemas/spi/spi-peripheral-props.yaml#
 22
 23properties:
 24  compatible:
 25    enum:
 26      - adi,ad4695
 27      - adi,ad4696
 28      - adi,ad4697
 29      - adi,ad4698
 30
 31  reg:
 32    maxItems: 1
 33
 34  spi-max-frequency:
 35    maximum: 80000000
 36
 37  spi-cpol: true
 38  spi-cpha: true
 39
 40  spi-rx-bus-width:
 41    minimum: 1
 42    maximum: 4
 43
 44  avdd-supply:
 45    description: Analog power supply.
 46
 47  vio-supply:
 48    description: I/O pin power supply.
 49
 50  ldo-in-supply:
 51    description: Internal LDO Input. Mutually exclusive with vdd-supply.
 52
 53  vdd-supply:
 54    description: Core power supply. Mutually exclusive with ldo-in-supply.
 55
 56  ref-supply:
 57    description:
 58      External reference voltage. Mutually exclusive with refin-supply.
 59
 60  refin-supply:
 61    description:
 62      Internal reference buffer input. Mutually exclusive with ref-supply.
 63
 64  com-supply:
 65    description: Common voltage supply for pseudo-differential analog inputs.
 66
 67  adi,no-ref-current-limit:
 68    $ref: /schemas/types.yaml#/definitions/flag
 69    description:
 70      When this flag is present, the REF Overvoltage Reduced Current protection
 71      is disabled.
 72
 73  adi,no-ref-high-z:
 74    $ref: /schemas/types.yaml#/definitions/flag
 75    description:
 76      Enable this flag if the ref-supply requires Reference Input High-Z Mode
 77      to be disabled for proper operation.
 78
 79  cnv-gpios:
 80    description: The Convert Input (CNV). If omitted, CNV is tied to SPI CS.
 81    maxItems: 1
 82
 83  reset-gpios:
 84    description: The Reset Input (RESET). Should be configured GPIO_ACTIVE_LOW.
 85    maxItems: 1
 86
 87  pwms:
 88    description: PWM signal connected to the CNV pin.
 89    maxItems: 1
 90
 91  interrupts:
 92    minItems: 1
 93    items:
 94      - description: Signal coming from the BSY_ALT_GP0 pin (ALERT or BUSY).
 95      - description: Signal coming from the GP2 pin (ALERT).
 96      - description: Signal coming from the GP3 pin (BUSY).
 97
 98  interrupt-names:
 99    minItems: 1
100    items:
101      - const: gp0
102      - const: gp2
103      - const: gp3
104
105  gpio-controller: true
106
107  "#gpio-cells":
108    const: 2
109    description: |
110      The first cell is the GPn number: 0 to 3.
111      The second cell takes standard GPIO flags.
112
113  '#trigger-source-cells':
114    description: |
115      First cell indicates the output signal: 0 = BUSY, 1 = ALERT.
116      Second cell indicates which GPn pin is used: 0, 2 or 3.
117
118      For convenience, macros for these values are available in
119      dt-bindings/iio/adc/adi,ad4695.h.
120    const: 2
121
122  "#address-cells":
123    const: 1
124
125  "#size-cells":
126    const: 0
127
128patternProperties:
129  "^in(?:[13579]|1[135])-supply$":
130    description:
131      Optional voltage supply for odd numbered channels when they are used as
132      the negative input for a pseudo-differential channel.
133
134  "^channel@[0-9a-f]$":
135    type: object
136    $ref: adc.yaml
137    unevaluatedProperties: false
138    description:
139      Describes each individual channel. In addition the properties defined
140      below, bipolar from adc.yaml is also supported.
141
142    properties:
143      reg:
144        maximum: 15
145
146      common-mode-channel:
147        description:
148          Describes the common mode channel for single channels. 0xFF is REFGND
149          and OxFE is COM. Macros are available for these values in
150          dt-bindings/iio/adc/adi,ad4695.h. Values 1 to 15 correspond to INx
151          inputs. Only odd numbered INx inputs can be used as common mode
152          channels.
153        enum: [1, 3, 5, 7, 9, 11, 13, 15, 0xFE, 0xFF]
154        default: 0xFF
155
156      adi,no-high-z:
157        $ref: /schemas/types.yaml#/definitions/flag
158        description:
159          Enable this flag if the input pin requires the Analog Input High-Z
160          Mode to be disabled for proper operation.
161
162    required:
163      - reg
164
165    allOf:
166      # bipolar mode can't be used with REFGND
167      - if:
168          properties:
169            common-mode-channel:
170              const: 0xFF
171        then:
172          properties:
173            bipolar: false
174
175required:
176  - compatible
177  - reg
178  - avdd-supply
179  - vio-supply
180
181allOf:
182  - oneOf:
183      - required:
184          - ldo-in-supply
185      - required:
186          - vdd-supply
187
188  - oneOf:
189      - required:
190          - ref-supply
191      - required:
192          - refin-supply
193
194  # the internal reference buffer always requires high-z mode
195  - if:
196      required:
197        - refin-supply
198    then:
199      properties:
200        adi,no-ref-high-z: false
201
202  # limit channels for 8-channel chips
203  - if:
204      properties:
205        compatible:
206          contains:
207            enum:
208              - adi,ad4697
209              - adi,ad4698
210    then:
211      patternProperties:
212        "^in(?:9|1[135])-supply$": false
213        "^channel@[0-7]$":
214          properties:
215            reg:
216              maximum: 7
217            common-mode-channel:
218              enum: [1, 3, 5, 7, 0xFE, 0xFF]
219        "^channel@[8-9a-f]$": false
220
221unevaluatedProperties: false
222
223examples:
224  - |
225    #include <dt-bindings/gpio/gpio.h>
226    #include <dt-bindings/iio/adc/adi,ad4695.h>
227
228    spi {
229        #address-cells = <1>;
230        #size-cells = <0>;
231
232        adc@0 {
233            compatible = "adi,ad4695";
234            reg = <0>;
235            spi-cpol;
236            spi-cpha;
237            spi-max-frequency = <80000000>;
238            avdd-supply = <&power_supply>;
239            ldo-in-supply = <&power_supply>;
240            vio-supply = <&io_supply>;
241            refin-supply = <&supply_5V>;
242            com-supply = <&supply_2V5>;
243            in3-supply = <&supply_2V5>;
244            reset-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
245
246            #address-cells = <1>;
247            #size-cells = <0>;
248
249            /* Pseudo-differential channel between IN0 and REFGND. */
250            channel@0 {
251                reg = <0>;
252            };
253
254            /* Pseudo-differential channel between IN1 and COM. */
255            channel@1 {
256                reg = <1>;
257                common-mode-channel = <AD4695_COMMON_MODE_COM>;
258                bipolar;
259            };
260
261            /* Pseudo-differential channel between IN2 and IN3. */
262            channel@2 {
263                reg = <2>;
264                common-mode-channel = <3>;
265                bipolar;
266            };
267        };
268    };
~/ Read-only file preview.