]> git.ipfire.org Git - people/ms/linux.git/blame - Documentation/devicetree/bindings/regulator/qcom,spmi-regulator.yaml
regulator: Fix qcom,spmi-regulator schema
[people/ms/linux.git] / Documentation / devicetree / bindings / regulator / qcom,spmi-regulator.yaml
CommitLineData
0b3bbd76
RM
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/qcom,spmi-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm SPMI Regulators
8
9maintainers:
10 - Robert Marko <robimarko@gmail.com>
11
12properties:
13 compatible:
14 enum:
15 - qcom,pm660-regulators
16 - qcom,pm660l-regulators
17 - qcom,pm8004-regulators
18 - qcom,pm8005-regulators
19 - qcom,pm8226-regulators
20 - qcom,pm8841-regulators
21 - qcom,pm8916-regulators
22 - qcom,pm8941-regulators
23 - qcom,pm8950-regulators
24 - qcom,pm8994-regulators
25 - qcom,pmi8994-regulators
04475057 26 - qcom,pmp8074-regulators
0b3bbd76
RM
27 - qcom,pms405-regulators
28
29 qcom,saw-reg:
30 description: Reference to syscon node defining the SAW registers
31 $ref: /schemas/types.yaml#/definitions/phandle
32
33patternProperties:
34 "^(5vs[1-2]|(l|s)[1-9][0-9]?|lvs[1-3])$":
35 description: List of regulators and its properties
36 type: object
37 $ref: regulator.yaml#
475043fa 38 unevaluatedProperties: false
0b3bbd76
RM
39
40 properties:
41 qcom,ocp-max-retries:
42 description:
43 Maximum number of times to try toggling a voltage switch off and
44 back on as a result of consecutive over current events
45 $ref: /schemas/types.yaml#/definitions/uint32
46
47 qcom,ocp-retry-delay:
48 description:
49 Time to delay in milliseconds between each voltage switch toggle
50 after an over current event takes place
51 $ref: /schemas/types.yaml#/definitions/uint32
52
53 qcom,pin-ctrl-enable:
54 description:
55 Bit mask specifying which hardware pins should be used to enable the
56 regulator, if any.
57 Supported bits are
58 0 = ignore all hardware enable signals
59 BIT(0) = follow HW0_EN signal
60 BIT(1) = follow HW1_EN signal
61 BIT(2) = follow HW2_EN signal
62 BIT(3) = follow HW3_EN signal
63 $ref: /schemas/types.yaml#/definitions/uint32
64 minimum: 0
65 maximum: 15
66
67 qcom,pin-ctrl-hpm:
68 description:
69 Bit mask specifying which hardware pins should be used to force the
70 regulator into high power mode, if any.
71 Supported bits are
72 0 = ignore all hardware enable signals
73 BIT(0) = follow HW0_EN signal
74 BIT(1) = follow HW1_EN signal
75 BIT(2) = follow HW2_EN signal
76 BIT(3) = follow HW3_EN signal
77 BIT(4) = follow PMIC awake state
78 $ref: /schemas/types.yaml#/definitions/uint32
79 minimum: 0
80 maximum: 31
81
82 qcom,vs-soft-start-strength:
83 description:
84 This property sets the soft start strength for voltage switch type
85 regulators.
86 Supported values are
87 0 = 0.05 uA
88 1 = 0.25 uA
89 2 = 0.55 uA
90 3 = 0.75 uA
91 $ref: /schemas/types.yaml#/definitions/uint32
92 minimum: 0
93 maximum: 3
94
95 qcom,saw-slave:
96 description: SAW controlled gang slave. Will not be configured.
97 type: boolean
98
99 qcom,saw-leader:
100 description:
101 SAW controlled gang leader. Will be configured as SAW regulator.
102 type: boolean
103
0b3bbd76
RM
104required:
105 - compatible
106
107allOf:
108 - if:
109 properties:
110 compatible:
111 contains:
112 enum:
113 - qcom,pm660-regulators
114 then:
115 properties:
116 vdd_l15_l16_l17_l18_l19-supply: true
117 vdd_l1_l6_l7-supply: true
118 vdd_l2_l3-supply: true
119 vdd_l5-supply: true
120 vdd_l8_l9_l10_l11_l12_l13_l14-supply: true
121 patternProperties:
122 "^vdd_s[1-6]-supply$": true
123 - if:
124 properties:
125 compatible:
126 contains:
127 enum:
128 - qcom,pm660l-regulators
129 then:
130 properties:
131 vdd_l1_l9_l10-supply: true
132 vdd_l2-supply: true
133 vdd_l3_l5_l7_l8-supply: true
134 vdd_l4_l6-supply: true
135 patternProperties:
136 "^vdd_s[1-5]-supply$": true
137 - if:
138 properties:
139 compatible:
140 contains:
141 enum:
142 - qcom,pm8004-regulators
143 then:
144 patternProperties:
145 "^vdd_s[25]-supply$": true
146 - if:
147 properties:
148 compatible:
149 contains:
150 enum:
151 - qcom,pm8005-regulators
152 then:
153 patternProperties:
154 "^vdd_s[1-4]-supply$": true
155 - if:
156 properties:
157 compatible:
158 contains:
159 enum:
160 - qcom,pm8226-regulators
161 then:
162 properties:
163 vdd_l10_l11_l13-supply: true
164 vdd_l12_l14-supply: true
165 vdd_l15_l16_l17_l18-supply: true
166 vdd_l19_l20_l21_l22_l23_l28-supply: true
167 vdd_l1_l2_l4_l5-supply: true
168 vdd_l25-supply: true
169 vdd_l3_l24_l26-supply: true
170 vdd_l6_l7_l8_l9_l27-supply: true
171 vdd_lvs1-supply: true
172 patternProperties:
173 "^vdd_s[1-5]-supply$": true
174 - if:
175 properties:
176 compatible:
177 contains:
178 enum:
179 - qcom,pm8841-regulators
180 then:
181 patternProperties:
182 "^vdd_s[1-8]-supply$": true
183 - if:
184 properties:
185 compatible:
186 contains:
187 enum:
188 - qcom,pm8916-regulators
189 then:
190 properties:
191 vdd_l1_l3-supply: true
192 vdd_l4_l5_l6-supply: true
193 vdd_l8_l11_l14_l15_l16-supply: true
194 vdd_l9_l10_l12_l13_l17_l18-supply: true
195 patternProperties:
196 "^vdd_l[27]-supply$": true
197 "^vdd_s[1-4]-supply$": true
198 - if:
199 properties:
200 compatible:
201 contains:
202 enum:
203 - qcom,pm8941-regulators
204 then:
205 properties:
206 interrupts:
207 items:
208 - description: Over-current protection interrupt for 5V S1
209 - description: Over-current protection interrupt for 5V S2
210 interrupt-names:
211 items:
212 - const: ocp-5vs1
213 - const: ocp-5vs2
214 vdd_l13_l20_l23_l24-supply: true
215 vdd_l1_l3-supply: true
216 vdd_l21-supply: true
217 vdd_l2_lvs_1_2_3-supply: true
218 vdd_l4_l11-supply: true
219 vdd_l5_l7-supply: true
220 vdd_l6_l12_l14_l15-supply: true
221 vdd_l8_l16_l18_19-supply: true
222 vdd_l9_l10_l17_l22-supply: true
223 vin_5vs-supply: true
224 patternProperties:
225 "^vdd_s[1-3]-supply$": true
226 - if:
227 properties:
228 compatible:
229 contains:
230 enum:
231 - qcom,pm8950-regulators
232 then:
233 properties:
234 vdd_l1_l19-supply: true
235 vdd_l20-supply: true
236 vdd_l21-supply: true
237 vdd_l2_l23-supply: true
238 vdd_l3-supply: true
239 vdd_l4_l5_l6_l7_l16-supply: true
240 vdd_l8_l11_l12_l17_l22-supply: true
241 vdd_l9_l10_l13_l14_l15_l18-supply: true
242 patternProperties:
243 "^vdd_s[1-6]-supply$": true
244 - if:
245 properties:
246 compatible:
247 contains:
248 enum:
249 - qcom,pm8994-regulators
250 then:
251 properties:
252 vdd_l1-supply: true
253 vdd_l13_l19_l23_l24-supply: true
254 vdd_l14_l15-supply: true
255 vdd_l17_l29-supply: true
256 vdd_l20_l21-supply: true
257 vdd_l25-supply: true
258 vdd_l2_l26_l28-supply: true
259 vdd_l3_l11-supply: true
260 vdd_l4_l27_l31-supply: true
261 vdd_l5_l7-supply: true
262 vdd_l6_l12_l32-supply: true
263 vdd_l8_l16_l30-supply: true
264 vdd_l9_l10_l18_l22-supply: true
265 vdd_lvs_1_2-supply: true
266 patternProperties:
267 "^vdd_s[1-9][0-2]?-supply$": true
268 - if:
269 properties:
270 compatible:
271 contains:
272 enum:
273 - qcom,pmi8994-regulators
274 then:
275 properties:
276 vdd_l1-supply: true
277 patternProperties:
278 "^vdd_s[1-3]-supply$": true
04475057
RM
279 - if:
280 properties:
281 compatible:
282 contains:
283 enum:
284 - qcom,pmp8074-regulators
285 then:
286 properties:
287 vdd_l10_l11_l12_l13-supply: true
288 vdd_l1_l2-supply: true
289 vdd_l3_l8-supply: true
290 vdd_l5_l6_l15-supply: true
291 patternProperties:
292 "^vdd_l[479]-supply$": true
293 "^vdd_s[1-5]-supply$": true
0b3bbd76
RM
294 - if:
295 properties:
296 compatible:
297 contains:
298 enum:
299 - qcom,pms405-regulators
300 then:
301 properties:
302 vdd_s3-supply: true
303
304unevaluatedProperties: false
305
306examples:
307 - |
308 regulators {
309 compatible = "qcom,pm8941-regulators";
310 vdd_l1_l3-supply = <&s1>;
311
312 s1: s1 {
313 regulator-min-microvolt = <1300000>;
314 regulator-max-microvolt = <1400000>;
315 };
316
317 l1: l1 {
318 regulator-min-microvolt = <1225000>;
319 regulator-max-microvolt = <1300000>;
320 };
321 };
322...