xref: /linux/Documentation/devicetree/bindings/iio/adc/adi,ad7476.yaml (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
12cd2b093SJonathan Cameron# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
22cd2b093SJonathan Cameron# Copyright 2019 Analog Devices Inc.
32cd2b093SJonathan Cameron%YAML 1.2
42cd2b093SJonathan Cameron---
52cd2b093SJonathan Cameron$id: http://devicetree.org/schemas/iio/adc/adi,ad7476.yaml#
62cd2b093SJonathan Cameron$schema: http://devicetree.org/meta-schemas/core.yaml#
72cd2b093SJonathan Cameron
82cd2b093SJonathan Camerontitle: AD7476 and similar simple SPI ADCs from multiple manufacturers.
92cd2b093SJonathan Cameron
102cd2b093SJonathan Cameronmaintainers:
112cd2b093SJonathan Cameron  - Michael Hennerich <michael.hennerich@analog.com>
122cd2b093SJonathan Cameron
132cd2b093SJonathan Camerondescription: |
142cd2b093SJonathan Cameron  A lot of simple SPI ADCs have very straight forward interfaces.
152cd2b093SJonathan Cameron  They typically don't provide a MOSI pin, simply reading out data
162cd2b093SJonathan Cameron  on MISO when the clock toggles.
172cd2b093SJonathan Cameron
182cd2b093SJonathan Cameronproperties:
192cd2b093SJonathan Cameron  compatible:
202cd2b093SJonathan Cameron    enum:
212cd2b093SJonathan Cameron      - adi,ad7091
222cd2b093SJonathan Cameron      - adi,ad7091r
232cd2b093SJonathan Cameron      - adi,ad7273
242cd2b093SJonathan Cameron      - adi,ad7274
252cd2b093SJonathan Cameron      - adi,ad7276
262cd2b093SJonathan Cameron      - adi,ad7277
272cd2b093SJonathan Cameron      - adi,ad7278
282cd2b093SJonathan Cameron      - adi,ad7466
292cd2b093SJonathan Cameron      - adi,ad7467
302cd2b093SJonathan Cameron      - adi,ad7468
312cd2b093SJonathan Cameron      - adi,ad7475
322cd2b093SJonathan Cameron      - adi,ad7476
332cd2b093SJonathan Cameron      - adi,ad7476a
342cd2b093SJonathan Cameron      - adi,ad7477
352cd2b093SJonathan Cameron      - adi,ad7477a
362cd2b093SJonathan Cameron      - adi,ad7478
372cd2b093SJonathan Cameron      - adi,ad7478a
382cd2b093SJonathan Cameron      - adi,ad7495
392cd2b093SJonathan Cameron      - adi,ad7910
402cd2b093SJonathan Cameron      - adi,ad7920
412cd2b093SJonathan Cameron      - adi,ad7940
422cd2b093SJonathan Cameron      - ti,adc081s
432cd2b093SJonathan Cameron      - ti,adc101s
442cd2b093SJonathan Cameron      - ti,adc121s
452cd2b093SJonathan Cameron      - ti,ads7866
462cd2b093SJonathan Cameron      - ti,ads7867
472cd2b093SJonathan Cameron      - ti,ads7868
482cd2b093SJonathan Cameron      - lltc,ltc2314-14
492cd2b093SJonathan Cameron
502cd2b093SJonathan Cameron  reg:
512cd2b093SJonathan Cameron    maxItems: 1
522cd2b093SJonathan Cameron
532cd2b093SJonathan Cameron  vcc-supply:
542cd2b093SJonathan Cameron    description:
552cd2b093SJonathan Cameron      Main powersupply voltage for the chips, sometimes referred to as VDD on
562cd2b093SJonathan Cameron      datasheets.  If there is no separate vref-supply, then this is needed
572cd2b093SJonathan Cameron      to establish channel scaling.
582cd2b093SJonathan Cameron
592cd2b093SJonathan Cameron  vdrive-supply:
602cd2b093SJonathan Cameron    description:
612cd2b093SJonathan Cameron      Some devices have separate supply for their digital control side.
622cd2b093SJonathan Cameron
632cd2b093SJonathan Cameron  vref-supply:
642cd2b093SJonathan Cameron    description:
652cd2b093SJonathan Cameron      Some devices have a specific reference voltage supplied on a different pin
662cd2b093SJonathan Cameron      to the other supplies. Needed to be able to establish channel scaling
672cd2b093SJonathan Cameron      unless there is also an internal reference available (e.g. ad7091r)
682cd2b093SJonathan Cameron
692cd2b093SJonathan Cameron  adi,conversion-start-gpios:
702cd2b093SJonathan Cameron    description: A GPIO used to trigger the start of a conversion
712cd2b093SJonathan Cameron    maxItems: 1
722cd2b093SJonathan Cameron
732cd2b093SJonathan Cameronrequired:
742cd2b093SJonathan Cameron  - compatible
752cd2b093SJonathan Cameron  - reg
762cd2b093SJonathan Cameron
772cd2b093SJonathan CameronallOf:
78*80137388SKrzysztof Kozlowski  - $ref: /schemas/spi/spi-peripheral-props.yaml#
79*80137388SKrzysztof Kozlowski
802cd2b093SJonathan Cameron  # Devices where reference is vcc
812cd2b093SJonathan Cameron  - if:
822cd2b093SJonathan Cameron      properties:
832cd2b093SJonathan Cameron        compatible:
842cd2b093SJonathan Cameron          contains:
852cd2b093SJonathan Cameron            enum:
862cd2b093SJonathan Cameron              - adi,ad7091
872cd2b093SJonathan Cameron              - adi,ad7276
882cd2b093SJonathan Cameron              - adi,ad7277
892cd2b093SJonathan Cameron              - adi,ad7278
902cd2b093SJonathan Cameron              - adi,ad7466
912cd2b093SJonathan Cameron              - adi,ad7467
922cd2b093SJonathan Cameron              - adi,ad7468
932cd2b093SJonathan Cameron              - adi,ad7940
942cd2b093SJonathan Cameron              - ti,adc081s
952cd2b093SJonathan Cameron              - ti,adc101s
962cd2b093SJonathan Cameron              - ti,adc121s
972cd2b093SJonathan Cameron              - ti,ads7866
982cd2b093SJonathan Cameron              - ti,ads7868
9927e4a85cSRob Herring    then:
1002cd2b093SJonathan Cameron      required:
1012cd2b093SJonathan Cameron        - vcc-supply
1022cd2b093SJonathan Cameron  # Devices with a vref
1032cd2b093SJonathan Cameron  - if:
1042cd2b093SJonathan Cameron      properties:
1052cd2b093SJonathan Cameron        compatible:
1062cd2b093SJonathan Cameron          contains:
1072cd2b093SJonathan Cameron            enum:
1082cd2b093SJonathan Cameron              - adi,ad7091r
1092cd2b093SJonathan Cameron              - adi,ad7273
1102cd2b093SJonathan Cameron              - adi,ad7274
1112cd2b093SJonathan Cameron              - adi,ad7475
1122cd2b093SJonathan Cameron              - lltc,ltc2314-14
1132cd2b093SJonathan Cameron    then:
1142cd2b093SJonathan Cameron      properties:
1152cd2b093SJonathan Cameron        vref-supply: true
1162cd2b093SJonathan Cameron    else:
1172cd2b093SJonathan Cameron      properties:
1182cd2b093SJonathan Cameron        vref-supply: false
1192cd2b093SJonathan Cameron  # Devices with a vref where it is not optional
1202cd2b093SJonathan Cameron  - if:
1212cd2b093SJonathan Cameron      properties:
1222cd2b093SJonathan Cameron        compatible:
1232cd2b093SJonathan Cameron          contains:
1242cd2b093SJonathan Cameron            enum:
1252cd2b093SJonathan Cameron              - adi,ad7273
1262cd2b093SJonathan Cameron              - adi,ad7274
1272cd2b093SJonathan Cameron              - adi,ad7475
1282cd2b093SJonathan Cameron              - lltc,ltc2314-14
1292cd2b093SJonathan Cameron    then:
1302cd2b093SJonathan Cameron      required:
1312cd2b093SJonathan Cameron        - vref-supply
1322cd2b093SJonathan Cameron  - if:
1332cd2b093SJonathan Cameron      properties:
1342cd2b093SJonathan Cameron        compatible:
1352cd2b093SJonathan Cameron          contains:
1362cd2b093SJonathan Cameron            enum:
1372cd2b093SJonathan Cameron              - adi,ad7475
1382cd2b093SJonathan Cameron              - adi,ad7495
1392cd2b093SJonathan Cameron    then:
1402cd2b093SJonathan Cameron      properties:
1412cd2b093SJonathan Cameron        vdrive-supply: true
1422cd2b093SJonathan Cameron    else:
1432cd2b093SJonathan Cameron      properties:
1442cd2b093SJonathan Cameron        vdrive-supply: false
1452cd2b093SJonathan Cameron  - if:
1462cd2b093SJonathan Cameron      properties:
1472cd2b093SJonathan Cameron        compatible:
1482cd2b093SJonathan Cameron          contains:
1492cd2b093SJonathan Cameron            enum:
1502cd2b093SJonathan Cameron              - adi,ad7091
1512cd2b093SJonathan Cameron              - adi,ad7091r
1522cd2b093SJonathan Cameron    then:
1532cd2b093SJonathan Cameron      properties:
1542cd2b093SJonathan Cameron        adi,conversion-start-gpios: true
1552cd2b093SJonathan Cameron    else:
1562cd2b093SJonathan Cameron      properties:
1572cd2b093SJonathan Cameron        adi,conversion-start-gpios: false
1582cd2b093SJonathan Cameron
159*80137388SKrzysztof KozlowskiunevaluatedProperties: false
160*80137388SKrzysztof Kozlowski
1612cd2b093SJonathan Cameronexamples:
1622cd2b093SJonathan Cameron  - |
1632cd2b093SJonathan Cameron    spi {
1642cd2b093SJonathan Cameron      #address-cells = <1>;
1652cd2b093SJonathan Cameron      #size-cells = <0>;
1662cd2b093SJonathan Cameron
1672cd2b093SJonathan Cameron      adc@0 {
1682cd2b093SJonathan Cameron        compatible = "adi,ad7091r";
1692cd2b093SJonathan Cameron        reg = <0>;
1702cd2b093SJonathan Cameron        spi-max-frequency = <5000000>;
1712cd2b093SJonathan Cameron        vcc-supply = <&adc_vcc>;
1722cd2b093SJonathan Cameron        vref-supply = <&adc_vref>;
1732cd2b093SJonathan Cameron      };
1742cd2b093SJonathan Cameron    };
1752cd2b093SJonathan Cameron...
176