Skip to content

Commit db242e8

Browse files
sremmind
authored andcommitted
arm64: dts: rockchip: add PMIC to rock-5b
This adds PMIC support for the Radxa ROCK 5B Signed-off-by: shengfei Xu <xsf@rock-chips.com> Co-developed-by: shengfei Xu <xsf@rock-chips.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230529170532.59804-1-sebastian.reichel@collabora.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
1 parent 28ee08c commit db242e8

1 file changed

Lines changed: 350 additions & 0 deletions

File tree

arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts

Lines changed: 350 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,16 @@
5151
regulator-min-microvolt = <5000000>;
5252
regulator-max-microvolt = <5000000>;
5353
};
54+
55+
vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
56+
compatible = "regulator-fixed";
57+
regulator-name = "vcc_1v1_nldo_s3";
58+
regulator-always-on;
59+
regulator-boot-on;
60+
regulator-min-microvolt = <1100000>;
61+
regulator-max-microvolt = <1100000>;
62+
vin-supply = <&vcc5v0_sys>;
63+
};
5464
};
5565

5666
&cpu_b0 {
@@ -69,6 +79,22 @@
6979
cpu-supply = <&vdd_cpu_big1_s0>;
7080
};
7181

82+
&cpu_l0 {
83+
cpu-supply = <&vdd_cpu_lit_s0>;
84+
};
85+
86+
&cpu_l1 {
87+
cpu-supply = <&vdd_cpu_lit_s0>;
88+
};
89+
90+
&cpu_l2 {
91+
cpu-supply = <&vdd_cpu_lit_s0>;
92+
};
93+
94+
&cpu_l3 {
95+
cpu-supply = <&vdd_cpu_lit_s0>;
96+
};
97+
7298
&i2c0 {
7399
pinctrl-names = "default";
74100
pinctrl-0 = <&i2c0m2_xfer>;
@@ -192,6 +218,330 @@
192218
status = "okay";
193219
};
194220

221+
&spi2 {
222+
status = "okay";
223+
assigned-clocks = <&cru CLK_SPI2>;
224+
assigned-clock-rates = <200000000>;
225+
pinctrl-names = "default";
226+
pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
227+
num-cs = <1>;
228+
229+
pmic@0 {
230+
compatible = "rockchip,rk806";
231+
spi-max-frequency = <1000000>;
232+
reg = <0x0>;
233+
234+
interrupt-parent = <&gpio0>;
235+
interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
236+
237+
pinctrl-names = "default";
238+
pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
239+
<&rk806_dvs2_null>, <&rk806_dvs3_null>;
240+
241+
vcc1-supply = <&vcc5v0_sys>;
242+
vcc2-supply = <&vcc5v0_sys>;
243+
vcc3-supply = <&vcc5v0_sys>;
244+
vcc4-supply = <&vcc5v0_sys>;
245+
vcc5-supply = <&vcc5v0_sys>;
246+
vcc6-supply = <&vcc5v0_sys>;
247+
vcc7-supply = <&vcc5v0_sys>;
248+
vcc8-supply = <&vcc5v0_sys>;
249+
vcc9-supply = <&vcc5v0_sys>;
250+
vcc10-supply = <&vcc5v0_sys>;
251+
vcc11-supply = <&vcc_2v0_pldo_s3>;
252+
vcc12-supply = <&vcc5v0_sys>;
253+
vcc13-supply = <&vcc_1v1_nldo_s3>;
254+
vcc14-supply = <&vcc_1v1_nldo_s3>;
255+
vcca-supply = <&vcc5v0_sys>;
256+
257+
gpio-controller;
258+
#gpio-cells = <2>;
259+
260+
rk806_dvs1_null: dvs1-null-pins {
261+
pins = "gpio_pwrctrl2";
262+
function = "pin_fun0";
263+
};
264+
265+
rk806_dvs2_null: dvs2-null-pins {
266+
pins = "gpio_pwrctrl2";
267+
function = "pin_fun0";
268+
};
269+
270+
rk806_dvs3_null: dvs3-null-pins {
271+
pins = "gpio_pwrctrl3";
272+
function = "pin_fun0";
273+
};
274+
275+
regulators {
276+
vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
277+
regulator-boot-on;
278+
regulator-min-microvolt = <550000>;
279+
regulator-max-microvolt = <950000>;
280+
regulator-ramp-delay = <12500>;
281+
regulator-name = "vdd_gpu_s0";
282+
regulator-enable-ramp-delay = <400>;
283+
284+
regulator-state-mem {
285+
regulator-off-in-suspend;
286+
};
287+
};
288+
289+
vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
290+
regulator-always-on;
291+
regulator-boot-on;
292+
regulator-min-microvolt = <550000>;
293+
regulator-max-microvolt = <950000>;
294+
regulator-ramp-delay = <12500>;
295+
regulator-name = "vdd_cpu_lit_s0";
296+
297+
regulator-state-mem {
298+
regulator-off-in-suspend;
299+
};
300+
};
301+
302+
vdd_log_s0: dcdc-reg3 {
303+
regulator-always-on;
304+
regulator-boot-on;
305+
regulator-min-microvolt = <675000>;
306+
regulator-max-microvolt = <750000>;
307+
regulator-ramp-delay = <12500>;
308+
regulator-name = "vdd_log_s0";
309+
310+
regulator-state-mem {
311+
regulator-off-in-suspend;
312+
regulator-suspend-microvolt = <750000>;
313+
};
314+
};
315+
316+
vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
317+
regulator-always-on;
318+
regulator-boot-on;
319+
regulator-min-microvolt = <550000>;
320+
regulator-max-microvolt = <950000>;
321+
regulator-init-microvolt = <750000>;
322+
regulator-ramp-delay = <12500>;
323+
regulator-name = "vdd_vdenc_s0";
324+
325+
regulator-state-mem {
326+
regulator-off-in-suspend;
327+
};
328+
};
329+
330+
vdd_ddr_s0: dcdc-reg5 {
331+
regulator-always-on;
332+
regulator-boot-on;
333+
regulator-min-microvolt = <675000>;
334+
regulator-max-microvolt = <900000>;
335+
regulator-ramp-delay = <12500>;
336+
regulator-name = "vdd_ddr_s0";
337+
338+
regulator-state-mem {
339+
regulator-off-in-suspend;
340+
regulator-suspend-microvolt = <850000>;
341+
};
342+
};
343+
344+
vdd2_ddr_s3: dcdc-reg6 {
345+
regulator-always-on;
346+
regulator-boot-on;
347+
regulator-name = "vdd2_ddr_s3";
348+
349+
regulator-state-mem {
350+
regulator-on-in-suspend;
351+
};
352+
};
353+
354+
vcc_2v0_pldo_s3: dcdc-reg7 {
355+
regulator-always-on;
356+
regulator-boot-on;
357+
regulator-min-microvolt = <2000000>;
358+
regulator-max-microvolt = <2000000>;
359+
regulator-ramp-delay = <12500>;
360+
regulator-name = "vdd_2v0_pldo_s3";
361+
362+
regulator-state-mem {
363+
regulator-on-in-suspend;
364+
regulator-suspend-microvolt = <2000000>;
365+
};
366+
};
367+
368+
vcc_3v3_s3: dcdc-reg8 {
369+
regulator-always-on;
370+
regulator-boot-on;
371+
regulator-min-microvolt = <3300000>;
372+
regulator-max-microvolt = <3300000>;
373+
regulator-name = "vcc_3v3_s3";
374+
375+
regulator-state-mem {
376+
regulator-on-in-suspend;
377+
regulator-suspend-microvolt = <3300000>;
378+
};
379+
};
380+
381+
vddq_ddr_s0: dcdc-reg9 {
382+
regulator-always-on;
383+
regulator-boot-on;
384+
regulator-name = "vddq_ddr_s0";
385+
386+
regulator-state-mem {
387+
regulator-off-in-suspend;
388+
};
389+
};
390+
391+
vcc_1v8_s3: dcdc-reg10 {
392+
regulator-always-on;
393+
regulator-boot-on;
394+
regulator-min-microvolt = <1800000>;
395+
regulator-max-microvolt = <1800000>;
396+
regulator-name = "vcc_1v8_s3";
397+
398+
regulator-state-mem {
399+
regulator-on-in-suspend;
400+
regulator-suspend-microvolt = <1800000>;
401+
};
402+
};
403+
404+
avcc_1v8_s0: pldo-reg1 {
405+
regulator-always-on;
406+
regulator-boot-on;
407+
regulator-min-microvolt = <1800000>;
408+
regulator-max-microvolt = <1800000>;
409+
regulator-name = "avcc_1v8_s0";
410+
411+
regulator-state-mem {
412+
regulator-off-in-suspend;
413+
};
414+
};
415+
416+
vcc_1v8_s0: pldo-reg2 {
417+
regulator-always-on;
418+
regulator-boot-on;
419+
regulator-min-microvolt = <1800000>;
420+
regulator-max-microvolt = <1800000>;
421+
regulator-name = "vcc_1v8_s0";
422+
423+
regulator-state-mem {
424+
regulator-off-in-suspend;
425+
regulator-suspend-microvolt = <1800000>;
426+
};
427+
};
428+
429+
avdd_1v2_s0: pldo-reg3 {
430+
regulator-always-on;
431+
regulator-boot-on;
432+
regulator-min-microvolt = <1200000>;
433+
regulator-max-microvolt = <1200000>;
434+
regulator-name = "avdd_1v2_s0";
435+
436+
regulator-state-mem {
437+
regulator-off-in-suspend;
438+
};
439+
};
440+
441+
vcc_3v3_s0: pldo-reg4 {
442+
regulator-always-on;
443+
regulator-boot-on;
444+
regulator-min-microvolt = <3300000>;
445+
regulator-max-microvolt = <3300000>;
446+
regulator-ramp-delay = <12500>;
447+
regulator-name = "vcc_3v3_s0";
448+
449+
regulator-state-mem {
450+
regulator-off-in-suspend;
451+
};
452+
};
453+
454+
vccio_sd_s0: pldo-reg5 {
455+
regulator-always-on;
456+
regulator-boot-on;
457+
regulator-min-microvolt = <1800000>;
458+
regulator-max-microvolt = <3300000>;
459+
regulator-ramp-delay = <12500>;
460+
regulator-name = "vccio_sd_s0";
461+
462+
regulator-state-mem {
463+
regulator-off-in-suspend;
464+
};
465+
};
466+
467+
pldo6_s3: pldo-reg6 {
468+
regulator-always-on;
469+
regulator-boot-on;
470+
regulator-min-microvolt = <1800000>;
471+
regulator-max-microvolt = <1800000>;
472+
regulator-name = "pldo6_s3";
473+
474+
regulator-state-mem {
475+
regulator-on-in-suspend;
476+
regulator-suspend-microvolt = <1800000>;
477+
};
478+
};
479+
480+
vdd_0v75_s3: nldo-reg1 {
481+
regulator-always-on;
482+
regulator-boot-on;
483+
regulator-min-microvolt = <750000>;
484+
regulator-max-microvolt = <750000>;
485+
regulator-name = "vdd_0v75_s3";
486+
487+
regulator-state-mem {
488+
regulator-on-in-suspend;
489+
regulator-suspend-microvolt = <750000>;
490+
};
491+
};
492+
493+
vdd_ddr_pll_s0: nldo-reg2 {
494+
regulator-always-on;
495+
regulator-boot-on;
496+
regulator-min-microvolt = <850000>;
497+
regulator-max-microvolt = <850000>;
498+
regulator-name = "vdd_ddr_pll_s0";
499+
500+
regulator-state-mem {
501+
regulator-off-in-suspend;
502+
regulator-suspend-microvolt = <850000>;
503+
};
504+
};
505+
506+
avdd_0v75_s0: nldo-reg3 {
507+
regulator-always-on;
508+
regulator-boot-on;
509+
regulator-min-microvolt = <750000>;
510+
regulator-max-microvolt = <750000>;
511+
regulator-name = "avdd_0v75_s0";
512+
513+
regulator-state-mem {
514+
regulator-off-in-suspend;
515+
};
516+
};
517+
518+
vdd_0v85_s0: nldo-reg4 {
519+
regulator-always-on;
520+
regulator-boot-on;
521+
regulator-min-microvolt = <850000>;
522+
regulator-max-microvolt = <850000>;
523+
regulator-name = "vdd_0v85_s0";
524+
525+
regulator-state-mem {
526+
regulator-off-in-suspend;
527+
};
528+
};
529+
530+
vdd_0v75_s0: nldo-reg5 {
531+
regulator-always-on;
532+
regulator-boot-on;
533+
regulator-min-microvolt = <750000>;
534+
regulator-max-microvolt = <750000>;
535+
regulator-name = "vdd_0v75_s0";
536+
537+
regulator-state-mem {
538+
regulator-off-in-suspend;
539+
};
540+
};
541+
};
542+
};
543+
};
544+
195545
&uart2 {
196546
pinctrl-0 = <&uart2m0_xfer>;
197547
status = "okay";

0 commit comments

Comments
 (0)