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