1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/leds/common.h>
7 #include <dt-bindings/input/input.h>
8 #include <dt-bindings/pinctrl/rockchip.h>
9 #include "rk3588s.dtsi"
12 model = "Xunlong Orange Pi 5";
13 compatible = "xunlong,orangepi-5", "rockchip,rk3588s";
21 stdout-path = "serial2:1500000n8";
25 compatible = "adc-keys";
26 io-channels = <&saradc 1>;
27 io-channel-names = "buttons";
28 keyup-threshold-microvolt = <1800000>;
29 poll-interval = <100>;
33 linux,code = <KEY_VENDOR>;
34 press-threshold-microvolt = <1800>;
39 compatible = "gpio-leds";
40 pinctrl-names = "default";
41 pinctrl-0 = <&leds_gpio>;
44 gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>;
46 linux,default-trigger = "heartbeat";
50 vbus_typec: vbus-typec-regulator {
51 compatible = "regulator-fixed";
53 gpio = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>;
54 pinctrl-names = "default";
55 pinctrl-0 = <&typec5v_pwren>;
56 regulator-name = "vbus_typec";
57 regulator-min-microvolt = <5000000>;
58 regulator-max-microvolt = <5000000>;
59 vin-supply = <&vcc5v0_sys>;
62 vcc5v0_sys: vcc5v0-sys-regulator {
63 compatible = "regulator-fixed";
64 regulator-name = "vcc5v0_sys";
67 regulator-min-microvolt = <5000000>;
68 regulator-max-microvolt = <5000000>;
71 vcc_3v3_sd_s0: vcc-3v3-sd-s0-regulator {
72 compatible = "regulator-fixed";
74 gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_LOW>;
75 regulator-name = "vcc_3v3_sd_s0";
77 regulator-min-microvolt = <3300000>;
78 regulator-max-microvolt = <3300000>;
79 vin-supply = <&vcc_3v3_s3>;
82 vcc3v3_pcie20: vcc3v3-pcie20-regulator {
83 compatible = "regulator-fixed";
85 gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
86 regulator-name = "vcc3v3_pcie20";
88 regulator-min-microvolt = <1800000>;
89 regulator-max-microvolt = <1800000>;
90 startup-delay-us = <50000>;
91 vin-supply = <&vcc5v0_sys>;
104 cpu-supply = <&vdd_cpu_big0_s0>;
108 cpu-supply = <&vdd_cpu_big0_s0>;
112 cpu-supply = <&vdd_cpu_big1_s0>;
116 cpu-supply = <&vdd_cpu_big1_s0>;
120 cpu-supply = <&vdd_cpu_lit_s0>;
124 cpu-supply = <&vdd_cpu_lit_s0>;
128 cpu-supply = <&vdd_cpu_lit_s0>;
132 cpu-supply = <&vdd_cpu_lit_s0>;
136 clock_in_out = "output";
137 phy-handle = <&rgmii_phy1>;
138 phy-mode = "rgmii-rxid";
139 pinctrl-0 = <&gmac1_miim
144 pinctrl-names = "default";
150 pinctrl-names = "default";
151 pinctrl-0 = <&i2c0m2_xfer>;
154 vdd_cpu_big0_s0: regulator@42 {
155 compatible = "rockchip,rk8602";
157 fcs,suspend-voltage-selector = <1>;
158 regulator-name = "vdd_cpu_big0_s0";
161 regulator-min-microvolt = <550000>;
162 regulator-max-microvolt = <1050000>;
163 regulator-ramp-delay = <2300>;
164 vin-supply = <&vcc5v0_sys>;
166 regulator-state-mem {
167 regulator-off-in-suspend;
171 vdd_cpu_big1_s0: regulator@43 {
172 compatible = "rockchip,rk8603", "rockchip,rk8602";
174 fcs,suspend-voltage-selector = <1>;
175 regulator-name = "vdd_cpu_big1_s0";
178 regulator-min-microvolt = <550000>;
179 regulator-max-microvolt = <1050000>;
180 regulator-ramp-delay = <2300>;
181 vin-supply = <&vcc5v0_sys>;
183 regulator-state-mem {
184 regulator-off-in-suspend;
192 vdd_npu_s0: regulator@42 {
193 compatible = "rockchip,rk8602";
195 fcs,suspend-voltage-selector = <1>;
196 regulator-name = "vdd_npu_s0";
199 regulator-min-microvolt = <550000>;
200 regulator-max-microvolt = <950000>;
201 regulator-ramp-delay = <2300>;
202 vin-supply = <&vcc5v0_sys>;
204 regulator-state-mem {
205 regulator-off-in-suspend;
211 pinctrl-names = "default";
212 pinctrl-0 = <&i2c6m3_xfer>;
216 compatible = "haoyu,hym8563";
219 clock-output-names = "hym8563";
220 pinctrl-names = "default";
221 pinctrl-0 = <&hym8563_int>;
222 interrupt-parent = <&gpio0>;
223 interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
229 rgmii_phy1: ethernet-phy@1 {
230 compatible = "ethernet-phy-ieee802.3-c22";
232 reset-assert-us = <20000>;
233 reset-deassert-us = <100000>;
234 reset-gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>;
239 reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
240 vpcie3v3-supply = <&vcc3v3_pcie20>;
246 leds_gpio: leds-gpio {
247 rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
252 hym8563_int: hym8563-int {
253 rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
258 usbc0_int: usbc0-int {
259 rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
262 typec5v_pwren: typec5v-pwren {
263 rockchip,pins = <3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
269 vref-supply = <&avcc_1v8_s0>;
277 max-frequency = <150000000>;
281 vmmc-supply = <&vcc_3v3_sd_s0>;
282 vqmmc-supply = <&vccio_sd_s0>;
287 pinctrl-names = "default";
288 pinctrl-0 = <&fspim0_pins>;
292 compatible = "jedec,spi-nor";
294 spi-max-frequency = <100000000>;
295 spi-rx-bus-width = <4>;
296 spi-tx-bus-width = <1>;
302 assigned-clocks = <&cru CLK_SPI2>;
303 assigned-clock-rates = <200000000>;
305 pinctrl-names = "default";
306 pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
309 compatible = "rockchip,rk806";
311 interrupt-parent = <&gpio0>;
312 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
313 pinctrl-names = "default";
314 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
315 <&rk806_dvs2_null>, <&rk806_dvs3_null>;
316 spi-max-frequency = <1000000>;
318 vcc1-supply = <&vcc5v0_sys>;
319 vcc2-supply = <&vcc5v0_sys>;
320 vcc3-supply = <&vcc5v0_sys>;
321 vcc4-supply = <&vcc5v0_sys>;
322 vcc5-supply = <&vcc5v0_sys>;
323 vcc6-supply = <&vcc5v0_sys>;
324 vcc7-supply = <&vcc5v0_sys>;
325 vcc8-supply = <&vcc5v0_sys>;
326 vcc9-supply = <&vcc5v0_sys>;
327 vcc10-supply = <&vcc5v0_sys>;
328 vcc11-supply = <&vcc_2v0_pldo_s3>;
329 vcc12-supply = <&vcc5v0_sys>;
330 vcc13-supply = <&vcc_1v1_nldo_s3>;
331 vcc14-supply = <&vcc_1v1_nldo_s3>;
332 vcca-supply = <&vcc5v0_sys>;
337 rk806_dvs1_null: dvs1-null-pins {
338 pins = "gpio_pwrctrl2";
339 function = "pin_fun0";
342 rk806_dvs2_null: dvs2-null-pins {
343 pins = "gpio_pwrctrl2";
344 function = "pin_fun0";
347 rk806_dvs3_null: dvs3-null-pins {
348 pins = "gpio_pwrctrl3";
349 function = "pin_fun0";
353 vdd_gpu_s0: dcdc-reg1 {
354 regulator-name = "vdd_gpu_s0";
356 regulator-min-microvolt = <550000>;
357 regulator-max-microvolt = <950000>;
358 regulator-ramp-delay = <12500>;
359 regulator-enable-ramp-delay = <400>;
361 regulator-state-mem {
362 regulator-off-in-suspend;
366 vdd_cpu_lit_s0: dcdc-reg2 {
367 regulator-name = "vdd_cpu_lit_s0";
370 regulator-min-microvolt = <550000>;
371 regulator-max-microvolt = <950000>;
372 regulator-ramp-delay = <12500>;
374 regulator-state-mem {
375 regulator-off-in-suspend;
379 vdd_log_s0: dcdc-reg3 {
380 regulator-name = "vdd_log_s0";
383 regulator-min-microvolt = <675000>;
384 regulator-max-microvolt = <750000>;
385 regulator-ramp-delay = <12500>;
387 regulator-state-mem {
388 regulator-off-in-suspend;
389 regulator-suspend-microvolt = <750000>;
393 vdd_vdenc_s0: dcdc-reg4 {
394 regulator-name = "vdd_vdenc_s0";
397 regulator-min-microvolt = <550000>;
398 regulator-max-microvolt = <950000>;
399 regulator-ramp-delay = <12500>;
401 regulator-state-mem {
402 regulator-off-in-suspend;
406 vdd_ddr_s0: dcdc-reg5 {
407 regulator-name = "vdd_ddr_s0";
410 regulator-min-microvolt = <675000>;
411 regulator-max-microvolt = <900000>;
412 regulator-ramp-delay = <12500>;
414 regulator-state-mem {
415 regulator-off-in-suspend;
416 regulator-suspend-microvolt = <850000>;
420 vcc_1v1_nldo_s3: vdd2_ddr_s3: dcdc-reg6 {
421 regulator-name = "vdd2_ddr_s3";
424 regulator-max-microvolt = <1100000>;
425 regulator-min-microvolt = <1100000>;
427 regulator-state-mem {
428 regulator-on-in-suspend;
432 vcc_2v0_pldo_s3: dcdc-reg7 {
433 regulator-name = "vdd_2v0_pldo_s3";
436 regulator-min-microvolt = <2000000>;
437 regulator-max-microvolt = <2000000>;
438 regulator-ramp-delay = <12500>;
440 regulator-state-mem {
441 regulator-on-in-suspend;
442 regulator-suspend-microvolt = <2000000>;
446 vcc_3v3_s3: dcdc-reg8 {
447 regulator-name = "vcc_3v3_s3";
450 regulator-min-microvolt = <3300000>;
451 regulator-max-microvolt = <3300000>;
453 regulator-state-mem {
454 regulator-on-in-suspend;
455 regulator-suspend-microvolt = <3300000>;
459 vddq_ddr_s0: dcdc-reg9 {
460 regulator-name = "vddq_ddr_s0";
464 regulator-state-mem {
465 regulator-off-in-suspend;
469 vcc_1v8_s3: dcdc-reg10 {
470 regulator-name = "vcc_1v8_s3";
473 regulator-min-microvolt = <1800000>;
474 regulator-max-microvolt = <1800000>;
476 regulator-state-mem {
477 regulator-on-in-suspend;
478 regulator-suspend-microvolt = <1800000>;
482 avcc_1v8_s0: pldo-reg1 {
483 regulator-name = "avcc_1v8_s0";
486 regulator-min-microvolt = <1800000>;
487 regulator-max-microvolt = <1800000>;
489 regulator-state-mem {
490 regulator-off-in-suspend;
494 vcc_1v8_s0: pldo-reg2 {
495 regulator-name = "vcc_1v8_s0";
498 regulator-min-microvolt = <1800000>;
499 regulator-max-microvolt = <1800000>;
501 regulator-state-mem {
502 regulator-off-in-suspend;
503 regulator-suspend-microvolt = <1800000>;
507 avdd_1v2_s0: pldo-reg3 {
508 regulator-name = "avdd_1v2_s0";
511 regulator-min-microvolt = <1200000>;
512 regulator-max-microvolt = <1200000>;
514 regulator-state-mem {
515 regulator-off-in-suspend;
519 vcc_3v3_s0: pldo-reg4 {
520 regulator-name = "vcc_3v3_s0";
523 regulator-min-microvolt = <3300000>;
524 regulator-max-microvolt = <3300000>;
525 regulator-ramp-delay = <12500>;
527 regulator-state-mem {
528 regulator-off-in-suspend;
532 vccio_sd_s0: pldo-reg5 {
533 regulator-name = "vccio_sd_s0";
536 regulator-min-microvolt = <1800000>;
537 regulator-max-microvolt = <3300000>;
538 regulator-ramp-delay = <12500>;
540 regulator-state-mem {
541 regulator-off-in-suspend;
545 pldo6_s3: pldo-reg6 {
546 regulator-name = "pldo6_s3";
549 regulator-min-microvolt = <1800000>;
550 regulator-max-microvolt = <1800000>;
552 regulator-state-mem {
553 regulator-on-in-suspend;
554 regulator-suspend-microvolt = <1800000>;
558 vdd_0v75_s3: nldo-reg1 {
559 regulator-name = "vdd_0v75_s3";
562 regulator-min-microvolt = <750000>;
563 regulator-max-microvolt = <750000>;
565 regulator-state-mem {
566 regulator-on-in-suspend;
567 regulator-suspend-microvolt = <750000>;
571 vdd_ddr_pll_s0: nldo-reg2 {
572 regulator-name = "vdd_ddr_pll_s0";
575 regulator-min-microvolt = <850000>;
576 regulator-max-microvolt = <850000>;
578 regulator-state-mem {
579 regulator-off-in-suspend;
580 regulator-suspend-microvolt = <850000>;
584 avdd_0v75_s0: nldo-reg3 {
585 regulator-name = "avdd_0v75_s0";
588 regulator-min-microvolt = <750000>;
589 regulator-max-microvolt = <750000>;
591 regulator-state-mem {
592 regulator-off-in-suspend;
596 vdd_0v85_s0: nldo-reg4 {
597 regulator-name = "vdd_0v85_s0";
600 regulator-min-microvolt = <850000>;
601 regulator-max-microvolt = <850000>;
603 regulator-state-mem {
604 regulator-off-in-suspend;
608 vdd_0v75_s0: nldo-reg5 {
609 regulator-name = "vdd_0v75_s0";
612 regulator-min-microvolt = <750000>;
613 regulator-max-microvolt = <750000>;
615 regulator-state-mem {
616 regulator-off-in-suspend;
644 pinctrl-0 = <&uart2m0_xfer>;