blob: 87a0abf95f7d4f9ac0846c61a7ad18ba6cdabea1 [file] [log] [blame]
Tom Fitzhenry1463ea42023-10-24 01:22:22 +11001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2023 Ondřej Jirman <megi@xff.cz>
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/input/input.h>
10#include <dt-bindings/leds/common.h>
11#include <dt-bindings/pinctrl/rockchip.h>
12#include <dt-bindings/usb/pd.h>
13#include "rk3588.dtsi"
14
15/ {
16 model = "PINE64 QuartzPro64";
17 compatible = "pine64,quartzpro64", "rockchip,rk3588";
18
19 aliases {
Jonas Karlmanb468b152024-01-26 22:14:53 +000020 ethernet0 = &gmac0;
Tom Fitzhenry1463ea42023-10-24 01:22:22 +110021 mmc0 = &sdhci;
22 mmc1 = &sdmmc;
Tom Fitzhenry1463ea42023-10-24 01:22:22 +110023 };
24
25 chosen {
26 stdout-path = "serial2:1500000n8";
27 };
28
29 adc-keys-0 {
30 compatible = "adc-keys";
31 io-channels = <&saradc 0>;
32 io-channel-names = "buttons";
33 keyup-threshold-microvolt = <1800000>;
34 poll-interval = <100>;
35
36 button-maskrom {
37 label = "Mask Rom";
38 linux,code = <KEY_SETUP>;
39 press-threshold-microvolt = <393>;
40 };
41 };
42
43 adc-keys-1 {
44 compatible = "adc-keys";
45 io-channels = <&saradc 1>;
46 io-channel-names = "buttons";
47 keyup-threshold-microvolt = <1800000>;
48 poll-interval = <100>;
49
50 button-volume-up {
51 label = "V+/REC";
52 linux,code = <KEY_VOLUMEUP>;
53 press-threshold-microvolt = <17821>;
54 };
55
56 button-volume-down {
57 label = "V-";
58 linux,code = <KEY_VOLUMEDOWN>;
59 press-threshold-microvolt = <415384>;
60 };
61
62 button-menu {
63 label = "MENU";
64 linux,code = <KEY_MENU>;
65 press-threshold-microvolt = <890909>;
66 };
67
68 button-esc {
69 label = "ESC";
70 linux,code = <KEY_ESC>;
71 press-threshold-microvolt = <1233962>;
72 };
73 };
74
75 headphone_amp: audio-amplifier-headphone {
76 compatible = "simple-audio-amplifier";
77 enable-gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
78 sound-name-prefix = "Headphones Amp";
79 };
80
81 speaker_amp: audio-amplifier-speaker {
82 compatible = "simple-audio-amplifier";
83 enable-gpios = <&gpio1 RK_PD3 GPIO_ACTIVE_HIGH>;
84 sound-name-prefix = "Speaker Amp";
85 };
86
87 leds {
88 compatible = "gpio-leds";
89 pinctrl-names = "default";
90 pinctrl-0 = <&led_pins>;
91
92 led-1 {
93 color = <LED_COLOR_ID_ORANGE>;
94 function = LED_FUNCTION_INDICATOR;
95 gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>;
96 };
97 };
98
99 sound {
100 compatible = "simple-audio-card";
101 pinctrl-names = "default";
102 pinctrl-0 = <&hp_detect>;
103 simple-audio-card,name = "Analog";
104 simple-audio-card,aux-devs = <&speaker_amp>, <&headphone_amp>;
105 simple-audio-card,format = "i2s";
106 simple-audio-card,mclk-fs = <256>;
107 simple-audio-card,hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>;
108 simple-audio-card,bitclock-master = <&daicpu>;
109 simple-audio-card,frame-master = <&daicpu>;
110 /* SARADC_IN3 is used as MIC detection / key input */
111
112 simple-audio-card,widgets =
113 "Microphone", "Onboard Microphone",
114 "Microphone", "Microphone Jack",
115 "Speaker", "Speaker",
116 "Headphone", "Headphones";
117
118 simple-audio-card,routing =
119 "Headphones", "LOUT1",
120 "Headphones", "ROUT1",
121 "Speaker", "LOUT2",
122 "Speaker", "ROUT2",
123
124 "Headphones", "Headphones Amp OUTL",
125 "Headphones", "Headphones Amp OUTR",
126 "Headphones Amp INL", "LOUT1",
127 "Headphones Amp INR", "ROUT1",
128
129 "Speaker", "Speaker Amp OUTL",
130 "Speaker", "Speaker Amp OUTR",
131 "Speaker Amp INL", "LOUT2",
132 "Speaker Amp INR", "ROUT2",
133
134 /* single ended signal to LINPUT1 */
135 "LINPUT1", "Microphone Jack",
136 "RINPUT1", "Microphone Jack",
137 /* differential signal */
138 "LINPUT2", "Onboard Microphone",
139 "RINPUT2", "Onboard Microphone";
140
141 daicpu: simple-audio-card,cpu {
142 sound-dai = <&i2s0_8ch>;
143 system-clock-frequency = <12288000>;
144 };
145
146 daicodec: simple-audio-card,codec {
147 sound-dai = <&es8388>;
148 system-clock-frequency = <12288000>;
149 };
150 };
151
152 vcc12v_dcin: vcc12v-dcin-regulator {
153 compatible = "regulator-fixed";
154 regulator-name = "vcc12v_dcin";
155 regulator-always-on;
156 regulator-boot-on;
157 regulator-min-microvolt = <12000000>;
158 regulator-max-microvolt = <12000000>;
159 };
160
161 vcc3v3_bt: vcc3v3-bt-regulator {
162 compatible = "regulator-fixed";
163 enable-active-high;
164 gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>;
165 regulator-name = "vcc3v3_bt";
166 regulator-min-microvolt = <3300000>;
167 regulator-max-microvolt = <3300000>;
168 startup-delay-us = <50000>;
169 vin-supply = <&vcc_3v3_s0>;
170 };
171
172 vcc3v3_pcie30: vcc3v3-pcie30-regulator {
173 compatible = "regulator-fixed";
174 enable-active-high;
175 gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_HIGH>;
176 regulator-name = "vcc3v3_pcie30";
177 regulator-min-microvolt = <3300000>;
178 regulator-max-microvolt = <3300000>;
179 startup-delay-us = <5000>;
180 vin-supply = <&vcc12v_dcin>;
181 };
182
183 vcc3v3_wf: vcc3v3-wf-regulator {
184 compatible = "regulator-fixed";
185 enable-active-high;
186 gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_HIGH>;
187 regulator-name = "vcc3v3_wf";
188 regulator-min-microvolt = <3300000>;
189 regulator-max-microvolt = <3300000>;
190 startup-delay-us = <50000>;
191 vin-supply = <&vcc_3v3_s0>;
192 };
193
194 vcc4v0_sys: vcc4v0-sys-regulator {
195 compatible = "regulator-fixed";
196 regulator-name = "vcc4v0_sys";
197 regulator-always-on;
198 regulator-boot-on;
199 regulator-min-microvolt = <4000000>;
200 regulator-max-microvolt = <4000000>;
201 vin-supply = <&vcc12v_dcin>;
202 };
203
204 vcc5v0_host: vcc5v0-host-regulator {
205 compatible = "regulator-fixed";
206 enable-active-high;
207 gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
208 pinctrl-names = "default";
209 pinctrl-0 = <&vcc5v0_host_en>;
210 regulator-name = "vcc5v0_host";
211 regulator-always-on;
212 regulator-boot-on;
213 regulator-min-microvolt = <5000000>;
214 regulator-max-microvolt = <5000000>;
215 vin-supply = <&vcc5v0_usb>;
216 };
217
218 vcc5v0_usb: vcc5v0-usb-regulator {
219 compatible = "regulator-fixed";
220 regulator-name = "vcc5v0_usb";
221 regulator-always-on;
222 regulator-boot-on;
223 regulator-min-microvolt = <5000000>;
224 regulator-max-microvolt = <5000000>;
225 vin-supply = <&vcc12v_dcin>;
226 };
227};
228
229&combphy0_ps {
230 status = "okay";
231};
232
233&combphy1_ps {
234 status = "okay";
235};
236
237&combphy2_psu {
238 status = "okay";
239};
240
241&cpu_b0 {
242 cpu-supply = <&vdd_cpu_big0_s0>;
243};
244
245&cpu_b1 {
246 cpu-supply = <&vdd_cpu_big0_s0>;
247};
248
249&cpu_b2 {
250 cpu-supply = <&vdd_cpu_big1_s0>;
251};
252
253&cpu_b3 {
254 cpu-supply = <&vdd_cpu_big1_s0>;
255};
256
257&cpu_l0 {
258 cpu-supply = <&vdd_cpu_lit_s0>;
259};
260
261&cpu_l1 {
262 cpu-supply = <&vdd_cpu_lit_s0>;
263};
264
265&cpu_l2 {
266 cpu-supply = <&vdd_cpu_lit_s0>;
267};
268
269&cpu_l3 {
270 cpu-supply = <&vdd_cpu_lit_s0>;
271};
272
273&gmac0 {
274 clock_in_out = "output";
275 phy-handle = <&rgmii_phy>;
276 phy-mode = "rgmii-rxid";
277 pinctrl-names = "default";
278 pinctrl-0 = <&gmac0_miim
279 &gmac0_tx_bus2
280 &gmac0_rx_bus2
281 &gmac0_rgmii_clk
282 &gmac0_rgmii_bus>;
283 rx_delay = <0x00>;
284 tx_delay = <0x43>;
285 status = "okay";
286};
287
288&i2c2 {
289 status = "okay";
290
291 hym8563: rtc@51 {
292 compatible = "haoyu,hym8563";
293 reg = <0x51>;
294 #clock-cells = <0>;
295 clock-output-names = "hym8563";
296 interrupt-parent = <&gpio0>;
297 interrupts = <RK_PD4 IRQ_TYPE_LEVEL_LOW>;
298 pinctrl-names = "default";
299 pinctrl-0 = <&hym8563_int>;
300 wakeup-source;
301 };
302};
303
304&i2c7 {
305 status = "okay";
306
307 es8388: audio-codec@11 {
308 compatible = "everest,es8388";
309 reg = <0x11>;
310 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
311 assigned-clock-rates = <12288000>;
312 clocks = <&cru I2S0_8CH_MCLKOUT>;
313 clock-names = "mclk";
314 AVDD-supply = <&avcc_1v8_codec_s0>;
315 DVDD-supply = <&avcc_1v8_codec_s0>;
316 HPVDD-supply = <&vcc_3v3_s0>;
317 PVDD-supply = <&vcc_3v3_s0>;
318 #sound-dai-cells = <0>;
319 };
320};
321
322&i2s0_8ch {
323 pinctrl-names = "default";
324 pinctrl-0 = <&i2s0_lrck
325 &i2s0_mclk
326 &i2s0_sclk
327 &i2s0_sdi0
328 &i2s0_sdo0>;
329 status = "okay";
330};
331
332&mdio0 {
333 rgmii_phy: ethernet-phy@1 {
334 /* RTL8211F */
335 compatible = "ethernet-phy-id001c.c916";
336 reg = <0x1>;
337 pinctrl-names = "default";
338 pinctrl-0 = <&rtl8211f_rst>;
339 reset-assert-us = <20000>;
340 reset-deassert-us = <100000>;
341 reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>;
342 };
343};
344
345&pinctrl {
346 hym8563 {
347 hym8563_int: hym8563-int {
348 rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>;
349 };
350 };
351
352 leds {
353 led_pins: led-pins {
354 rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>;
355 };
356 };
357
358 rtl8111 {
359 rtl8111_isolate: rtl8111-isolate {
360 rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
361 };
362 };
363
364 rtl8211f {
365 rtl8211f_rst: rtl8211f-rst {
366 rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
367 };
368
369 };
370
371 sound {
372 hp_detect: hp-detect {
373 rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
374 };
375 };
376
377 usb {
378 vcc5v0_host_en: vcc5v0-host-en {
379 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
380 };
381 };
382};
383
384/* WIFI */
385&pcie2x1l0 {
386 reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
387 vpcie3v3-supply = <&vcc3v3_wf>;
388 status = "okay";
389};
390
391/* GMAC1 */
392&pcie2x1l1 {
393 pinctrl-names = "default";
394 pinctrl-0 = <&rtl8111_isolate>;
395 reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
396 status = "okay";
397};
398
399&pcie30phy {
400 status = "okay";
401};
402
403&pcie3x4 {
404 reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
405 vpcie3v3-supply = <&vcc3v3_pcie30>;
406 status = "okay";
407};
408
409&saradc {
410 vref-supply = <&vcc_1v8_s0>;
411 status = "okay";
412};
413
414&sata0 {
415 status = "okay";
416};
417
418&sdhci {
419 bus-width = <8>;
420 no-sdio;
421 no-sd;
422 non-removable;
423 max-frequency = <150000000>;
424 mmc-hs400-1_8v;
425 mmc-hs400-enhanced-strobe;
426 status = "okay";
427};
428
429&sdmmc {
430 bus-width = <4>;
431 cap-sd-highspeed;
432 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
433 disable-wp;
434 max-frequency = <150000000>;
435 no-sdio;
436 no-mmc;
437 sd-uhs-sdr104;
438 vmmc-supply = <&vcc_3v3_s3>;
439 vqmmc-supply = <&vccio_sd_s0>;
440 status = "okay";
441};
442
443&spi2 {
444 assigned-clocks = <&cru CLK_SPI2>;
445 assigned-clock-rates = <200000000>;
446 num-cs = <2>;
447 status = "okay";
448
449 pmic@0 {
450 compatible = "rockchip,rk806";
451 reg = <0x0>;
452 #gpio-cells = <2>;
453 gpio-controller;
454 interrupt-parent = <&gpio0>;
455 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
456 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
457 <&rk806_dvs2_null>, <&rk806_dvs3_null>;
458 pinctrl-names = "default";
459 spi-max-frequency = <1000000>;
460
461 vcc1-supply = <&vcc4v0_sys>;
462 vcc2-supply = <&vcc4v0_sys>;
463 vcc3-supply = <&vcc4v0_sys>;
464 vcc4-supply = <&vcc4v0_sys>;
465 vcc5-supply = <&vcc4v0_sys>;
466 vcc6-supply = <&vcc4v0_sys>;
467 vcc7-supply = <&vcc4v0_sys>;
468 vcc8-supply = <&vcc4v0_sys>;
469 vcc9-supply = <&vcc4v0_sys>;
470 vcc10-supply = <&vcc4v0_sys>;
471 vcc11-supply = <&vcc_2v0_pldo_s3>;
472 vcc12-supply = <&vcc4v0_sys>;
473 vcc13-supply = <&vcc_1v1_nldo_s3>;
474 vcc14-supply = <&vcc_1v1_nldo_s3>;
475 vcca-supply = <&vcc4v0_sys>;
476
477 rk806_dvs1_null: dvs1-null-pins {
478 pins = "gpio_pwrctrl1";
479 function = "pin_fun0";
480 };
481
482 rk806_dvs2_null: dvs2-null-pins {
483 pins = "gpio_pwrctrl2";
484 function = "pin_fun0";
485 };
486
487 rk806_dvs3_null: dvs3-null-pins {
488 pins = "gpio_pwrctrl3";
489 function = "pin_fun0";
490 };
491
492 regulators {
493 vdd_gpu_s0: dcdc-reg1 {
494 regulator-name = "vdd_gpu_s0";
495 regulator-boot-on;
496 regulator-enable-ramp-delay = <400>;
497 regulator-min-microvolt = <550000>;
498 regulator-max-microvolt = <950000>;
499 regulator-ramp-delay = <12500>;
500
501 regulator-state-mem {
502 regulator-off-in-suspend;
503 };
504 };
505
506 vdd_npu_s0: dcdc-reg2 {
507 regulator-name = "vdd_npu_s0";
508 regulator-always-on;
509 regulator-boot-on;
510 regulator-min-microvolt = <550000>;
511 regulator-max-microvolt = <950000>;
512 regulator-ramp-delay = <12500>;
513
514 regulator-state-mem {
515 regulator-off-in-suspend;
516 };
517 };
518
519 vdd_log_s0: dcdc-reg3 {
520 regulator-name = "vdd_log_s0";
521 regulator-always-on;
522 regulator-boot-on;
523 regulator-min-microvolt = <675000>;
524 regulator-max-microvolt = <750000>;
525 regulator-ramp-delay = <12500>;
526
527 regulator-state-mem {
528 regulator-off-in-suspend;
529 regulator-suspend-microvolt = <750000>;
530 };
531 };
532
533 vdd_vdenc_s0: dcdc-reg4 {
534 regulator-name = "vdd_vdenc_s0";
535 regulator-always-on;
536 regulator-boot-on;
537 regulator-min-microvolt = <550000>;
538 regulator-max-microvolt = <950000>;
539 regulator-ramp-delay = <12500>;
540
541 regulator-state-mem {
542 regulator-off-in-suspend;
543 };
544
545 };
546
547 vdd_gpu_mem_s0: dcdc-reg5 {
548 regulator-name = "vdd_gpu_mem_s0";
549 regulator-boot-on;
550 regulator-enable-ramp-delay = <400>;
551 regulator-min-microvolt = <675000>;
552 regulator-max-microvolt = <950000>;
553 regulator-ramp-delay = <12500>;
554
555 regulator-state-mem {
556 regulator-off-in-suspend;
557 };
558
559 };
560
561 vdd_npu_mem_s0: dcdc-reg6 {
562 regulator-name = "vdd_npu_mem_s0";
563 regulator-always-on;
564 regulator-boot-on;
565 regulator-min-microvolt = <675000>;
566 regulator-max-microvolt = <950000>;
567 regulator-ramp-delay = <12500>;
568
569 regulator-state-mem {
570 regulator-off-in-suspend;
571 };
572
573 };
574
575 vcc_2v0_pldo_s3: dcdc-reg7 {
576 regulator-name = "vdd_2v0_pldo_s3";
577 regulator-always-on;
578 regulator-boot-on;
579 regulator-min-microvolt = <2000000>;
580 regulator-max-microvolt = <2000000>;
581 regulator-ramp-delay = <12500>;
582
583 regulator-state-mem {
584 regulator-on-in-suspend;
585 regulator-suspend-microvolt = <2000000>;
586 };
587 };
588
589 vdd_vdenc_mem_s0: dcdc-reg8 {
590 regulator-name = "vdd_vdenc_mem_s0";
591 regulator-always-on;
592 regulator-boot-on;
593 regulator-min-microvolt = <675000>;
594 regulator-max-microvolt = <950000>;
595 regulator-ramp-delay = <12500>;
596
597 regulator-state-mem {
598 regulator-off-in-suspend;
599 };
600 };
601
602 vdd2_ddr_s3: dcdc-reg9 {
603 regulator-name = "vdd2_ddr_s3";
604 regulator-always-on;
605 regulator-boot-on;
606
607 regulator-state-mem {
608 regulator-on-in-suspend;
609 };
610 };
611
612 vcc_1v1_nldo_s3: dcdc-reg10 {
613 regulator-name = "vcc_1v1_nldo_s3";
614 regulator-always-on;
615 regulator-boot-on;
616 regulator-min-microvolt = <1100000>;
617 regulator-max-microvolt = <1100000>;
618 regulator-ramp-delay = <12500>;
619
620 regulator-state-mem {
621 regulator-on-in-suspend;
622 regulator-suspend-microvolt = <1100000>;
623 };
624 };
625
626 avcc_1v8_s0: pldo-reg1 {
627 regulator-name = "avcc_1v8_s0";
628 regulator-always-on;
629 regulator-boot-on;
630 regulator-min-microvolt = <1800000>;
631 regulator-max-microvolt = <1800000>;
632 regulator-ramp-delay = <12500>;
633
634 regulator-state-mem {
635 regulator-off-in-suspend;
636 };
637 };
638
639 vdd1_1v8_ddr_s3: pldo-reg2 {
640 regulator-name = "vdd1_1v8_ddr_s3";
641 regulator-always-on;
642 regulator-boot-on;
643 regulator-min-microvolt = <1800000>;
644 regulator-max-microvolt = <1800000>;
645 regulator-ramp-delay = <12500>;
646
647 regulator-state-mem {
648 regulator-on-in-suspend;
649 regulator-suspend-microvolt = <1800000>;
650 };
651 };
652
653 avcc_1v8_codec_s0: pldo-reg3 {
654 regulator-name = "avcc_1v8_codec_s0";
655 regulator-always-on;
656 regulator-boot-on;
657 regulator-min-microvolt = <1800000>;
658 regulator-max-microvolt = <1800000>;
659 regulator-ramp-delay = <12500>;
660
661 regulator-state-mem {
662 regulator-off-in-suspend;
663 };
664 };
665
666 vcc_3v3_s3: pldo-reg4 {
667 regulator-name = "vcc_3v3_s3";
668 regulator-always-on;
669 regulator-boot-on;
670 regulator-min-microvolt = <3300000>;
671 regulator-max-microvolt = <3300000>;
672 regulator-ramp-delay = <12500>;
673
674 regulator-state-mem {
675 regulator-on-in-suspend;
676 regulator-suspend-microvolt = <3300000>;
677 };
678 };
679
680 vccio_sd_s0: pldo-reg5 {
681 regulator-name = "vccio_sd_s0";
682 regulator-always-on;
683 regulator-boot-on;
684 regulator-min-microvolt = <1800000>;
685 regulator-max-microvolt = <3300000>;
686 regulator-ramp-delay = <12500>;
687
688 regulator-state-mem {
689 regulator-off-in-suspend;
690 };
691 };
692
693 vcc_1v8_s3: pldo-reg6 {
694 regulator-name = "vcc_1v8_s3";
695 regulator-always-on;
696 regulator-boot-on;
697 regulator-min-microvolt = <1800000>;
698 regulator-max-microvolt = <1800000>;
699 regulator-ramp-delay = <12500>;
700
701 regulator-state-mem {
702 regulator-on-in-suspend;
703 regulator-suspend-microvolt = <1800000>;
704 };
705 };
706
707 vdd_0v75_s3: nldo-reg1 {
708 regulator-name = "vdd_0v75_s3";
709 regulator-always-on;
710 regulator-boot-on;
711 regulator-min-microvolt = <750000>;
712 regulator-max-microvolt = <750000>;
713 regulator-ramp-delay = <12500>;
714
715 regulator-state-mem {
716 regulator-on-in-suspend;
717 regulator-suspend-microvolt = <750000>;
718 };
719 };
720
721 /* reserved for LPDDR5, unused? */
722 vdd2l_0v9_ddr_s3: nldo-reg2 {
723 regulator-name = "vdd2l_0v9_ddr_s3";
724 regulator-always-on;
725 regulator-boot-on;
726 regulator-min-microvolt = <900000>;
727 regulator-max-microvolt = <900000>;
728
729 regulator-state-mem {
730 regulator-on-in-suspend;
731 regulator-suspend-microvolt = <900000>;
732 };
733 };
734
735 vdd_0v75_hdmi_edp_s0: nldo-reg3 {
736 regulator-name = "vdd_0v75_hdmi_edp_s0";
737 regulator-always-on;
738 regulator-boot-on;
739 regulator-min-microvolt = <750000>;
740 regulator-max-microvolt = <750000>;
741
742 regulator-state-mem {
743 regulator-off-in-suspend;
744 };
745 };
746
747 avdd_0v75_s0: nldo-reg4 {
748 regulator-name = "avdd_0v75_s0";
749 regulator-always-on;
750 regulator-boot-on;
751 regulator-min-microvolt = <750000>;
752 regulator-max-microvolt = <750000>;
753
754 regulator-state-mem {
755 regulator-off-in-suspend;
756 };
757 };
758
759 vdd_0v85_s0: nldo-reg5 {
760 regulator-name = "vdd_0v85_s0";
761 regulator-always-on;
762 regulator-boot-on;
763 regulator-min-microvolt = <850000>;
764 regulator-max-microvolt = <850000>;
765
766 regulator-state-mem {
767 regulator-off-in-suspend;
768 };
769 };
770 };
771 };
772
773 pmic@1 {
774 compatible = "rockchip,rk806";
775 reg = <0x01>;
776 #gpio-cells = <2>;
777 gpio-controller;
778 interrupt-parent = <&gpio0>;
779 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
780 pinctrl-0 = <&rk806_slave_dvs1_null>, <&rk806_slave_dvs2_null>,
781 <&rk806_slave_dvs3_null>;
782 pinctrl-names = "default";
783 spi-max-frequency = <1000000>;
784
785 vcc1-supply = <&vcc4v0_sys>;
786 vcc2-supply = <&vcc4v0_sys>;
787 vcc3-supply = <&vcc4v0_sys>;
788 vcc4-supply = <&vcc4v0_sys>;
789 vcc5-supply = <&vcc4v0_sys>;
790 vcc6-supply = <&vcc4v0_sys>;
791 vcc7-supply = <&vcc4v0_sys>;
792 vcc8-supply = <&vcc4v0_sys>;
793 vcc9-supply = <&vcc4v0_sys>;
794 vcc10-supply = <&vcc4v0_sys>;
795 vcc11-supply = <&vcc_2v0_pldo_s3>;
796 vcc12-supply = <&vcc4v0_sys>;
797 vcc13-supply = <&vcc_1v1_nldo_s3>;
798 vcc14-supply = <&vcc_2v0_pldo_s3>;
799 vcca-supply = <&vcc4v0_sys>;
800
801 rk806_slave_dvs1_null: dvs1-null-pins {
802 pins = "gpio_pwrctrl1";
803 function = "pin_fun0";
804 };
805
806 rk806_slave_dvs2_null: dvs2-null-pins {
807 pins = "gpio_pwrctrl2";
808 function = "pin_fun0";
809 };
810
811 rk806_slave_dvs3_null: dvs3-null-pins {
812 pins = "gpio_pwrctrl3";
813 function = "pin_fun0";
814 };
815
816 regulators {
817 vdd_cpu_big1_s0: dcdc-reg1 {
818 regulator-name = "vdd_cpu_big1_s0";
819 regulator-always-on;
820 regulator-boot-on;
821 regulator-min-microvolt = <550000>;
822 regulator-max-microvolt = <1050000>;
823 regulator-ramp-delay = <12500>;
824
825 regulator-state-mem {
826 regulator-off-in-suspend;
827 };
828 };
829
830 vdd_cpu_big0_s0: dcdc-reg2 {
831 regulator-name = "vdd_cpu_big0_s0";
832 regulator-always-on;
833 regulator-boot-on;
834 regulator-min-microvolt = <550000>;
835 regulator-max-microvolt = <1050000>;
836 regulator-ramp-delay = <12500>;
837
838 regulator-state-mem {
839 regulator-off-in-suspend;
840 };
841 };
842
843 vdd_cpu_lit_s0: dcdc-reg3 {
844 regulator-name = "vdd_cpu_lit_s0";
845 regulator-always-on;
846 regulator-boot-on;
847 regulator-min-microvolt = <550000>;
848 regulator-max-microvolt = <950000>;
849 regulator-ramp-delay = <12500>;
850
851 regulator-state-mem {
852 regulator-off-in-suspend;
853 };
854 };
855
856 vcc_3v3_s0: dcdc-reg4 {
857 regulator-name = "vcc_3v3_s0";
858 regulator-always-on;
859 regulator-boot-on;
860 regulator-min-microvolt = <3300000>;
861 regulator-max-microvolt = <3300000>;
862 regulator-ramp-delay = <12500>;
863
864 regulator-state-mem {
865 regulator-off-in-suspend;
866 };
867 };
868
869 vdd_cpu_big1_mem_s0: dcdc-reg5 {
870 regulator-name = "vdd_cpu_big1_mem_s0";
871 regulator-always-on;
872 regulator-boot-on;
873 regulator-min-microvolt = <675000>;
874 regulator-max-microvolt = <1050000>;
875 regulator-ramp-delay = <12500>;
876
877 regulator-state-mem {
878 regulator-off-in-suspend;
879 };
880 };
881
882
883 vdd_cpu_big0_mem_s0: dcdc-reg6 {
884 regulator-name = "vdd_cpu_big0_mem_s0";
885 regulator-always-on;
886 regulator-boot-on;
887 regulator-min-microvolt = <675000>;
888 regulator-max-microvolt = <1050000>;
889 regulator-ramp-delay = <12500>;
890
891 regulator-state-mem {
892 regulator-off-in-suspend;
893 };
894 };
895
896 vcc_1v8_s0: dcdc-reg7 {
897 regulator-name = "vcc_1v8_s0";
898 regulator-always-on;
899 regulator-boot-on;
900 regulator-min-microvolt = <1800000>;
901 regulator-max-microvolt = <1800000>;
902 regulator-ramp-delay = <12500>;
903
904 regulator-state-mem {
905 regulator-off-in-suspend;
906 };
907 };
908
909 vdd_cpu_lit_mem_s0: dcdc-reg8 {
910 regulator-name = "vdd_cpu_lit_mem_s0";
911 regulator-always-on;
912 regulator-boot-on;
913 regulator-min-microvolt = <675000>;
914 regulator-max-microvolt = <950000>;
915 regulator-ramp-delay = <12500>;
916
917 regulator-state-mem {
918 regulator-off-in-suspend;
919 };
920 };
921
922 vddq_ddr_s0: dcdc-reg9 {
923 regulator-name = "vddq_ddr_s0";
924 regulator-always-on;
925 regulator-boot-on;
926
927 regulator-state-mem {
928 regulator-off-in-suspend;
929 };
930 };
931
932 vdd_ddr_s0: dcdc-reg10 {
933 regulator-name = "vdd_ddr_s0";
934 regulator-always-on;
935 regulator-boot-on;
936 regulator-min-microvolt = <675000>;
937 regulator-max-microvolt = <900000>;
938 regulator-ramp-delay = <12500>;
939
940 regulator-state-mem {
941 regulator-off-in-suspend;
942 };
943 };
944
945 /* reserved, unused? */
946 vcc_1v8_cam_s0: pldo-reg1 {
947 regulator-name = "vcc_1v8_cam_s0";
948 regulator-always-on;
949 regulator-boot-on;
950 regulator-min-microvolt = <1800000>;
951 regulator-max-microvolt = <1800000>;
952 regulator-ramp-delay = <12500>;
953
954 regulator-state-mem {
955 regulator-off-in-suspend;
956 };
957 };
958
959 avdd1v8_ddr_pll_s0: pldo-reg2 {
960 regulator-name = "avdd1v8_ddr_pll_s0";
961 regulator-always-on;
962 regulator-boot-on;
963 regulator-min-microvolt = <1800000>;
964 regulator-max-microvolt = <1800000>;
965 regulator-ramp-delay = <12500>;
966
967 regulator-state-mem {
968 regulator-off-in-suspend;
969 };
970 };
971
972 vdd_1v8_pll_s0: pldo-reg3 {
973 regulator-name = "vdd_1v8_pll_s0";
974 regulator-always-on;
975 regulator-boot-on;
976 regulator-min-microvolt = <1800000>;
977 regulator-max-microvolt = <1800000>;
978 regulator-ramp-delay = <12500>;
979
980 regulator-state-mem {
981 regulator-off-in-suspend;
982 };
983 };
984
985 /* reserved, unused? */
986 vcc_3v3_sd_s0: pldo-reg4 {
987 regulator-name = "vcc_3v3_sd_s0";
988 regulator-always-on;
989 regulator-boot-on;
990 regulator-min-microvolt = <3300000>;
991 regulator-max-microvolt = <3300000>;
992 regulator-ramp-delay = <12500>;
993
994 regulator-state-mem {
995 regulator-off-in-suspend;
996 };
997 };
998
999 /* reserved, unused? */
1000 vcc_2v8_cam_s0: pldo-reg5 {
1001 regulator-name = "vcc_2v8_cam_s0";
1002 regulator-always-on;
1003 regulator-boot-on;
1004 regulator-min-microvolt = <2800000>;
1005 regulator-max-microvolt = <2800000>;
1006 regulator-ramp-delay = <12500>;
1007
1008 regulator-state-mem {
1009 regulator-off-in-suspend;
1010 };
1011 };
1012
1013 /* unused */
1014 pldo6_s3: pldo-reg6 {
1015 regulator-name = "pldo6_s3";
1016 regulator-always-on;
1017 regulator-boot-on;
1018 regulator-min-microvolt = <1800000>;
1019 regulator-max-microvolt = <1800000>;
1020
1021 regulator-state-mem {
1022 regulator-on-in-suspend;
1023 regulator-suspend-microvolt = <1800000>;
1024 };
1025 };
1026
1027 vdd_0v75_pll_s0: nldo-reg1 {
1028 regulator-name = "vdd_0v75_pll_s0";
1029 regulator-always-on;
1030 regulator-boot-on;
1031 regulator-min-microvolt = <750000>;
1032 regulator-max-microvolt = <750000>;
1033 regulator-ramp-delay = <12500>;
1034
1035 regulator-state-mem {
1036 regulator-off-in-suspend;
1037 };
1038 };
1039
1040 vdd_ddr_pll_s0: nldo-reg2 {
1041 regulator-name = "vdd_ddr_pll_s0";
1042 regulator-always-on;
1043 regulator-boot-on;
1044 regulator-min-microvolt = <850000>;
1045 regulator-max-microvolt = <850000>;
1046
1047 regulator-state-mem {
1048 regulator-off-in-suspend;
1049 };
1050 };
1051
1052 avdd_0v85_s0: nldo-reg3 {
1053 regulator-name = "avdd_0v85_s0";
1054 regulator-always-on;
1055 regulator-boot-on;
1056 regulator-min-microvolt = <850000>;
1057 regulator-max-microvolt = <850000>;
1058 regulator-ramp-delay = <12500>;
1059
1060 regulator-state-mem {
1061 regulator-off-in-suspend;
1062 };
1063 };
1064
1065 /* reserved, unused */
1066 avdd_1v2_cam_s0: nldo-reg4 {
1067 regulator-name = "avdd_1v2_cam_s0";
1068 regulator-always-on;
1069 regulator-boot-on;
1070 regulator-min-microvolt = <1200000>;
1071 regulator-max-microvolt = <1200000>;
1072 regulator-ramp-delay = <12500>;
1073
1074 regulator-state-mem {
1075 regulator-off-in-suspend;
1076 };
1077 };
1078
1079 avdd_1v2_s0: nldo-reg5 {
1080 regulator-name = "avdd_1v2_s0";
1081 regulator-always-on;
1082 regulator-boot-on;
1083 regulator-min-microvolt = <1200000>;
1084 regulator-max-microvolt = <1200000>;
1085 regulator-ramp-delay = <12500>;
1086
1087 regulator-state-mem {
1088 regulator-off-in-suspend;
1089 };
1090 };
1091 };
1092 };
1093};
1094
1095&tsadc {
1096 status = "okay";
1097};
1098
1099&u2phy2 {
1100 status = "okay";
1101};
1102
1103&u2phy2_host {
1104 phy-supply = <&vcc5v0_host>;
1105 status = "okay";
1106};
1107
1108&u2phy3 {
1109 status = "okay";
1110};
1111
1112&u2phy3_host {
1113 phy-supply = <&vcc5v0_host>;
1114 status = "okay";
1115};
1116
1117&uart2 {
1118 pinctrl-names = "default";
1119 pinctrl-0 = <&uart2m0_xfer>;
1120 status = "okay";
1121};
1122
1123&usb_host0_ehci {
1124 status = "okay";
1125};
1126
1127&usb_host0_ohci {
1128 status = "okay";
1129};
1130
1131&usb_host1_ehci {
1132 status = "okay";
1133};
1134
1135&usb_host1_ohci {
1136 status = "okay";
1137};