xref: /linux/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml (revision 801373884560e707883adb2aa7ef9bf2293bf88a)
1416f882cSBeniamin Bia# SPDX-License-Identifier: GPL-2.0
2416f882cSBeniamin Bia%YAML 1.2
3416f882cSBeniamin Bia---
4416f882cSBeniamin Bia$id: http://devicetree.org/schemas/iio/adc/adi,ad7606.yaml#
5416f882cSBeniamin Bia$schema: http://devicetree.org/meta-schemas/core.yaml#
6416f882cSBeniamin Bia
7416f882cSBeniamin Biatitle: Analog Devices AD7606 Simultaneous Sampling ADC
8416f882cSBeniamin Bia
9416f882cSBeniamin Biamaintainers:
102e645db3SKrzysztof Kozlowski  - Michael Hennerich <michael.hennerich@analog.com>
11416f882cSBeniamin Bia
12416f882cSBeniamin Biadescription: |
13416f882cSBeniamin Bia  Analog Devices AD7606 Simultaneous Sampling ADC
14416f882cSBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/ad7606_7606-6_7606-4.pdf
156b4d6822SBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/AD7606B.pdf
16416f882cSBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/AD7616.pdf
17416f882cSBeniamin Bia
18416f882cSBeniamin Biaproperties:
19416f882cSBeniamin Bia  compatible:
20416f882cSBeniamin Bia    enum:
21416f882cSBeniamin Bia      - adi,ad7605-4
22416f882cSBeniamin Bia      - adi,ad7606-8
23416f882cSBeniamin Bia      - adi,ad7606-6
24416f882cSBeniamin Bia      - adi,ad7606-4
256b4d6822SBeniamin Bia      - adi,ad7606b
26416f882cSBeniamin Bia      - adi,ad7616
27416f882cSBeniamin Bia
28416f882cSBeniamin Bia  reg:
29416f882cSBeniamin Bia    maxItems: 1
30416f882cSBeniamin Bia
31416f882cSBeniamin Bia  spi-cpha: true
32416f882cSBeniamin Bia
334828556dSRob Herring  spi-cpol: true
344828556dSRob Herring
35f3dde260SRob Herring  avcc-supply: true
36416f882cSBeniamin Bia
37416f882cSBeniamin Bia  interrupts:
38416f882cSBeniamin Bia    maxItems: 1
39416f882cSBeniamin Bia
40416f882cSBeniamin Bia  adi,conversion-start-gpios:
41416f882cSBeniamin Bia    description:
42416f882cSBeniamin Bia      Must be the device tree identifier of the CONVST pin.
43416f882cSBeniamin Bia      This logic input is used to initiate conversions on the analog
44416f882cSBeniamin Bia      input channels. As the line is active high, it should be marked
45416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
46416f882cSBeniamin Bia    maxItems: 1
47416f882cSBeniamin Bia
48416f882cSBeniamin Bia  reset-gpios:
49416f882cSBeniamin Bia    description:
50416f882cSBeniamin Bia      Must be the device tree identifier of the RESET pin. If specified,
51416f882cSBeniamin Bia      it will be asserted during driver probe. As the line is active high,
52416f882cSBeniamin Bia      it should be marked GPIO_ACTIVE_HIGH.
53416f882cSBeniamin Bia    maxItems: 1
54416f882cSBeniamin Bia
55416f882cSBeniamin Bia  standby-gpios:
56416f882cSBeniamin Bia    description:
57416f882cSBeniamin Bia      Must be the device tree identifier of the STBY pin. This pin is used
58416f882cSBeniamin Bia      to place the AD7606 into one of two power-down modes, Standby mode or
59416f882cSBeniamin Bia      Shutdown mode. As the line is active low, it should be marked
60416f882cSBeniamin Bia      GPIO_ACTIVE_LOW.
61416f882cSBeniamin Bia    maxItems: 1
62416f882cSBeniamin Bia
63416f882cSBeniamin Bia  adi,first-data-gpios:
64416f882cSBeniamin Bia    description:
65416f882cSBeniamin Bia      Must be the device tree identifier of the FRSTDATA pin.
66416f882cSBeniamin Bia      The FRSTDATA output indicates when the first channel, V1, is
67416f882cSBeniamin Bia      being read back on either the parallel, byte or serial interface.
68416f882cSBeniamin Bia      As the line is active high, it should be marked GPIO_ACTIVE_HIGH.
69416f882cSBeniamin Bia    maxItems: 1
70416f882cSBeniamin Bia
71416f882cSBeniamin Bia  adi,range-gpios:
72416f882cSBeniamin Bia    description:
73416f882cSBeniamin Bia      Must be the device tree identifier of the RANGE pin. The polarity on
74416f882cSBeniamin Bia      this pin determines the input range of the analog input channels. If
75416f882cSBeniamin Bia      this pin is tied to a logic high, the analog input range is ±10V for
76416f882cSBeniamin Bia      all channels. If this pin is tied to a logic low, the analog input range
77416f882cSBeniamin Bia      is ±5V for all channels. As the line is active high, it should be marked
78416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
79416f882cSBeniamin Bia    maxItems: 1
80416f882cSBeniamin Bia
81416f882cSBeniamin Bia  adi,oversampling-ratio-gpios:
82416f882cSBeniamin Bia    description:
83416f882cSBeniamin Bia      Must be the device tree identifier of the over-sampling
84416f882cSBeniamin Bia      mode pins. As the line is active high, it should be marked
85416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
86a6c4f77cSBeniamin Bia    maxItems: 3
87416f882cSBeniamin Bia
88416f882cSBeniamin Bia  adi,sw-mode:
89416f882cSBeniamin Bia    description:
906b4d6822SBeniamin Bia      Software mode of operation, so far available only for ad7616 and ad7606b.
91416f882cSBeniamin Bia      It is enabled when all three oversampling mode pins are connected to
92416f882cSBeniamin Bia      high level. The device is configured by the corresponding registers. If the
93416f882cSBeniamin Bia      adi,oversampling-ratio-gpios property is defined, then the driver will set the
94416f882cSBeniamin Bia      oversampling gpios to high. Otherwise, it is assumed that the pins are hardwired
95416f882cSBeniamin Bia      to VDD.
96416f882cSBeniamin Bia    type: boolean
97416f882cSBeniamin Bia
98416f882cSBeniamin Biarequired:
99416f882cSBeniamin Bia  - compatible
100416f882cSBeniamin Bia  - reg
101416f882cSBeniamin Bia  - spi-cpha
102416f882cSBeniamin Bia  - avcc-supply
103416f882cSBeniamin Bia  - interrupts
104416f882cSBeniamin Bia  - adi,conversion-start-gpios
105416f882cSBeniamin Bia
106*80137388SKrzysztof KozlowskiallOf:
107*80137388SKrzysztof Kozlowski  - $ref: /schemas/spi/spi-peripheral-props.yaml#
108*80137388SKrzysztof Kozlowski
109*80137388SKrzysztof KozlowskiunevaluatedProperties: false
1106fdc6e23SRob Herring
111416f882cSBeniamin Biaexamples:
112416f882cSBeniamin Bia  - |
113416f882cSBeniamin Bia    #include <dt-bindings/gpio/gpio.h>
114416f882cSBeniamin Bia    #include <dt-bindings/interrupt-controller/irq.h>
115416f882cSBeniamin Bia    spi0 {
116416f882cSBeniamin Bia        #address-cells = <1>;
117416f882cSBeniamin Bia        #size-cells = <0>;
118416f882cSBeniamin Bia
119416f882cSBeniamin Bia        adc@0 {
120416f882cSBeniamin Bia                compatible = "adi,ad7606-8";
121416f882cSBeniamin Bia                reg = <0>;
122416f882cSBeniamin Bia                spi-max-frequency = <1000000>;
123416f882cSBeniamin Bia                spi-cpol;
124416f882cSBeniamin Bia                spi-cpha;
125416f882cSBeniamin Bia
126416f882cSBeniamin Bia                avcc-supply = <&adc_vref>;
127416f882cSBeniamin Bia
128416f882cSBeniamin Bia                interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
129416f882cSBeniamin Bia                interrupt-parent = <&gpio>;
130416f882cSBeniamin Bia
131416f882cSBeniamin Bia                adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
132416f882cSBeniamin Bia                reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
133416f882cSBeniamin Bia                adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
134a6c4f77cSBeniamin Bia                adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH>,
135a6c4f77cSBeniamin Bia                                               <&gpio 23 GPIO_ACTIVE_HIGH>,
136a6c4f77cSBeniamin Bia                                               <&gpio 26 GPIO_ACTIVE_HIGH>;
137416f882cSBeniamin Bia                standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
138416f882cSBeniamin Bia                adi,sw-mode;
139416f882cSBeniamin Bia        };
140416f882cSBeniamin Bia    };
141416f882cSBeniamin Bia...
142