Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/iio/adc/adi,ad4695.yaml
26309 views
1
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/iio/adc/adi,ad4695.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: Analog Devices Easy Drive Multiplexed SAR Analog to Digital Converters
8
9
maintainers:
10
- Michael Hennerich <Michael.Hennerich@analog.com>
11
- Nuno Sá <nuno.sa@analog.com>
12
13
description: |
14
A family of similar multi-channel analog to digital converters with SPI bus.
15
16
* https://www.analog.com/en/products/ad4695.html
17
* https://www.analog.com/en/products/ad4696.html
18
* https://www.analog.com/en/products/ad4697.html
19
* https://www.analog.com/en/products/ad4698.html
20
21
$ref: /schemas/spi/spi-peripheral-props.yaml#
22
23
properties:
24
compatible:
25
enum:
26
- adi,ad4695
27
- adi,ad4696
28
- adi,ad4697
29
- adi,ad4698
30
31
reg:
32
maxItems: 1
33
34
spi-max-frequency:
35
maximum: 80000000
36
37
spi-cpol: true
38
spi-cpha: true
39
40
spi-rx-bus-width:
41
minimum: 1
42
maximum: 4
43
44
avdd-supply:
45
description: Analog power supply.
46
47
vio-supply:
48
description: I/O pin power supply.
49
50
ldo-in-supply:
51
description: Internal LDO Input. Mutually exclusive with vdd-supply.
52
53
vdd-supply:
54
description: Core power supply. Mutually exclusive with ldo-in-supply.
55
56
ref-supply:
57
description:
58
External reference voltage. Mutually exclusive with refin-supply.
59
60
refin-supply:
61
description:
62
Internal reference buffer input. Mutually exclusive with ref-supply.
63
64
com-supply:
65
description: Common voltage supply for pseudo-differential analog inputs.
66
67
adi,no-ref-current-limit:
68
$ref: /schemas/types.yaml#/definitions/flag
69
description:
70
When this flag is present, the REF Overvoltage Reduced Current protection
71
is disabled.
72
73
adi,no-ref-high-z:
74
$ref: /schemas/types.yaml#/definitions/flag
75
description:
76
Enable this flag if the ref-supply requires Reference Input High-Z Mode
77
to be disabled for proper operation.
78
79
cnv-gpios:
80
description: The Convert Input (CNV). If omitted, CNV is tied to SPI CS.
81
maxItems: 1
82
83
reset-gpios:
84
description: The Reset Input (RESET). Should be configured GPIO_ACTIVE_LOW.
85
maxItems: 1
86
87
pwms:
88
description: PWM signal connected to the CNV pin.
89
maxItems: 1
90
91
interrupts:
92
minItems: 1
93
items:
94
- description: Signal coming from the BSY_ALT_GP0 pin (ALERT or BUSY).
95
- description: Signal coming from the GP2 pin (ALERT).
96
- description: Signal coming from the GP3 pin (BUSY).
97
98
interrupt-names:
99
minItems: 1
100
items:
101
- const: gp0
102
- const: gp2
103
- const: gp3
104
105
gpio-controller: true
106
107
"#gpio-cells":
108
const: 2
109
description: |
110
The first cell is the GPn number: 0 to 3.
111
The second cell takes standard GPIO flags.
112
113
'#trigger-source-cells':
114
description: |
115
First cell indicates the output signal: 0 = BUSY, 1 = ALERT.
116
Second cell indicates which GPn pin is used: 0, 2 or 3.
117
118
For convenience, macros for these values are available in
119
dt-bindings/iio/adc/adi,ad4695.h.
120
const: 2
121
122
"#address-cells":
123
const: 1
124
125
"#size-cells":
126
const: 0
127
128
patternProperties:
129
"^in(?:[13579]|1[135])-supply$":
130
description:
131
Optional voltage supply for odd numbered channels when they are used as
132
the negative input for a pseudo-differential channel.
133
134
"^channel@[0-9a-f]$":
135
type: object
136
$ref: adc.yaml
137
unevaluatedProperties: false
138
description:
139
Describes each individual channel. In addition the properties defined
140
below, bipolar from adc.yaml is also supported.
141
142
properties:
143
reg:
144
maximum: 15
145
146
common-mode-channel:
147
description:
148
Describes the common mode channel for single channels. 0xFF is REFGND
149
and OxFE is COM. Macros are available for these values in
150
dt-bindings/iio/adc/adi,ad4695.h. Values 1 to 15 correspond to INx
151
inputs. Only odd numbered INx inputs can be used as common mode
152
channels.
153
enum: [1, 3, 5, 7, 9, 11, 13, 15, 0xFE, 0xFF]
154
default: 0xFF
155
156
adi,no-high-z:
157
$ref: /schemas/types.yaml#/definitions/flag
158
description:
159
Enable this flag if the input pin requires the Analog Input High-Z
160
Mode to be disabled for proper operation.
161
162
required:
163
- reg
164
165
allOf:
166
# bipolar mode can't be used with REFGND
167
- if:
168
properties:
169
common-mode-channel:
170
const: 0xFF
171
then:
172
properties:
173
bipolar: false
174
175
required:
176
- compatible
177
- reg
178
- avdd-supply
179
- vio-supply
180
181
allOf:
182
- oneOf:
183
- required:
184
- ldo-in-supply
185
- required:
186
- vdd-supply
187
188
- oneOf:
189
- required:
190
- ref-supply
191
- required:
192
- refin-supply
193
194
# the internal reference buffer always requires high-z mode
195
- if:
196
required:
197
- refin-supply
198
then:
199
properties:
200
adi,no-ref-high-z: false
201
202
# limit channels for 8-channel chips
203
- if:
204
properties:
205
compatible:
206
contains:
207
enum:
208
- adi,ad4697
209
- adi,ad4698
210
then:
211
patternProperties:
212
"^in(?:9|1[135])-supply$": false
213
"^channel@[0-7]$":
214
properties:
215
reg:
216
maximum: 7
217
common-mode-channel:
218
enum: [1, 3, 5, 7, 0xFE, 0xFF]
219
"^channel@[8-9a-f]$": false
220
221
unevaluatedProperties: false
222
223
examples:
224
- |
225
#include <dt-bindings/gpio/gpio.h>
226
#include <dt-bindings/iio/adc/adi,ad4695.h>
227
228
spi {
229
#address-cells = <1>;
230
#size-cells = <0>;
231
232
adc@0 {
233
compatible = "adi,ad4695";
234
reg = <0>;
235
spi-cpol;
236
spi-cpha;
237
spi-max-frequency = <80000000>;
238
avdd-supply = <&power_supply>;
239
ldo-in-supply = <&power_supply>;
240
vio-supply = <&io_supply>;
241
refin-supply = <&supply_5V>;
242
com-supply = <&supply_2V5>;
243
in3-supply = <&supply_2V5>;
244
reset-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
245
246
#address-cells = <1>;
247
#size-cells = <0>;
248
249
/* Pseudo-differential channel between IN0 and REFGND. */
250
channel@0 {
251
reg = <0>;
252
};
253
254
/* Pseudo-differential channel between IN1 and COM. */
255
channel@1 {
256
reg = <1>;
257
common-mode-channel = <AD4695_COMMON_MODE_COM>;
258
bipolar;
259
};
260
261
/* Pseudo-differential channel between IN2 and IN3. */
262
channel@2 {
263
reg = <2>;
264
common-mode-channel = <3>;
265
bipolar;
266
};
267
};
268
};
269
270