xref: /linux/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml (revision 6b4d6822eef58dc17d35ece72369045247843990)
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:
10416f882cSBeniamin Bia  - Beniamin Bia <beniamin.bia@analog.com>
11416f882cSBeniamin Bia  - Stefan Popa <stefan.popa@analog.com>
12416f882cSBeniamin Bia
13416f882cSBeniamin Biadescription: |
14416f882cSBeniamin Bia  Analog Devices AD7606 Simultaneous Sampling ADC
15416f882cSBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/ad7606_7606-6_7606-4.pdf
16*6b4d6822SBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/AD7606B.pdf
17416f882cSBeniamin Bia  https://www.analog.com/media/en/technical-documentation/data-sheets/AD7616.pdf
18416f882cSBeniamin Bia
19416f882cSBeniamin Biaproperties:
20416f882cSBeniamin Bia  compatible:
21416f882cSBeniamin Bia    enum:
22416f882cSBeniamin Bia      - adi,ad7605-4
23416f882cSBeniamin Bia      - adi,ad7606-8
24416f882cSBeniamin Bia      - adi,ad7606-6
25416f882cSBeniamin Bia      - adi,ad7606-4
26*6b4d6822SBeniamin Bia      - adi,ad7606b
27416f882cSBeniamin Bia      - adi,ad7616
28416f882cSBeniamin Bia
29416f882cSBeniamin Bia  reg:
30416f882cSBeniamin Bia    maxItems: 1
31416f882cSBeniamin Bia
32416f882cSBeniamin Bia  spi-cpha: true
33416f882cSBeniamin Bia
34416f882cSBeniamin Bia  avcc-supply:
35416f882cSBeniamin Bia    description:
36416f882cSBeniamin Bia      Phandle to the Avcc power supply
37416f882cSBeniamin Bia    maxItems: 1
38416f882cSBeniamin Bia
39416f882cSBeniamin Bia  interrupts:
40416f882cSBeniamin Bia    maxItems: 1
41416f882cSBeniamin Bia
42416f882cSBeniamin Bia  adi,conversion-start-gpios:
43416f882cSBeniamin Bia    description:
44416f882cSBeniamin Bia      Must be the device tree identifier of the CONVST pin.
45416f882cSBeniamin Bia      This logic input is used to initiate conversions on the analog
46416f882cSBeniamin Bia      input channels. As the line is active high, it should be marked
47416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
48416f882cSBeniamin Bia    maxItems: 1
49416f882cSBeniamin Bia
50416f882cSBeniamin Bia  reset-gpios:
51416f882cSBeniamin Bia    description:
52416f882cSBeniamin Bia      Must be the device tree identifier of the RESET pin. If specified,
53416f882cSBeniamin Bia      it will be asserted during driver probe. As the line is active high,
54416f882cSBeniamin Bia      it should be marked GPIO_ACTIVE_HIGH.
55416f882cSBeniamin Bia    maxItems: 1
56416f882cSBeniamin Bia
57416f882cSBeniamin Bia  standby-gpios:
58416f882cSBeniamin Bia    description:
59416f882cSBeniamin Bia       Must be the device tree identifier of the STBY pin. This pin is used
60416f882cSBeniamin Bia       to place the AD7606 into one of two power-down modes, Standby mode or
61416f882cSBeniamin Bia       Shutdown mode. As the line is active low, it should be marked
62416f882cSBeniamin Bia       GPIO_ACTIVE_LOW.
63416f882cSBeniamin Bia    maxItems: 1
64416f882cSBeniamin Bia
65416f882cSBeniamin Bia  adi,first-data-gpios:
66416f882cSBeniamin Bia    description:
67416f882cSBeniamin Bia      Must be the device tree identifier of the FRSTDATA pin.
68416f882cSBeniamin Bia      The FRSTDATA output indicates when the first channel, V1, is
69416f882cSBeniamin Bia      being read back on either the parallel, byte or serial interface.
70416f882cSBeniamin Bia      As the line is active high, it should be marked GPIO_ACTIVE_HIGH.
71416f882cSBeniamin Bia    maxItems: 1
72416f882cSBeniamin Bia
73416f882cSBeniamin Bia  adi,range-gpios:
74416f882cSBeniamin Bia    description:
75416f882cSBeniamin Bia      Must be the device tree identifier of the RANGE pin. The polarity on
76416f882cSBeniamin Bia      this pin determines the input range of the analog input channels. If
77416f882cSBeniamin Bia      this pin is tied to a logic high, the analog input range is ±10V for
78416f882cSBeniamin Bia      all channels. If this pin is tied to a logic low, the analog input range
79416f882cSBeniamin Bia      is ±5V for all channels. As the line is active high, it should be marked
80416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
81416f882cSBeniamin Bia    maxItems: 1
82416f882cSBeniamin Bia
83416f882cSBeniamin Bia  adi,oversampling-ratio-gpios:
84416f882cSBeniamin Bia    description:
85416f882cSBeniamin Bia      Must be the device tree identifier of the over-sampling
86416f882cSBeniamin Bia      mode pins. As the line is active high, it should be marked
87416f882cSBeniamin Bia      GPIO_ACTIVE_HIGH.
88416f882cSBeniamin Bia    maxItems: 1
89416f882cSBeniamin Bia
90416f882cSBeniamin Bia  adi,sw-mode:
91416f882cSBeniamin Bia    description:
92*6b4d6822SBeniamin Bia      Software mode of operation, so far available only for ad7616 and ad7606b.
93416f882cSBeniamin Bia      It is enabled when all three oversampling mode pins are connected to
94416f882cSBeniamin Bia      high level. The device is configured by the corresponding registers. If the
95416f882cSBeniamin Bia      adi,oversampling-ratio-gpios property is defined, then the driver will set the
96416f882cSBeniamin Bia      oversampling gpios to high. Otherwise, it is assumed that the pins are hardwired
97416f882cSBeniamin Bia      to VDD.
98416f882cSBeniamin Bia    type: boolean
99416f882cSBeniamin Bia
100416f882cSBeniamin Biarequired:
101416f882cSBeniamin Bia  - compatible
102416f882cSBeniamin Bia  - reg
103416f882cSBeniamin Bia  - spi-cpha
104416f882cSBeniamin Bia  - avcc-supply
105416f882cSBeniamin Bia  - interrupts
106416f882cSBeniamin Bia  - adi,conversion-start-gpios
107416f882cSBeniamin Bia
108416f882cSBeniamin Biaexamples:
109416f882cSBeniamin Bia  - |
110416f882cSBeniamin Bia    #include <dt-bindings/gpio/gpio.h>
111416f882cSBeniamin Bia    #include <dt-bindings/interrupt-controller/irq.h>
112416f882cSBeniamin Bia    spi0 {
113416f882cSBeniamin Bia        #address-cells = <1>;
114416f882cSBeniamin Bia        #size-cells = <0>;
115416f882cSBeniamin Bia
116416f882cSBeniamin Bia        adc@0 {
117416f882cSBeniamin Bia                compatible = "adi,ad7606-8";
118416f882cSBeniamin Bia                reg = <0>;
119416f882cSBeniamin Bia                spi-max-frequency = <1000000>;
120416f882cSBeniamin Bia                spi-cpol;
121416f882cSBeniamin Bia                spi-cpha;
122416f882cSBeniamin Bia
123416f882cSBeniamin Bia                avcc-supply = <&adc_vref>;
124416f882cSBeniamin Bia
125416f882cSBeniamin Bia                interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
126416f882cSBeniamin Bia                interrupt-parent = <&gpio>;
127416f882cSBeniamin Bia
128416f882cSBeniamin Bia                adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
129416f882cSBeniamin Bia                reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
130416f882cSBeniamin Bia                adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
131416f882cSBeniamin Bia                adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH
132416f882cSBeniamin Bia                                                &gpio 23 GPIO_ACTIVE_HIGH
133416f882cSBeniamin Bia                                                &gpio 26 GPIO_ACTIVE_HIGH>;
134416f882cSBeniamin Bia                standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
135416f882cSBeniamin Bia                adi,sw-mode;
136416f882cSBeniamin Bia        };
137416f882cSBeniamin Bia    };
138416f882cSBeniamin Bia...
139