]> git.ipfire.org Git - thirdparty/linux.git/blame - Documentation/devicetree/bindings/mfd/st,stpmic1.yaml
Merge tag 'drm/tegra/for-5.7-fixes' of git://anongit.freedesktop.org/tegra/linux...
[thirdparty/linux.git] / Documentation / devicetree / bindings / mfd / st,stpmic1.yaml
CommitLineData
2dccf694
BG
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/st,stpmic1.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: STMicroelectonics STPMIC1 Power Management IC bindings
8
9description: STMicroelectronics STPMIC1 Power Management IC
10
11maintainers:
12 - pascal Paillet <p.paillet@st.com>
13
14properties:
15 compatible:
16 const: st,stpmic1
17
18 reg:
19 const: 0x33
20
21 interrupts:
22 maxItems: 1
23
24 "#interrupt-cells":
25 const: 2
26
27 interrupt-controller: true
28
29 onkey:
30 type: object
31
32 allOf:
33 - $ref: ../input/input.yaml
34
35 properties:
36 compatible:
37 const: st,stpmic1-onkey
38
39 interrupts:
40 items:
41 - description: onkey-falling, happens when onkey is pressed. IT_PONKEY_F of pmic
42 - description: onkey-rising, happens when onkey is released. IT_PONKEY_R of pmic
43
44 interrupt-names:
45 items:
46 - const: onkey-falling
47 - const: onkey-rising
48
49 st,onkey-clear-cc-flag:
50 description: onkey is able power on after an over-current shutdown event.
51 $ref: /schemas/types.yaml#/definitions/flag
52
53 st,onkey-pu-inactive:
54 description: onkey pull up is not active
55 $ref: /schemas/types.yaml#/definitions/flag
56
57 power-off-time-sec:
58 minimum: 1
59 maximum: 16
60
61 required:
62 - compatible
63 - interrupts
64 - interrupt-names
65
66 additionalProperties: false
67
68 watchdog:
69 type: object
70
71 allOf:
72 - $ref: ../watchdog/watchdog.yaml
73
74 properties:
75 compatible:
76 const: st,stpmic1-wdt
77
78 timeout-sec: true
79
80 required:
81 - compatible
82
83 additionalProperties: false
84
85 regulators:
86 type: object
87
88 description: |
89 Available Regulators in STPMIC1 device are:
90 - buck1 for Buck BUCK1
91 - buck2 for Buck BUCK2
92 - buck3 for Buck BUCK3
93 - buck4 for Buck BUCK4
94 - ldo1 for LDO LDO1
95 - ldo2 for LDO LDO2
96 - ldo3 for LDO LDO3
97 - ldo4 for LDO LDO4
98 - ldo5 for LDO LDO5
99 - ldo6 for LDO LDO6
100 - vref_ddr for LDO Vref DDR
101 - boost for Buck BOOST
102 - pwr_sw1 for VBUS_OTG switch
103 - pwr_sw2 for SW_OUT switch
104 Switches are fixed voltage regulators with only enable/disable capability.
105
106 properties:
107 compatible:
108 const: st,stpmic1-regulators
109
110 ldo3:
111 type: object
112
113 properties:
114 interrupts:
115 maxItems: 1
116
117 st,mask-reset:
118 description: mask reset for this regulator,
119 the regulator configuration is maintained during pmic reset.
120 $ref: /schemas/types.yaml#/definitions/flag
121
122 regulator-name: true
123 regulator-boot-on: true
124 regulator-always-on: true
125 regulator-min-microvolt: true
126 regulator-max-microvolt: true
127 regulator-allow-bypass: true
128 regulator-over-current-protection: true
129
130 additionalProperties: false
131
132 ldo4:
133 type: object
134
135 properties:
136 interrupts:
137 maxItems: 1
138
139 st,mask-reset:
140 description: mask reset for this regulator,
141 the regulator configuration is maintained during pmic reset.
142 $ref: /schemas/types.yaml#/definitions/flag
143
144 regulator-name: true
145 regulator-boot-on: true
146 regulator-always-on: true
147 regulator-over-current-protection: true
148
149 additionalProperties: false
150
151 vref_ddr:
152 type: object
153
154 properties:
155 interrupts:
156 maxItems: 1
157
158 st,mask-reset:
159 description: mask reset for this regulator,
160 the regulator configuration is maintained during pmic reset.
161 $ref: /schemas/types.yaml#/definitions/flag
162
163 regulator-name: true
164 regulator-boot-on: true
165 regulator-always-on: true
166
167 additionalProperties: false
168
169 boost:
170 type: object
171
172 properties:
173 interrupts:
174 maxItems: 1
175
176 st,mask-reset:
177 description: mask reset for this regulator,
178 the regulator configuration is maintained during pmic reset.
179 $ref: /schemas/types.yaml#/definitions/flag
180
181 regulator-name: true
182 regulator-boot-on: true
183 regulator-always-on: true
184 regulator-over-current-protection: true
185
186 additionalProperties: false
187
188 patternProperties:
189 "^(buck[1-4]|ldo[1-6]|boost|pwr_sw[1-2])-supply$":
190 description: STPMIC1 voltage regulators supplies
191
192 "^(buck[1-4]|ldo[1-6]|boost|vref_ddr|pwr_sw[1-2])$":
193 allOf:
194 - $ref: ../regulator/regulator.yaml
195
196 "^ldo[1-2,5-6]$":
197 type: object
198
199 properties:
200 interrupts:
201 maxItems: 1
202
203 st,mask-reset:
204 description: mask reset for this regulator,
205 the regulator configuration is maintained during pmic reset.
206 $ref: /schemas/types.yaml#/definitions/flag
207
208 regulator-name: true
209 regulator-boot-on: true
210 regulator-always-on: true
211 regulator-min-microvolt: true
212 regulator-max-microvolt: true
213 regulator-over-current-protection: true
214 regulator-enable-ramp-delay: true
215
216 additionalProperties: false
217
218 "^buck[1-4]$":
219 type: object
220
221 properties:
222 interrupts:
223 maxItems: 1
224
225 st,mask-reset:
226 description: mask reset for this regulator,
227 the regulator configuration is maintained during pmic reset.
228 $ref: /schemas/types.yaml#/definitions/flag
229
230 regulator-name: true
231 regulator-boot-on: true
232 regulator-always-on: true
233 regulator-min-microvolt: true
234 regulator-max-microvolt: true
235 regulator-initial-mode: true
236 regulator-pull-down: true
237 regulator-over-current-protection: true
238 regulator-enable-ramp-delay: true
239
240 additionalProperties: false
241
242 "^pwr_sw[1-2]$":
243 type: object
244
245 properties:
246 interrupts:
247 maxItems: 1
248
249 regulator-name: true
250 regulator-boot-on: true
251 regulator-always-on: true
252 regulator-over-current-protection: true
253 regulator-active-discharge: true
254
255 additionalProperties: false
256
257 required:
258 - compatible
259
260 additionalProperties: false
261
2dccf694
BG
262additionalProperties: false
263
264required:
265 - compatible
266 - reg
267 - interrupts
268 - "#interrupt-cells"
269 - interrupt-controller
270
271examples:
272 - |
273 #include <dt-bindings/mfd/st,stpmic1.h>
274 #include <dt-bindings/interrupt-controller/arm-gic.h>
f88d59fc 275 i2c {
2dccf694
BG
276 #address-cells = <1>;
277 #size-cells = <0>;
278 pmic@33 {
279 compatible = "st,stpmic1";
280 reg = <0x33>;
281 interrupt-parent = <&gpioa>;
282 interrupts = <0 2>;
283
284 interrupt-controller;
285 #interrupt-cells = <2>;
286
287 onkey {
288 compatible = "st,stpmic1-onkey";
289 interrupts = <IT_PONKEY_F 0>,<IT_PONKEY_R 1>;
290 interrupt-names = "onkey-falling", "onkey-rising";
291 power-off-time-sec = <10>;
292 };
293
294 watchdog {
295 compatible = "st,stpmic1-wdt";
296 };
297
298 regulators {
299 compatible = "st,stpmic1-regulators";
300
301 ldo6-supply = <&v3v3>;
302
303 buck1 {
304 regulator-name = "vdd_core";
305 interrupts = <IT_CURLIM_BUCK1 0>;
306 st,mask-reset;
307 regulator-boot-on;
308 regulator-min-microvolt = <700000>;
309 regulator-max-microvolt = <1200000>;
310 };
311
312 buck3 {
313 regulator-name = "vdd";
314 regulator-min-microvolt = <3300000>;
315 regulator-max-microvolt = <3300000>;
316 regulator-boot-on;
317 regulator-pull-down;
318 };
319
320 buck4 {
321 regulator-name = "v3v3";
322 interrupts = <IT_CURLIM_BUCK4 0>;
323 regulator-min-microvolt = <3300000>;
324 regulator-max-microvolt = <3300000>;
325 };
326
327 ldo6 {
328 regulator-name = "v1v8";
329 regulator-min-microvolt = <1800000>;
330 regulator-max-microvolt = <1800000>;
331 regulator-over-current-protection;
332 };
333 };
334 };
335 };
336
337...