blob: 49bf4ead04244e504c5042ae873978176586f58d [file] [log] [blame]
David Collins998e2a92014-01-09 12:20:49 -08001/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
David Collinsc8b25592013-06-14 14:21:59 -07002 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 */
12
13
14/* QPNP controlled regulators: */
15
16&spmi_bus {
17 qcom,pma8084@1 {
18 pma8084_mvs1: regulator@8400 {
19 qcom,enable-time = <1000>;
20 qcom,pull-down-enable = <1>;
21 interrupts = <0x1 0x84 0x2>;
22 interrupt-names = "ocp";
23 qcom,ocp-enable = <1>;
24 qcom,ocp-max-retries = <10>;
25 qcom,ocp-retry-delay = <30>;
26 qcom,soft-start-enable = <1>;
27 qcom,vs-soft-start-strength = <0>;
28 qcom,hpm-enable = <1>;
29 qcom,auto-mode-enable = <0>;
30 status = "okay";
31 };
32 };
33};
34
35/* RPM controlled regulators: */
36
37&rpm_bus {
38 rpm-regulator-smpa1 {
39 status = "okay";
40 pma8084_s1: regulator-s1 {
41 regulator-min-microvolt = <675000>;
42 regulator-max-microvolt = <1050000>;
43 status = "okay";
44 };
45 pma8084_s1_ao: regulator-s1-ao {
46 regulator-name = "8084_s1_ao";
47 qcom,set = <1>;
48 regulator-min-microvolt = <675000>;
49 regulator-max-microvolt = <1050000>;
50 status = "okay";
51 compatible = "qcom,rpm-regulator-smd";
52 };
53 pma8084_s1_so: regulator-s1-so {
54 regulator-name = "8084_s1_so";
55 qcom,set = <2>;
56 regulator-min-microvolt = <675000>;
57 regulator-max-microvolt = <1050000>;
58 qcom,init-voltage = <675000>;
59 status = "okay";
60 compatible = "qcom,rpm-regulator-smd";
61 };
62 };
63
64 rpm-regulator-smpa2 {
65 status = "okay";
66 pma8084_s2: regulator-s2 {
67 regulator-min-microvolt = <500000>;
68 regulator-max-microvolt = <1050000>;
69 status = "okay";
70 };
71 pma8084_s2_corner: regulator-s2-corner {
72 regulator-name = "8084_s2_corner";
73 qcom,set = <3>;
74 regulator-min-microvolt = <1>;
75 regulator-max-microvolt = <7>;
76 qcom,use-voltage-corner;
77 compatible = "qcom,rpm-regulator-smd";
78 qcom,consumer-supplies = "vdd_dig", "";
79 };
80 pma8084_s2_corner_ao: regulator-s2-corner-ao {
81 regulator-name = "8084_s2_corner_ao";
82 qcom,set = <1>;
83 regulator-min-microvolt = <1>;
84 regulator-max-microvolt = <7>;
85 qcom,use-voltage-corner;
86 compatible = "qcom,rpm-regulator-smd";
87 };
88 pma8084_s2_floor_corner: regulator-s2-floor-corner {
89 compatible = "qcom,rpm-regulator-smd";
90 regulator-name = "8084_s2_floor_corner";
91 qcom,set = <3>;
92 regulator-min-microvolt = <1>;
93 regulator-max-microvolt = <7>;
94 qcom,use-voltage-floor-corner;
95 qcom,always-send-voltage;
96 };
97 };
98
99
100 rpm-regulator-smpa3 {
101 status = "okay";
102 pma8084_s3: regulator-s3 {
103 regulator-min-microvolt = <1300000>;
104 regulator-max-microvolt = <1300000>;
105 qcom,init-voltage = <1300000>;
106 status = "okay";
107 };
108 };
109
110 rpm-regulator-smpa4 {
111 status = "okay";
112 pma8084_s4: regulator-s4 {
113 regulator-min-microvolt = <1800000>;
114 regulator-max-microvolt = <1800000>;
115 qcom,init-voltage = <1800000>;
116 status = "okay";
117 };
118 };
119
120 rpm-regulator-smpa5 {
121 status = "okay";
122 pma8084_s5: regulator-s5 {
123 regulator-min-microvolt = <2150000>;
124 regulator-max-microvolt = <2150000>;
125 qcom,init-voltage = <2150000>;
126 status = "okay";
127 };
128 };
129
130 rpm-regulator-smpa6 {
131 status = "okay";
132 pma8084_s6: regulator-s6 {
133 regulator-min-microvolt = <1050000>;
134 regulator-max-microvolt = <1050000>;
135 qcom,init-voltage = <1050000>;
136 status = "okay";
137 };
138 };
139
140 rpm-regulator-smpa7 {
141 status = "okay";
142 pma8084_s7: regulator-s7 {
143 regulator-min-microvolt = <815000>;
144 regulator-max-microvolt = <900000>;
145 status = "okay";
146 };
147 pma8084_s7_corner: regulator-s7-corner {
148 compatible = "qcom,rpm-regulator-smd";
149 regulator-name = "8084_s7_corner";
150 qcom,set = <3>;
151 qcom,use-voltage-corner;
152 regulator-min-microvolt = <1>;
153 regulator-max-microvolt = <7>;
154 qcom,init-voltage-corner = <3>; /* SVS SOC */
155 };
156 pma8084_s7_floor_corner: regulator-s7-floor-corner {
157 compatible = "qcom,rpm-regulator-smd";
158 regulator-name = "8084_s7_floor_corner";
159 qcom,set = <3>;
160 regulator-min-microvolt = <1>;
161 regulator-max-microvolt = <7>;
162 qcom,use-voltage-floor-corner;
163 qcom,always-send-voltage;
164 };
165 };
166
167 rpm-regulator-ldoa1 {
168 status = "okay";
169 pma8084_l1: regulator-l1 {
170 regulator-min-microvolt = <1225000>;
171 regulator-max-microvolt = <1225000>;
172 qcom,init-voltage = <1225000>;
173 status = "okay";
174 };
175 };
176
177 rpm-regulator-ldoa2 {
178 status = "okay";
179 pma8084_l2: regulator-l2 {
180 regulator-min-microvolt = <1200000>;
181 regulator-max-microvolt = <1200000>;
182 qcom,init-voltage = <1200000>;
183 status = "okay";
184 };
185 };
186
187 rpm-regulator-ldoa3 {
188 status = "okay";
189 pma8084_l3: regulator-l3 {
190 regulator-min-microvolt = <1225000>;
191 regulator-max-microvolt = <1225000>;
192 qcom,init-voltage = <1225000>;
193 status = "okay";
194 };
195 };
196
197 rpm-regulator-ldoa4 {
198 status = "okay";
199 pma8084_l4: regulator-l4 {
200 regulator-min-microvolt = <1200000>;
201 regulator-max-microvolt = <1225000>;
202 qcom,init-voltage = <1225000>;
203 status = "okay";
204 };
205 };
206
207 rpm-regulator-ldoa5 {
208 status = "okay";
209 pma8084_l5: regulator-l5 {
210 regulator-min-microvolt = <1800000>;
211 regulator-max-microvolt = <1800000>;
212 qcom,init-voltage = <1800000>;
213 status = "okay";
214 };
215 };
216
217 rpm-regulator-ldoa6 {
218 status = "okay";
219 pma8084_l6: regulator-l6 {
220 regulator-min-microvolt = <1800000>;
221 regulator-max-microvolt = <1800000>;
222 qcom,init-voltage = <1800000>;
223 status = "okay";
224 };
225 };
226
227 rpm-regulator-ldoa7 {
228 status = "okay";
229 pma8084_l7: regulator-l7 {
230 regulator-min-microvolt = <1800000>;
231 regulator-max-microvolt = <1800000>;
232 qcom,init-voltage = <1800000>;
233 status = "okay";
234 };
235 };
236
237 rpm-regulator-ldoa8 {
238 status = "okay";
239 pma8084_l8: regulator-l8 {
240 regulator-min-microvolt = <1800000>;
241 regulator-max-microvolt = <1800000>;
242 qcom,init-voltage = <1800000>;
243 status = "okay";
244 };
245 };
246
247 rpm-regulator-ldoa9 {
248 status = "okay";
249 pma8084_l9: regulator-l9 {
250 regulator-min-microvolt = <1800000>;
251 regulator-max-microvolt = <2950000>;
252 qcom,init-voltage = <2950000>;
253 status = "okay";
254 };
255 };
256
257 rpm-regulator-ldoa10 {
258 status = "okay";
259 pma8084_l10: regulator-l10 {
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <2950000>;
262 qcom,init-voltage = <2950000>;
263 status = "okay";
264 };
265 };
266
267 rpm-regulator-ldoa11 {
268 status = "okay";
269 pma8084_l11: regulator-l11 {
David Collins998e2a92014-01-09 12:20:49 -0800270 regulator-min-microvolt = <1225000>;
David Collinsc8b25592013-06-14 14:21:59 -0700271 regulator-max-microvolt = <1300000>;
272 qcom,init-voltage = <1300000>;
273 status = "okay";
274 };
275 };
276
277 rpm-regulator-ldoa12 {
278 status = "okay";
279 pma8084_l12: regulator-l12 {
280 regulator-min-microvolt = <1800000>;
281 regulator-max-microvolt = <1800000>;
282 status = "okay";
283 };
284 pma8084_l12_ao: regulator-l12-ao {
285 regulator-name = "8084_l12_ao";
286 qcom,set = <1>;
287 regulator-min-microvolt = <1800000>;
288 regulator-max-microvolt = <1800000>;
289 status = "okay";
290 compatible = "qcom,rpm-regulator-smd";
291 };
292 };
293
294 rpm-regulator-ldoa13 {
295 status = "okay";
296 pma8084_l13: regulator-l13 {
297 regulator-min-microvolt = <1800000>;
298 regulator-max-microvolt = <2950000>;
299 qcom,init-voltage = <2950000>;
300 status = "okay";
301 };
302 };
303
304 rpm-regulator-ldoa14 {
305 status = "okay";
306 pma8084_l14: regulator-l14 {
307 regulator-min-microvolt = <1800000>;
308 regulator-max-microvolt = <1800000>;
309 qcom,init-voltage = <1800000>;
310 status = "okay";
311 };
312 };
313
314 rpm-regulator-ldoa15 {
315 status = "okay";
316 pma8084_l15: regulator-l15 {
317 regulator-min-microvolt = <2050000>;
318 regulator-max-microvolt = <2050000>;
319 qcom,init-voltage = <2050000>;
320 status = "okay";
321 };
322 };
323
324 rpm-regulator-ldoa16 {
325 status = "okay";
326 pma8084_l16: regulator-l16 {
327 regulator-min-microvolt = <2700000>;
328 regulator-max-microvolt = <2700000>;
329 qcom,init-voltage = <2700000>;
330 status = "okay";
331 };
332 };
333
334 rpm-regulator-ldoa17 {
335 status = "okay";
336 pma8084_l17: regulator-l17 {
337 regulator-min-microvolt = <2850000>;
338 regulator-max-microvolt = <2850000>;
339 qcom,init-voltage = <2850000>;
340 status = "okay";
341 };
342 };
343
344 rpm-regulator-ldoa18 {
345 status = "okay";
346 pma8084_l18: regulator-l18 {
347 regulator-min-microvolt = <2850000>;
348 regulator-max-microvolt = <2850000>;
349 qcom,init-voltage = <2850000>;
350 status = "okay";
351 };
352 };
353
354 rpm-regulator-ldoa19 {
355 status = "okay";
356 pma8084_l19: regulator-l19 {
357 regulator-min-microvolt = <2900000>;
358 regulator-max-microvolt = <3300000>;
359 qcom,init-voltage = <2900000>;
360 status = "okay";
361 };
362 };
363
364 rpm-regulator-ldoa20 {
365 status = "okay";
366 pma8084_l20: regulator-l20 {
367 regulator-min-microvolt = <2950000>;
368 regulator-max-microvolt = <2950000>;
369 qcom,init-voltage = <2950000>;
370 status = "okay";
371 };
372 };
373
374 rpm-regulator-ldoa21 {
375 status = "okay";
376 pma8084_l21: regulator-l21 {
377 regulator-min-microvolt = <2950000>;
378 regulator-max-microvolt = <2950000>;
379 qcom,init-voltage = <2950000>;
380 status = "okay";
381 };
382 };
383
384 rpm-regulator-ldoa22 {
385 status = "okay";
386 pma8084_l22: regulator-l22 {
387 regulator-min-microvolt = <3000000>;
388 regulator-max-microvolt = <3000000>;
389 qcom,init-voltage = <3000000>;
390 status = "okay";
391 };
392 };
393
394 rpm-regulator-ldoa23 {
395 status = "okay";
396 pma8084_l23: regulator-l23 {
397 regulator-min-microvolt = <3000000>;
398 regulator-max-microvolt = <3000000>;
399 qcom,init-voltage = <3000000>;
400 status = "okay";
401 };
402 };
403
404 rpm-regulator-ldoa24 {
405 status = "okay";
406 pma8084_l24: regulator-l24 {
407 regulator-min-microvolt = <3075000>;
408 regulator-max-microvolt = <3075000>;
409 qcom,init-voltage = <3075000>;
410 status = "okay";
411 };
412 };
413
414 rpm-regulator-ldoa25 {
415 status = "okay";
416 pma8084_l25: regulator-l25 {
417 regulator-min-microvolt = <2100000>;
418 regulator-max-microvolt = <2100000>;
419 qcom,init-voltage = <2100000>;
420 status = "okay";
421 };
422 };
423
424 rpm-regulator-ldoa26 {
425 status = "okay";
426 pma8084_l26: regulator-l26 {
427 regulator-min-microvolt = <2050000>;
428 regulator-max-microvolt = <2050000>;
429 qcom,init-voltage = <2050000>;
430 status = "okay";
431 };
432 };
433
434 rpm-regulator-ldoa27 {
435 status = "okay";
436 pma8084_l27: regulator-l27 {
437 regulator-min-microvolt = <1200000>;
438 regulator-max-microvolt = <1225000>;
439 qcom,init-voltage = <1200000>;
440 status = "okay";
441 };
442 };
443
444 rpm-regulator-vsa1 {
445 status = "okay";
446 pma8084_lvs1: regulator-lvs1 {
447 status = "okay";
448 };
449 };
450
451 rpm-regulator-vsa2 {
452 status = "okay";
453 pma8084_lvs2: regulator-lvs2 {
454 status = "okay";
455 };
456 };
457
458 rpm-regulator-vsa3 {
459 status = "okay";
460 pma8084_lvs3: regulator-lvs3 {
461 status = "okay";
462 };
463 };
464
465 rpm-regulator-vsa4 {
466 status = "okay";
467 pma8084_lvs4: regulator-lvs4 {
468 status = "okay";
469 };
470 };
471};
472
473&soc {
474 krait_pdn: krait-pdn@f9011000 {
475 reg = <0xf9011000 0x1000>,
476 <0xfc4b80b0 8>;
477 reg-names = "apcs_gcc", "phase-scaling-efuse";
478 compatible = "qcom,krait-pdn";
479 #address-cells = <1>;
480 #size-cells = <1>;
481 ranges;
Abhijeet Dharmapurikar414f6882013-08-31 18:53:06 -0700482 qcom,pfm-threshold = <76>;
Abhijeet Dharmapurikar4b61d4f2013-10-18 20:34:58 -0700483 qcom,use-phase-scaling-factor;
Abhijeet Dharmapurikar5c50e2f2014-02-20 20:36:11 -0800484 qcom,phase-scaling-factor-bits-pos = <16>;
485 qcom,valid-scaling-factor-versions = <0 1 1 0>;
David Collinsc8b25592013-06-14 14:21:59 -0700486
487 krait0_vreg: regulator@f9088000 {
488 compatible = "qcom,krait-regulator";
489 regulator-name = "krait0";
490 reg = <0xf9088000 0x1000>, /* APCS_ALIAS0_KPSS_ACS */
491 <0xf908a800 0x1000>; /* APCS_ALIAS0_KPSS_MDD */
492 reg-names = "acs", "mdd";
493 regulator-min-microvolt = <500000>;
Junjie Wu576a6472013-10-02 13:54:33 -0700494 regulator-max-microvolt = <1120000>;
David Collinsc8b25592013-06-14 14:21:59 -0700495 qcom,headroom-voltage = <150000>;
496 qcom,retention-voltage = <675000>;
497 qcom,ldo-default-voltage = <750000>;
498 qcom,ldo-threshold-voltage = <850000>;
Abhijeet Dharmapurikar14416412013-12-18 13:19:44 -0800499 qcom,ldo-delta-voltage = <12500>;
David Collinsc8b25592013-06-14 14:21:59 -0700500 qcom,cpu-num = <0>;
501 };
502
503 krait1_vreg: regulator@f9098000 {
504 compatible = "qcom,krait-regulator";
505 regulator-name = "krait1";
506 reg = <0xf9098000 0x1000>, /* APCS_ALIAS1_KPSS_ACS */
507 <0xf909a800 0x1000>; /* APCS_ALIAS1_KPSS_MDD */
508 reg-names = "acs", "mdd";
509 regulator-min-microvolt = <500000>;
Junjie Wu576a6472013-10-02 13:54:33 -0700510 regulator-max-microvolt = <1120000>;
David Collinsc8b25592013-06-14 14:21:59 -0700511 qcom,headroom-voltage = <150000>;
512 qcom,retention-voltage = <675000>;
513 qcom,ldo-default-voltage = <750000>;
514 qcom,ldo-threshold-voltage = <850000>;
Abhijeet Dharmapurikar14416412013-12-18 13:19:44 -0800515 qcom,ldo-delta-voltage = <12500>;
David Collinsc8b25592013-06-14 14:21:59 -0700516 qcom,cpu-num = <1>;
517 };
518
519 krait2_vreg: regulator@f90a8000 {
520 compatible = "qcom,krait-regulator";
521 regulator-name = "krait2";
522 reg = <0xf90a8000 0x1000>, /* APCS_ALIAS2_KPSS_ACS */
523 <0xf90aa800 0x1000>; /* APCS_ALIAS2_KPSS_MDD */
524 reg-names = "acs", "mdd";
525 regulator-min-microvolt = <500000>;
Junjie Wu576a6472013-10-02 13:54:33 -0700526 regulator-max-microvolt = <1120000>;
David Collinsc8b25592013-06-14 14:21:59 -0700527 qcom,headroom-voltage = <150000>;
528 qcom,retention-voltage = <675000>;
529 qcom,ldo-default-voltage = <750000>;
530 qcom,ldo-threshold-voltage = <850000>;
Abhijeet Dharmapurikar14416412013-12-18 13:19:44 -0800531 qcom,ldo-delta-voltage = <12500>;
David Collinsc8b25592013-06-14 14:21:59 -0700532 qcom,cpu-num = <2>;
533 };
534
535 krait3_vreg: regulator@f90b8000 {
536 compatible = "qcom,krait-regulator";
537 regulator-name = "krait3";
538 reg = <0xf90b8000 0x1000>, /* APCS_ALIAS3_KPSS_ACS */
539 <0xf90ba800 0x1000>; /* APCS_ALIAS3_KPSS_MDD */
540 reg-names = "acs", "mdd";
541 regulator-min-microvolt = <500000>;
Junjie Wu576a6472013-10-02 13:54:33 -0700542 regulator-max-microvolt = <1120000>;
David Collinsc8b25592013-06-14 14:21:59 -0700543 qcom,headroom-voltage = <150000>;
544 qcom,retention-voltage = <675000>;
545 qcom,ldo-default-voltage = <750000>;
546 qcom,ldo-threshold-voltage = <850000>;
Abhijeet Dharmapurikar14416412013-12-18 13:19:44 -0800547 qcom,ldo-delta-voltage = <12500>;
David Collinsc8b25592013-06-14 14:21:59 -0700548 qcom,cpu-num = <3>;
549 };
550 };
551
552 /* SPI expects a regulator device, but no hardware is present. */
553 spi_eth_vreg: spi_eth_phy_vreg {
554 compatible = "regulator-fixed";
555 regulator-name = "ethernet_phy";
556 regulator-always-on;
557 };
558
559 /*
560 * vph_pwr_vreg represents the unregulated battery voltage supply
561 * VPH_PWR that is present whenever the device is powered on.
562 */
563 vph_pwr_vreg: vph_pwr_vreg {
564 compatible = "regulator-fixed";
565 status = "disabled";
566 regulator-name = "vph_pwr";
567 regulator-always-on;
568 };
569};