blob: 590ea7936ad7c52b51b0fbbba948f5806a666890 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/addac/adi,ad74413r.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Analog Devices AD74412R/AD74413R device
8
9maintainers:
10 - Cosmin Tanislav <cosmin.tanislav@analog.com>
11
12description: |
13 The AD74412R and AD74413R are quad-channel software configurable input/output
14 solutions for building and process control applications. They contain
15 functionality for analog output, analog input, digital input, resistance
16 temperature detector, and thermocouple measurements integrated
17 into a single chip solution with an SPI interface.
18 The devices feature a 16-bit ADC and four configurable 13-bit DACs to provide
19 four configurable input/output channels and a suite of diagnostic functions.
20 The AD74413R differentiates itself from the AD74412R by being HART-compatible.
21 https://www.analog.com/en/products/ad74412r.html
22 https://www.analog.com/en/products/ad74413r.html
23
24properties:
25 compatible:
26 enum:
27 - adi,ad74412r
28 - adi,ad74413r
29
30 reg:
31 maxItems: 1
32
33 '#address-cells':
34 const: 1
35
36 '#size-cells':
37 const: 0
38
39 spi-max-frequency:
40 maximum: 1000000
41
42 spi-cpol: true
43
44 interrupts:
45 maxItems: 1
46
47 refin-supply: true
48
49 shunt-resistor-micro-ohms:
50 description:
51 Shunt (sense) resistor value in micro-Ohms.
52 default: 100000000
53
54 reset-gpios:
55 maxItems: 1
56
57required:
58 - compatible
59 - reg
60 - spi-max-frequency
61 - spi-cpol
62 - refin-supply
63
64patternProperties:
65 "^channel@[0-3]$":
66 type: object
67 additionalProperties: false
68 description: Represents the external channels which are connected to the device.
69
70 properties:
71 reg:
72 description: |
73 The channel number. It can have up to 4 channels numbered from 0 to 3.
74 minimum: 0
75 maximum: 3
76
77 adi,ch-func:
78 $ref: /schemas/types.yaml#/definitions/uint32
79 description: |
80 Channel function.
81 HART functions are not supported on AD74412R.
82 0 - CH_FUNC_HIGH_IMPEDANCE
83 1 - CH_FUNC_VOLTAGE_OUTPUT
84 2 - CH_FUNC_CURRENT_OUTPUT
85 3 - CH_FUNC_VOLTAGE_INPUT
86 4 - CH_FUNC_CURRENT_INPUT_EXT_POWER
87 5 - CH_FUNC_CURRENT_INPUT_LOOP_POWER
88 6 - CH_FUNC_RESISTANCE_INPUT
89 7 - CH_FUNC_DIGITAL_INPUT_LOGIC
90 8 - CH_FUNC_DIGITAL_INPUT_LOOP_POWER
91 9 - CH_FUNC_CURRENT_INPUT_EXT_POWER_HART
92 10 - CH_FUNC_CURRENT_INPUT_LOOP_POWER_HART
93 minimum: 0
94 maximum: 10
95 default: 0
96
97 adi,gpo-comparator:
98 type: boolean
99 description: |
100 Whether to configure GPO as a comparator or not.
101 When not configured as a comparator, the GPO will be treated as an
102 output-only GPIO.
103
104 drive-strength-microamp:
105 description: |
106 For channels configured as digital input, this configures the sink
107 current.
108 minimum: 0
109 maximum: 1800
110 default: 0
111 multipleOf: 120
112
113 required:
114 - reg
115
116allOf:
117 - $ref: /schemas/spi/spi-peripheral-props.yaml#
118
119unevaluatedProperties: false
120
121examples:
122 - |
123 #include <dt-bindings/gpio/gpio.h>
124 #include <dt-bindings/interrupt-controller/irq.h>
125 #include <dt-bindings/iio/addac/adi,ad74413r.h>
126
127 spi {
128 #address-cells = <1>;
129 #size-cells = <0>;
130
131 addac@0 {
132 compatible = "adi,ad74413r";
133 reg = <0>;
134 spi-max-frequency = <1000000>;
135 spi-cpol;
136
137 #address-cells = <1>;
138 #size-cells = <0>;
139
140 interrupt-parent = <&gpio>;
141 interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
142
143 refin-supply = <&ad74413r_refin>;
144 reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
145
146 channel@0 {
147 reg = <0>;
148
149 adi,ch-func = <CH_FUNC_VOLTAGE_OUTPUT>;
150 };
151
152 channel@1 {
153 reg = <1>;
154
155 adi,ch-func = <CH_FUNC_CURRENT_OUTPUT>;
156 };
157
158 channel@2 {
159 reg = <2>;
160
161 adi,ch-func = <CH_FUNC_DIGITAL_INPUT_LOGIC>;
162 adi,gpo-comparator;
163 };
164
165 channel@3 {
166 reg = <3>;
167
168 adi,ch-func = <CH_FUNC_CURRENT_INPUT_EXT_POWER>;
169 };
170 };
171 };
172...