Wednesday, July 03, 2024

U-Boot 2024.07 for RK356x/RK3588

Hi,

this diff updates the U-Boot ports to 2024.07. It builds, but I haven't
actually tried it on a machine so far; and I don't have all machines
either.

Would be happy if someone could give it a try. For now, sharing that it
doesn't get lost (or if someone wants to pick it up).

Cheers,
Patrick

diff --git a/sysutils/u-boot/rk356x/Makefile b/sysutils/u-boot/rk356x/Makefile
index d94a2377bf5..6ca0ae47943 100644
--- a/sysutils/u-boot/rk356x/Makefile
+++ b/sysutils/u-boot/rk356x/Makefile
@@ -1,5 +1,4 @@
-VERSION= 2024.01
-REVISION= 0
+VERSION= 2024.07

SOC= rk356x

diff --git a/sysutils/u-boot/rk356x/distinfo b/sysutils/u-boot/rk356x/distinfo
index 23e7c82b93e..959cacfb2cd 100644
--- a/sysutils/u-boot/rk356x/distinfo
+++ b/sysutils/u-boot/rk356x/distinfo
@@ -1,8 +1,8 @@
SHA256 (rk3566_ddr_1056MHz_v1.18.bin) = 3ABjVq4NHR9mhYo3Yub1pSlMruHKFz7lsMRTG9QgjU8=
SHA256 (rk3568_bl31_v1.43.elf) = U7k3G+6qDGo8AjWg8Gmtxxn/kCinhjdyzl7vJBVqsHw=
SHA256 (rk3568_ddr_1560MHz_v1.18.bin) = nmIAyhP4RjebrnA7A21C4oCIirOoFDmZOAvcmJjQQyI=
-SHA256 (u-boot-2024.01.tar.bz2) = uZYR8e0je/NUG9yENLaMlqbgWWcGH5kkQ8swqr6+9bM=
+SHA256 (u-boot-2024.07.tar.bz2) = 9ZHamrkO89az0XN2bQ3f+QxO1zMGgIl0hhF985DYPI8=
SIZE (rk3566_ddr_1056MHz_v1.18.bin) = 55296
SIZE (rk3568_bl31_v1.43.elf) = 402376
SIZE (rk3568_ddr_1560MHz_v1.18.bin) = 55296
-SIZE (u-boot-2024.01.tar.bz2) = 19926911
+SIZE (u-boot-2024.07.tar.bz2) = 26086110
diff --git a/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk3568_dtsi b/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk3568_dtsi
deleted file mode 100644
index 95f2b6d644a..00000000000
--- a/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk3568_dtsi
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: arch/arm/dts/rk3568.dtsi
---- arch/arm/dts/rk3568.dtsi.orig
-+++ arch/arm/dts/rk3568.dtsi
-@@ -97,7 +97,7 @@
- <0x0 0xf2000000 0x0 0x00100000>;
- ranges = <0x01000000 0x0 0xf2100000 0x0 0xf2100000 0x0 0x00100000>,
- <0x02000000 0x0 0xf2200000 0x0 0xf2200000 0x0 0x01e00000>,
-- <0x03000000 0x0 0x40000000 0x3 0x40000000 0x0 0x40000000>;
-+ <0x03000000 0x3 0x40000000 0x3 0x40000000 0x0 0x40000000>;
- reg-names = "dbi", "apb", "config";
- resets = <&cru SRST_PCIE30X1_POWERUP>;
- reset-names = "pipe";
-@@ -150,7 +150,7 @@
- <0x0 0xf0000000 0x0 0x00100000>;
- ranges = <0x01000000 0x0 0xf0100000 0x0 0xf0100000 0x0 0x00100000>,
- <0x02000000 0x0 0xf0200000 0x0 0xf0200000 0x0 0x01e00000>,
-- <0x03000000 0x0 0x40000000 0x3 0x80000000 0x0 0x40000000>;
-+ <0x03000000 0x3 0x80000000 0x3 0x80000000 0x0 0x40000000>;
- reg-names = "dbi", "apb", "config";
- resets = <&cru SRST_PCIE30X2_POWERUP>;
- reset-names = "pipe";
diff --git a/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk356x_dtsi b/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk356x_dtsi
deleted file mode 100644
index 900a00dfed8..00000000000
--- a/sysutils/u-boot/rk356x/patches/patch-arch_arm_dts_rk356x_dtsi
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk356x.dtsi
---- arch/arm/dts/rk356x.dtsi.orig
-+++ arch/arm/dts/rk356x.dtsi
-@@ -984,7 +984,7 @@
- power-domains = <&power RK3568_PD_PIPE>;
- ranges = <0x01000000 0x0 0xf4100000 0x0 0xf4100000 0x0 0x00100000>,
- <0x02000000 0x0 0xf4200000 0x0 0xf4200000 0x0 0x01e00000>,
-- <0x03000000 0x0 0x40000000 0x3 0x00000000 0x0 0x40000000>;
-+ <0x03000000 0x3 0x00000000 0x3 0x00000000 0x0 0x40000000>;
- resets = <&cru SRST_PCIE20_POWERUP>;
- reset-names = "pipe";
- #address-cells = <3>;
diff --git a/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk3568_dtsi b/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk3568_dtsi
new file mode 100644
index 00000000000..1bdefca022c
--- /dev/null
+++ b/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk3568_dtsi
@@ -0,0 +1,21 @@
+Index: dts/upstream/src/arm64/rockchip/rk3568.dtsi
+--- dts/upstream/src/arm64/rockchip/rk3568.dtsi.orig
++++ dts/upstream/src/arm64/rockchip/rk3568.dtsi
+@@ -97,7 +97,7 @@
+ <0x0 0xf2000000 0x0 0x00100000>;
+ ranges = <0x01000000 0x0 0xf2100000 0x0 0xf2100000 0x0 0x00100000>,
+ <0x02000000 0x0 0xf2200000 0x0 0xf2200000 0x0 0x01e00000>,
+- <0x03000000 0x0 0x40000000 0x3 0x40000000 0x0 0x40000000>;
++ <0x03000000 0x3 0x40000000 0x3 0x40000000 0x0 0x40000000>;
+ reg-names = "dbi", "apb", "config";
+ resets = <&cru SRST_PCIE30X1_POWERUP>;
+ reset-names = "pipe";
+@@ -150,7 +150,7 @@
+ <0x0 0xf0000000 0x0 0x00100000>;
+ ranges = <0x01000000 0x0 0xf0100000 0x0 0xf0100000 0x0 0x00100000>,
+ <0x02000000 0x0 0xf0200000 0x0 0xf0200000 0x0 0x01e00000>,
+- <0x03000000 0x0 0x40000000 0x3 0x80000000 0x0 0x40000000>;
++ <0x03000000 0x3 0x80000000 0x3 0x80000000 0x0 0x40000000>;
+ reg-names = "dbi", "apb", "config";
+ resets = <&cru SRST_PCIE30X2_POWERUP>;
+ reset-names = "pipe";
diff --git a/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk356x_dtsi b/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk356x_dtsi
new file mode 100644
index 00000000000..4867c00cf15
--- /dev/null
+++ b/sysutils/u-boot/rk356x/patches/patch-dts_upstream_src_arm64_rockchip_rk356x_dtsi
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk356x.dtsi
+--- dts/upstream/src/arm64/rockchip/rk356x.dtsi.orig
++++ dts/upstream/src/arm64/rockchip/rk356x.dtsi
+@@ -1002,7 +1002,7 @@
+ power-domains = <&power RK3568_PD_PIPE>;
+ ranges = <0x01000000 0x0 0xf4100000 0x0 0xf4100000 0x0 0x00100000>,
+ <0x02000000 0x0 0xf4200000 0x0 0xf4200000 0x0 0x01e00000>,
+- <0x03000000 0x0 0x40000000 0x3 0x00000000 0x0 0x40000000>;
++ <0x03000000 0x3 0x00000000 0x3 0x00000000 0x0 0x40000000>;
+ resets = <&cru SRST_PCIE20_POWERUP>;
+ reset-names = "pipe";
+ #address-cells = <3>;
diff --git a/sysutils/u-boot/rk3588/Makefile b/sysutils/u-boot/rk3588/Makefile
index 988db642c30..846e225ecec 100644
--- a/sysutils/u-boot/rk3588/Makefile
+++ b/sysutils/u-boot/rk3588/Makefile
@@ -1,4 +1,4 @@
-VERSION= 2024.04
+VERSION= 2024.07

SOC= rk3588

diff --git a/sysutils/u-boot/rk3588/distinfo b/sysutils/u-boot/rk3588/distinfo
index 17e5f201043..24010721611 100644
--- a/sysutils/u-boot/rk3588/distinfo
+++ b/sysutils/u-boot/rk3588/distinfo
@@ -1,6 +1,6 @@
SHA256 (rk3588_bl31_v1.45.elf) = jEBNnPBVkRJ1Qq3sDrkrBmzxnTxqr/0Jf3ES4X6LMEQ=
SHA256 (rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.16.bin) = WqYnEZXkIqLDCo6AG6pk5KEMvGpfGWP5op5tyFCWx78=
-SHA256 (u-boot-2024.04.tar.bz2) = GKhT/jn6160DqQzC1Cda6u1tppc13vrDSSuAUIhD3Uo=
+SHA256 (u-boot-2024.07.tar.bz2) = 9ZHamrkO89az0XN2bQ3f+QxO1zMGgIl0hhF985DYPI8=
SIZE (rk3588_bl31_v1.45.elf) = 430880
SIZE (rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.16.bin) = 75480
-SIZE (u-boot-2024.04.tar.bz2) = 20228837
+SIZE (u-boot-2024.07.tar.bz2) = 26086110
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-nanopc-t6_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-nanopc-t6_dts
deleted file mode 100644
index d3d14d8db06..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-nanopc-t6_dts
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk3588-nanopc-t6.dts
---- arch/arm/dts/rk3588-nanopc-t6.dts.orig
-+++ arch/arm/dts/rk3588-nanopc-t6.dts
-@@ -23,7 +23,7 @@
- };
-
- chosen {
-- stdout-path = "serial2:1500000n8";
-+ stdout-path = "serial2:115200n8";
- };
-
- leds {
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-orangepi-5-plus_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-orangepi-5-plus_dts
deleted file mode 100644
index d7c9f7c5cfd..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-orangepi-5-plus_dts
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk3588-orangepi-5-plus.dts
---- arch/arm/dts/rk3588-orangepi-5-plus.dts.orig
-+++ arch/arm/dts/rk3588-orangepi-5-plus.dts
-@@ -23,7 +23,7 @@
- };
-
- chosen {
-- stdout-path = "serial2:1500000n8";
-+ stdout-path = "serial2:115200n8";
- };
-
- adc-keys-0 {
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-rock-5b_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-rock-5b_dts
deleted file mode 100644
index f2eb46bd109..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588-rock-5b_dts
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk3588-rock-5b.dts
---- arch/arm/dts/rk3588-rock-5b.dts.orig
-+++ arch/arm/dts/rk3588-rock-5b.dts
-@@ -18,7 +18,7 @@
- };
-
- chosen {
-- stdout-path = "serial2:1500000n8";
-+ stdout-path = "serial2:115200n8";
- };
-
- analog-sound {
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6c_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6c_dts
deleted file mode 100644
index 50a7ab3a697..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6c_dts
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: arch/arm/dts/rk3588s-nanopi-r6c.dts
---- arch/arm/dts/rk3588s-nanopi-r6c.dts.orig
-+++ arch/arm/dts/rk3588s-nanopi-r6c.dts
-@@ -0,0 +1,14 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+
-+/dts-v1/;
-+
-+#include "rk3588s-nanopi-r6s.dts"
-+
-+/ {
-+ model = "FriendlyElec NanoPi R6C";
-+ compatible = "friendlyarm,nanopi-r6c", "rockchip,rk3588s";
-+};
-+
-+&lan2_led {
-+ label = "user_led";
-+};
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6s_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6s_dts
deleted file mode 100644
index 201c932c1b5..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-nanopi-r6s_dts
+++ /dev/null
@@ -1,769 +0,0 @@
-Index: arch/arm/dts/rk3588s-nanopi-r6s.dts
---- arch/arm/dts/rk3588s-nanopi-r6s.dts.orig
-+++ arch/arm/dts/rk3588s-nanopi-r6s.dts
-@@ -0,0 +1,765 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+
-+/dts-v1/;
-+
-+#include <dt-bindings/pinctrl/rockchip.h>
-+#include <dt-bindings/gpio/gpio.h>
-+#include <dt-bindings/input/input.h>
-+#include "rk3588s.dtsi"
-+
-+/ {
-+ model = "FriendlyElec NanoPi R6S";
-+ compatible = "friendlyarm,nanopi-r6s", "rockchip,rk3588s";
-+
-+ aliases {
-+ ethernet0 = &gmac1;
-+ mmc0 = &sdmmc;
-+ mmc1 = &sdhci;
-+ serial2 = &uart2;
-+ };
-+
-+ chosen {
-+ stdout-path = "serial2:115200n8";
-+ };
-+
-+ adc-keys {
-+ compatible = "adc-keys";
-+ io-channels = <&saradc 0>;
-+ io-channel-names = "buttons";
-+ keyup-threshold-microvolt = <1800000>;
-+ poll-interval = <100>;
-+
-+ button-maskrom {
-+ label = "Maskrom";
-+ linux,code = <KEY_VENDOR>;
-+ press-threshold-microvolt = <1800>;
-+ };
-+ };
-+
-+ gpio-keys {
-+ compatible = "gpio-keys";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&key1_pin>;
-+
-+ button-user {
-+ label = "User";
-+ linux,code = <BTN_1>;
-+ gpios = <&gpio1 RK_PC0 GPIO_ACTIVE_LOW>;
-+ debounce-interval = <50>;
-+ };
-+ };
-+
-+ leds {
-+ compatible = "gpio-leds";
-+
-+ sys_led: led-0 {
-+ label = "sys_led";
-+ gpios = <&gpio1 RK_PC1 GPIO_ACTIVE_HIGH>;
-+ linux,default-trigger = "heartbeat";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&sys_led_pin>;
-+ };
-+
-+ wan_led: led-1 {
-+ label = "wan_led";
-+ gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&wan_led_pin>;
-+ };
-+
-+ lan1_led: led-2 {
-+ label = "lan1_led";
-+ gpios = <&gpio1 RK_PC3 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&lan1_led_pin>;
-+ };
-+
-+ lan2_led: led-3 {
-+ label = "lan2_led";
-+ gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&lan2_led_pin>;
-+ };
-+ };
-+
-+ vcc5v0_sys: vcc5v0-sys-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc5v0_sys";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ };
-+
-+ vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc_1v1_nldo_s3";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1100000>;
-+ regulator-max-microvolt = <1100000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
-+ vcc_3v3_s0: vcc-3v3-s0-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-name = "vcc_3v3_s0";
-+ vin-supply = <&vcc_3v3_s3>;
-+ };
-+
-+ vcc_3v3_sd_s0: vcc-3v3-sd-s0-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpios = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&sd_s0_pwr>;
-+ regulator-name = "vcc_3v3_sd_s0";
-+ regulator-boot-on;
-+ regulator-max-microvolt = <3000000>;
-+ regulator-min-microvolt = <3000000>;
-+ vin-supply = <&vcc_3v3_s3>;
-+ };
-+
-+ vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc_3v3_pcie20";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc_3v3_s3>;
-+ };
-+
-+ vcc5v0_usb: vcc5v0-usb-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc5v0_usb";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
-+ vcc5v0_usb_otg0: vcc5v0-usb-otg0-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&typec5v_pwren>;
-+ regulator-name = "vcc5v0_usb_otg0";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc5v0_usb>;
-+ };
-+
-+ vcc5v0_host_20: vcc5v0-host-20-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&vcc5v0_host20_en>;
-+ regulator-name = "vcc5v0_host_20";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc5v0_usb>;
-+ };
-+};
-+
-+&combphy0_ps {
-+ status = "okay";
-+};
-+
-+&combphy2_psu {
-+ status = "okay";
-+};
-+
-+&cpu_b0 {
-+ cpu-supply = <&vdd_cpu_big0_s0>;
-+};
-+
-+&cpu_b1 {
-+ cpu-supply = <&vdd_cpu_big0_s0>;
-+};
-+
-+&cpu_b2 {
-+ cpu-supply = <&vdd_cpu_big1_s0>;
-+};
-+
-+&cpu_b3 {
-+ cpu-supply = <&vdd_cpu_big1_s0>;
-+};
-+
-+&cpu_l0 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l1 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l2 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l3 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&gmac1 {
-+ clock_in_out = "output";
-+ phy-handle = <&rgmii_phy1>;
-+ phy-mode = "rgmii-rxid";
-+ pinctrl-0 = <&gmac1_miim
-+ &gmac1_tx_bus2
-+ &gmac1_rx_bus2
-+ &gmac1_rgmii_clk
-+ &gmac1_rgmii_bus>;
-+ pinctrl-names = "default";
-+ tx_delay = <0x42>;
-+ status = "okay";
-+};
-+
-+&i2c0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&i2c0m2_xfer>;
-+ status = "okay";
-+
-+ vdd_cpu_big0_s0: regulator@42 {
-+ compatible = "rockchip,rk8602";
-+ reg = <0x42>;
-+ fcs,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_cpu_big0_s0";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <1050000>;
-+ regulator-ramp-delay = <2300>;
-+ vin-supply = <&vcc5v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_cpu_big1_s0: regulator@43 {
-+ compatible = "rockchip,rk8603", "rockchip,rk8602";
-+ reg = <0x43>;
-+ fcs,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_cpu_big1_s0";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <1050000>;
-+ regulator-ramp-delay = <2300>;
-+ vin-supply = <&vcc5v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+};
-+
-+&i2c2 {
-+ status = "okay";
-+
-+ vdd_npu_s0: regulator@42 {
-+ compatible = "rockchip,rk8602";
-+ reg = <0x42>;
-+ fcs,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_npu_s0";
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <2300>;
-+ regulator-boot-on;
-+ regulator-always-on;
-+ vin-supply = <&vcc5v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+};
-+
-+&i2c6 {
-+ clock-frequency = <200000>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&i2c6m0_xfer>;
-+ status = "okay";
-+
-+ hym8563: rtc@51 {
-+ compatible = "haoyu,hym8563";
-+ reg = <0x51>;
-+ #clock-cells = <0>;
-+ clock-output-names = "hym8563";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rtc_int>;
-+ interrupt-parent = <&gpio0>;
-+ interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
-+ wakeup-source;
-+ };
-+};
-+
-+&mdio1 {
-+ rgmii_phy1: ethernet-phy@1 {
-+ compatible = "ethernet-phy-id001c.c916";
-+ reg = <0x1>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rtl8211f_rst>;
-+ reset-assert-us = <20000>;
-+ reset-deassert-us = <100000>;
-+ reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
-+ };
-+};
-+
-+&pcie2x1l1 {
-+ reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc_3v3_pcie20>;
-+ status = "okay";
-+};
-+
-+&pcie2x1l2 {
-+ reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc_3v3_pcie20>;
-+ status = "okay";
-+};
-+
-+&pinctrl {
-+ gpio-key {
-+ key1_pin: key1-pin {
-+ rockchip,pins = <1 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
-+ };
-+ };
-+
-+ gpio-leds {
-+ sys_led_pin: sys-led-pin {
-+ rockchip,pins =
-+ <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ wan_led_pin: wan-led-pin {
-+ rockchip,pins =
-+ <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ lan1_led_pin: lan1-led-pin {
-+ rockchip,pins =
-+ <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ lan2_led_pin: lan2-led-pin {
-+ rockchip,pins =
-+ <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
-+ hym8563 {
-+ rtc_int: rtc-int {
-+ rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
-+ };
-+ };
-+
-+ sdmmc {
-+ sd_s0_pwr: sd-s0-pwr {
-+ rockchip,pins = <4 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
-+ };
-+ };
-+
-+ usb {
-+ typec5v_pwren: typec5v-pwren {
-+ rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ vcc5v0_host20_en: vcc5v0-host20-en {
-+ rockchip,pins = <4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
-+ rtl8211f {
-+ rtl8211f_rst: rtl8211f-rst {
-+ rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+};
-+
-+&saradc {
-+ vref-supply = <&avcc_1v8_s0>;
-+ status = "okay";
-+};
-+
-+&sdhci {
-+ bus-width = <8>;
-+ no-sdio;
-+ no-sd;
-+ non-removable;
-+ mmc-hs200-1_8v;
-+ status = "okay";
-+};
-+
-+&sdmmc {
-+ bus-width = <4>;
-+ cap-sd-highspeed;
-+ disable-wp;
-+ max-frequency = <150000000>;
-+ no-mmc;
-+ no-sdio;
-+ sd-uhs-sdr104;
-+ vmmc-supply = <&vcc_3v3_sd_s0>;
-+ vqmmc-supply = <&vccio_sd_s0>;
-+ status = "okay";
-+};
-+
-+&spi2 {
-+ status = "okay";
-+ assigned-clocks = <&cru CLK_SPI2>;
-+ assigned-clock-rates = <200000000>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
-+ num-cs = <1>;
-+
-+ pmic@0 {
-+ compatible = "rockchip,rk806";
-+ spi-max-frequency = <1000000>;
-+ reg = <0x0>;
-+
-+ interrupt-parent = <&gpio0>;
-+ interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
-+
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
-+ <&rk806_dvs2_null>, <&rk806_dvs3_null>;
-+
-+ system-power-controller;
-+
-+ vcc1-supply = <&vcc5v0_sys>;
-+ vcc2-supply = <&vcc5v0_sys>;
-+ vcc3-supply = <&vcc5v0_sys>;
-+ vcc4-supply = <&vcc5v0_sys>;
-+ vcc5-supply = <&vcc5v0_sys>;
-+ vcc6-supply = <&vcc5v0_sys>;
-+ vcc7-supply = <&vcc5v0_sys>;
-+ vcc8-supply = <&vcc5v0_sys>;
-+ vcc9-supply = <&vcc5v0_sys>;
-+ vcc10-supply = <&vcc5v0_sys>;
-+ vcc11-supply = <&vcc_2v0_pldo_s3>;
-+ vcc12-supply = <&vcc5v0_sys>;
-+ vcc13-supply = <&vcc_1v1_nldo_s3>;
-+ vcc14-supply = <&vcc_1v1_nldo_s3>;
-+ vcca-supply = <&vcc5v0_sys>;
-+
-+ gpio-controller;
-+ #gpio-cells = <2>;
-+
-+ rk806_dvs1_null: dvs1-null-pins {
-+ pins = "gpio_pwrctrl1";
-+ function = "pin_fun0";
-+ };
-+
-+ rk806_dvs2_null: dvs2-null-pins {
-+ pins = "gpio_pwrctrl2";
-+ function = "pin_fun0";
-+ };
-+
-+ rk806_dvs3_null: dvs3-null-pins {
-+ pins = "gpio_pwrctrl3";
-+ function = "pin_fun0";
-+ };
-+
-+ regulators {
-+ vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_gpu_s0";
-+ regulator-enable-ramp-delay = <400>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_cpu_lit_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_log_s0: dcdc-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <675000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_log_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <750000>;
-+ };
-+ };
-+
-+ vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_vdenc_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_ddr_s0: dcdc-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <675000>;
-+ regulator-max-microvolt = <900000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_ddr_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <850000>;
-+ };
-+ };
-+
-+ vdd2_ddr_s3: dcdc-reg6 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-name = "vdd2_ddr_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ };
-+ };
-+
-+ vcc_2v0_pldo_s3: dcdc-reg7 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <2000000>;
-+ regulator-max-microvolt = <2000000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_2v0_pldo_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <2000000>;
-+ };
-+ };
-+
-+ vcc_3v3_s3: dcdc-reg8 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-name = "vcc_3v3_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <3300000>;
-+ };
-+ };
-+
-+ vddq_ddr_s0: dcdc-reg9 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-name = "vddq_ddr_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vcc_1v8_s3: dcdc-reg10 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "vcc_1v8_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ avcc_1v8_s0: pldo-reg1 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "avcc_1v8_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ vcc_1v8_s0: pldo-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "vcc_1v8_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ avdd_1v2_s0: pldo-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1200000>;
-+ regulator-max-microvolt = <1200000>;
-+ regulator-name = "avdd_1v2_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ avcc_3v3_s0: pldo-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "avcc_3v3_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vccio_sd_s0: pldo-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vccio_sd_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ pldo6_s3: pldo-reg6 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "pldo6_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ vdd_0v75_s3: nldo-reg1 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "vdd_0v75_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <750000>;
-+ };
-+ };
-+
-+ avdd_ddr_pll_s0: nldo-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <850000>;
-+ regulator-max-microvolt = <850000>;
-+ regulator-name = "avdd_ddr_pll_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <850000>;
-+ };
-+ };
-+
-+ avdd_0v75_s0: nldo-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "avdd_0v75_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ avdd_0v85_s0: nldo-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <850000>;
-+ regulator-max-microvolt = <850000>;
-+ regulator-name = "avdd_0v85_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_0v75_s0: nldo-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "vdd_0v75_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+ };
-+ };
-+};
-+
-+&tsadc {
-+ status = "okay";
-+};
-+
-+&u2phy2 {
-+ status = "okay";
-+};
-+
-+&u2phy2_host {
-+ phy-supply = <&vcc5v0_host_20>;
-+ status = "okay";
-+};
-+
-+&uart2 {
-+ pinctrl-0 = <&uart2m0_xfer>;
-+ status = "okay";
-+};
-+
-+&usb_host0_ehci {
-+ status = "okay";
-+};
-+
-+&usb_host0_ohci {
-+ status = "okay";
-+};
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-orangepi-5_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-orangepi-5_dts
deleted file mode 100644
index 9c6570a215d..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-orangepi-5_dts
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk3588s-orangepi-5.dts
---- arch/arm/dts/rk3588s-orangepi-5.dts.orig
-+++ arch/arm/dts/rk3588s-orangepi-5.dts
-@@ -18,7 +18,7 @@
- };
-
- chosen {
-- stdout-path = "serial2:1500000n8";
-+ stdout-path = "serial2:115200n8";
- };
-
- adc-keys {
diff --git a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-rock-5a_dts b/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-rock-5a_dts
deleted file mode 100644
index aae6431e8a6..00000000000
--- a/sysutils/u-boot/rk3588/patches/patch-arch_arm_dts_rk3588s-rock-5a_dts
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: arch/arm/dts/rk3588s-rock-5a.dts
---- arch/arm/dts/rk3588s-rock-5a.dts.orig
-+++ arch/arm/dts/rk3588s-rock-5a.dts
-@@ -32,7 +32,7 @@
- };
-
- chosen {
-- stdout-path = "serial2:1500000n8";
-+ stdout-path = "serial2:115200n8";
- };
-
- leds {
diff --git a/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6c-rk3588s_defconfig b/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6c-rk3588s_defconfig
index e4939757c81..7e593966209 100644
--- a/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6c-rk3588s_defconfig
+++ b/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6c-rk3588s_defconfig
@@ -1,24 +1,15 @@
Index: configs/nanopi-r6c-rk3588s_defconfig
--- configs/nanopi-r6c-rk3588s_defconfig.orig
+++ configs/nanopi-r6c-rk3588s_defconfig
-@@ -0,0 +1,90 @@
+@@ -0,0 +1,74 @@
+CONFIG_ARM=y
+CONFIG_SKIP_LOWLEVEL_INIT=y
+CONFIG_COUNTER_FREQUENCY=24000000
+CONFIG_ARCH_ROCKCHIP=y
-+CONFIG_TEXT_BASE=0x00a00000
-+CONFIG_SPL_LIBCOMMON_SUPPORT=y
-+CONFIG_SPL_LIBGENERIC_SUPPORT=y
-+CONFIG_NR_DRAM_BANKS=2
-+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
-+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc00000
-+CONFIG_DEFAULT_DEVICE_TREE="rk3588s-nanopi-r6c"
++CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3588s-nanopi-r6c"
+CONFIG_ROCKCHIP_RK3588=y
-+CONFIG_SPL_ROCKCHIP_COMMON_BOARD=y
+CONFIG_SPL_SERIAL=y
-+CONFIG_SPL_STACK_R_ADDR=0x600000
+CONFIG_TARGET_EVB_RK3588=y
-+CONFIG_SPL_STACK=0x400000
+CONFIG_DEBUG_UART_BASE=0xFEB50000
+CONFIG_DEBUG_UART_CLOCK=24000000
+CONFIG_SYS_LOAD_ADDR=0xc00800
@@ -29,18 +20,12 @@ Index: configs/nanopi-r6c-rk3588s_defconfig
+CONFIG_SPL_FIT_SIGNATURE=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_LEGACY_IMAGE_FORMAT=y
-+CONFIG_OF_BOARD_SETUP=y
+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3588s-nanopi-r6c.dtb"
+# CONFIG_DISPLAY_CPUINFO is not set
+CONFIG_DISPLAY_BOARDINFO_LATE=y
+CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_PAD_TO=0x7f8000
-+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
-+CONFIG_SPL_BSS_START_ADDR=0x4000000
-+CONFIG_SPL_BSS_MAX_SIZE=0x4000
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
-+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-+CONFIG_SPL_STACK_R=y
+CONFIG_SPL_ATF=y
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_GPT=y
@@ -83,7 +68,6 @@ Index: configs/nanopi-r6c-rk3588s_defconfig
+CONFIG_SYS_NS16550_MEM32=y
+CONFIG_SYSRESET=y
+CONFIG_USB=y
-+CONFIG_DM_USB_GADGET=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_GENERIC=y
diff --git a/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6s-rk3588s_defconfig b/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6s-rk3588s_defconfig
index abb7b4abac2..e50eb71488f 100644
--- a/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6s-rk3588s_defconfig
+++ b/sysutils/u-boot/rk3588/patches/patch-configs_nanopi-r6s-rk3588s_defconfig
@@ -1,24 +1,16 @@
Index: configs/nanopi-r6s-rk3588s_defconfig
--- configs/nanopi-r6s-rk3588s_defconfig.orig
+++ configs/nanopi-r6s-rk3588s_defconfig
-@@ -0,0 +1,89 @@
+@@ -0,0 +1,74 @@
+CONFIG_ARM=y
+CONFIG_SKIP_LOWLEVEL_INIT=y
+CONFIG_COUNTER_FREQUENCY=24000000
+CONFIG_ARCH_ROCKCHIP=y
-+CONFIG_TEXT_BASE=0x00a00000
-+CONFIG_SPL_LIBCOMMON_SUPPORT=y
-+CONFIG_SPL_LIBGENERIC_SUPPORT=y
-+CONFIG_NR_DRAM_BANKS=2
-+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
-+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc00000
-+CONFIG_DEFAULT_DEVICE_TREE="rk3588s-nanopi-r6s"
++CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3588s-nanopi-r6s"
+CONFIG_ROCKCHIP_RK3588=y
+CONFIG_SPL_ROCKCHIP_COMMON_BOARD=y
+CONFIG_SPL_SERIAL=y
-+CONFIG_SPL_STACK_R_ADDR=0x600000
+CONFIG_TARGET_EVB_RK3588=y
-+CONFIG_SPL_STACK=0x400000
+CONFIG_DEBUG_UART_BASE=0xFEB50000
+CONFIG_DEBUG_UART_CLOCK=24000000
+CONFIG_SYS_LOAD_ADDR=0xc00800
@@ -29,18 +21,12 @@ Index: configs/nanopi-r6s-rk3588s_defconfig
+CONFIG_SPL_FIT_SIGNATURE=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_LEGACY_IMAGE_FORMAT=y
-+CONFIG_OF_BOARD_SETUP=y
+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3588s-nanopi-r6s.dtb"
+# CONFIG_DISPLAY_CPUINFO is not set
+CONFIG_DISPLAY_BOARDINFO_LATE=y
+CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_PAD_TO=0x7f8000
-+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
-+CONFIG_SPL_BSS_START_ADDR=0x4000000
-+CONFIG_SPL_BSS_MAX_SIZE=0x4000
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
-+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-+CONFIG_SPL_STACK_R=y
+CONFIG_SPL_ATF=y
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_GPT=y
@@ -82,7 +68,6 @@ Index: configs/nanopi-r6s-rk3588s_defconfig
+CONFIG_SYS_NS16550_MEM32=y
+CONFIG_SYSRESET=y
+CONFIG_USB=y
-+CONFIG_DM_USB_GADGET=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_GENERIC=y
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-nanopc-t6_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-nanopc-t6_dts
new file mode 100644
index 00000000000..8c8123e89e4
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-nanopc-t6_dts
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588-nanopc-t6.dts
+--- dts/upstream/src/arm64/rockchip/rk3588-nanopc-t6.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588-nanopc-t6.dts
+@@ -22,7 +22,7 @@
+ };
+
+ chosen {
+- stdout-path = "serial2:1500000n8";
++ stdout-path = "serial2:115200n8";
+ };
+
+ leds {
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-orangepi-5-plus_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-orangepi-5-plus_dts
new file mode 100644
index 00000000000..9fc8298c26e
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-orangepi-5-plus_dts
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588-orangepi-5-plus.dts
+--- dts/upstream/src/arm64/rockchip/rk3588-orangepi-5-plus.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588-orangepi-5-plus.dts
+@@ -22,7 +22,7 @@
+ };
+
+ chosen {
+- stdout-path = "serial2:1500000n8";
++ stdout-path = "serial2:115200n8";
+ };
+
+ adc-keys-0 {
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-rock-5b_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-rock-5b_dts
new file mode 100644
index 00000000000..7f5a113eac7
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588-rock-5b_dts
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588-rock-5b.dts
+--- dts/upstream/src/arm64/rockchip/rk3588-rock-5b.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588-rock-5b.dts
+@@ -17,7 +17,7 @@
+ };
+
+ chosen {
+- stdout-path = "serial2:1500000n8";
++ stdout-path = "serial2:115200n8";
+ };
+
+ analog-sound {
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6c_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6c_dts
new file mode 100644
index 00000000000..567f71d6066
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6c_dts
@@ -0,0 +1,18 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6c.dts
+--- dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6c.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6c.dts
+@@ -0,0 +1,14 @@
++// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
++
++/dts-v1/;
++
++#include "rk3588s-nanopi-r6s.dts"
++
++/ {
++ model = "FriendlyElec NanoPi R6C";
++ compatible = "friendlyarm,nanopi-r6c", "rockchip,rk3588s";
++};
++
++&lan2_led {
++ label = "user_led";
++};
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6s_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6s_dts
new file mode 100644
index 00000000000..32c354e5a72
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-nanopi-r6s_dts
@@ -0,0 +1,769 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6s.dts
+--- dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6s.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588s-nanopi-r6s.dts
+@@ -0,0 +1,765 @@
++// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
++
++/dts-v1/;
++
++#include <dt-bindings/pinctrl/rockchip.h>
++#include <dt-bindings/gpio/gpio.h>
++#include <dt-bindings/input/input.h>
++#include "rk3588s.dtsi"
++
++/ {
++ model = "FriendlyElec NanoPi R6S";
++ compatible = "friendlyarm,nanopi-r6s", "rockchip,rk3588s";
++
++ aliases {
++ ethernet0 = &gmac1;
++ mmc0 = &sdmmc;
++ mmc1 = &sdhci;
++ serial2 = &uart2;
++ };
++
++ chosen {
++ stdout-path = "serial2:115200n8";
++ };
++
++ adc-keys {
++ compatible = "adc-keys";
++ io-channels = <&saradc 0>;
++ io-channel-names = "buttons";
++ keyup-threshold-microvolt = <1800000>;
++ poll-interval = <100>;
++
++ button-maskrom {
++ label = "Maskrom";
++ linux,code = <KEY_VENDOR>;
++ press-threshold-microvolt = <1800>;
++ };
++ };
++
++ gpio-keys {
++ compatible = "gpio-keys";
++ pinctrl-names = "default";
++ pinctrl-0 = <&key1_pin>;
++
++ button-user {
++ label = "User";
++ linux,code = <BTN_1>;
++ gpios = <&gpio1 RK_PC0 GPIO_ACTIVE_LOW>;
++ debounce-interval = <50>;
++ };
++ };
++
++ leds {
++ compatible = "gpio-leds";
++
++ sys_led: led-0 {
++ label = "sys_led";
++ gpios = <&gpio1 RK_PC1 GPIO_ACTIVE_HIGH>;
++ linux,default-trigger = "heartbeat";
++ pinctrl-names = "default";
++ pinctrl-0 = <&sys_led_pin>;
++ };
++
++ wan_led: led-1 {
++ label = "wan_led";
++ gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&wan_led_pin>;
++ };
++
++ lan1_led: led-2 {
++ label = "lan1_led";
++ gpios = <&gpio1 RK_PC3 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&lan1_led_pin>;
++ };
++
++ lan2_led: led-3 {
++ label = "lan2_led";
++ gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&lan2_led_pin>;
++ };
++ };
++
++ vcc5v0_sys: vcc5v0-sys-regulator {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc5v0_sys";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ };
++
++ vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc_1v1_nldo_s3";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1100000>;
++ regulator-max-microvolt = <1100000>;
++ vin-supply = <&vcc5v0_sys>;
++ };
++
++ vcc_3v3_s0: vcc-3v3-s0-regulator {
++ compatible = "regulator-fixed";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-name = "vcc_3v3_s0";
++ vin-supply = <&vcc_3v3_s3>;
++ };
++
++ vcc_3v3_sd_s0: vcc-3v3-sd-s0-regulator {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpios = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&sd_s0_pwr>;
++ regulator-name = "vcc_3v3_sd_s0";
++ regulator-boot-on;
++ regulator-max-microvolt = <3000000>;
++ regulator-min-microvolt = <3000000>;
++ vin-supply = <&vcc_3v3_s3>;
++ };
++
++ vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc_3v3_pcie20";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ vin-supply = <&vcc_3v3_s3>;
++ };
++
++ vcc5v0_usb: vcc5v0-usb-regulator {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc5v0_usb";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ vin-supply = <&vcc5v0_sys>;
++ };
++
++ vcc5v0_usb_otg0: vcc5v0-usb-otg0-regulator {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&typec5v_pwren>;
++ regulator-name = "vcc5v0_usb_otg0";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ vin-supply = <&vcc5v0_usb>;
++ };
++
++ vcc5v0_host_20: vcc5v0-host-20-regulator {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&vcc5v0_host20_en>;
++ regulator-name = "vcc5v0_host_20";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ vin-supply = <&vcc5v0_usb>;
++ };
++};
++
++&combphy0_ps {
++ status = "okay";
++};
++
++&combphy2_psu {
++ status = "okay";
++};
++
++&cpu_b0 {
++ cpu-supply = <&vdd_cpu_big0_s0>;
++};
++
++&cpu_b1 {
++ cpu-supply = <&vdd_cpu_big0_s0>;
++};
++
++&cpu_b2 {
++ cpu-supply = <&vdd_cpu_big1_s0>;
++};
++
++&cpu_b3 {
++ cpu-supply = <&vdd_cpu_big1_s0>;
++};
++
++&cpu_l0 {
++ cpu-supply = <&vdd_cpu_lit_s0>;
++};
++
++&cpu_l1 {
++ cpu-supply = <&vdd_cpu_lit_s0>;
++};
++
++&cpu_l2 {
++ cpu-supply = <&vdd_cpu_lit_s0>;
++};
++
++&cpu_l3 {
++ cpu-supply = <&vdd_cpu_lit_s0>;
++};
++
++&gmac1 {
++ clock_in_out = "output";
++ phy-handle = <&rgmii_phy1>;
++ phy-mode = "rgmii-rxid";
++ pinctrl-0 = <&gmac1_miim
++ &gmac1_tx_bus2
++ &gmac1_rx_bus2
++ &gmac1_rgmii_clk
++ &gmac1_rgmii_bus>;
++ pinctrl-names = "default";
++ tx_delay = <0x42>;
++ status = "okay";
++};
++
++&i2c0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0m2_xfer>;
++ status = "okay";
++
++ vdd_cpu_big0_s0: regulator@42 {
++ compatible = "rockchip,rk8602";
++ reg = <0x42>;
++ fcs,suspend-voltage-selector = <1>;
++ regulator-name = "vdd_cpu_big0_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <1050000>;
++ regulator-ramp-delay = <2300>;
++ vin-supply = <&vcc5v0_sys>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vdd_cpu_big1_s0: regulator@43 {
++ compatible = "rockchip,rk8603", "rockchip,rk8602";
++ reg = <0x43>;
++ fcs,suspend-voltage-selector = <1>;
++ regulator-name = "vdd_cpu_big1_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <1050000>;
++ regulator-ramp-delay = <2300>;
++ vin-supply = <&vcc5v0_sys>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++};
++
++&i2c2 {
++ status = "okay";
++
++ vdd_npu_s0: regulator@42 {
++ compatible = "rockchip,rk8602";
++ reg = <0x42>;
++ fcs,suspend-voltage-selector = <1>;
++ regulator-name = "vdd_npu_s0";
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <950000>;
++ regulator-ramp-delay = <2300>;
++ regulator-boot-on;
++ regulator-always-on;
++ vin-supply = <&vcc5v0_sys>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++};
++
++&i2c6 {
++ clock-frequency = <200000>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c6m0_xfer>;
++ status = "okay";
++
++ hym8563: rtc@51 {
++ compatible = "haoyu,hym8563";
++ reg = <0x51>;
++ #clock-cells = <0>;
++ clock-output-names = "hym8563";
++ pinctrl-names = "default";
++ pinctrl-0 = <&rtc_int>;
++ interrupt-parent = <&gpio0>;
++ interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
++ wakeup-source;
++ };
++};
++
++&mdio1 {
++ rgmii_phy1: ethernet-phy@1 {
++ compatible = "ethernet-phy-id001c.c916";
++ reg = <0x1>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&rtl8211f_rst>;
++ reset-assert-us = <20000>;
++ reset-deassert-us = <100000>;
++ reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
++ };
++};
++
++&pcie2x1l1 {
++ reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
++ vpcie3v3-supply = <&vcc_3v3_pcie20>;
++ status = "okay";
++};
++
++&pcie2x1l2 {
++ reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
++ vpcie3v3-supply = <&vcc_3v3_pcie20>;
++ status = "okay";
++};
++
++&pinctrl {
++ gpio-key {
++ key1_pin: key1-pin {
++ rockchip,pins = <1 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
++ };
++ };
++
++ gpio-leds {
++ sys_led_pin: sys-led-pin {
++ rockchip,pins =
++ <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++
++ wan_led_pin: wan-led-pin {
++ rockchip,pins =
++ <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++
++ lan1_led_pin: lan1-led-pin {
++ rockchip,pins =
++ <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++
++ lan2_led_pin: lan2-led-pin {
++ rockchip,pins =
++ <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++ };
++
++ hym8563 {
++ rtc_int: rtc-int {
++ rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
++ };
++ };
++
++ sdmmc {
++ sd_s0_pwr: sd-s0-pwr {
++ rockchip,pins = <4 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
++ };
++ };
++
++ usb {
++ typec5v_pwren: typec5v-pwren {
++ rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++
++ vcc5v0_host20_en: vcc5v0-host20-en {
++ rockchip,pins = <4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++ };
++
++ rtl8211f {
++ rtl8211f_rst: rtl8211f-rst {
++ rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++ };
++};
++
++&saradc {
++ vref-supply = <&avcc_1v8_s0>;
++ status = "okay";
++};
++
++&sdhci {
++ bus-width = <8>;
++ no-sdio;
++ no-sd;
++ non-removable;
++ mmc-hs200-1_8v;
++ status = "okay";
++};
++
++&sdmmc {
++ bus-width = <4>;
++ cap-sd-highspeed;
++ disable-wp;
++ max-frequency = <150000000>;
++ no-mmc;
++ no-sdio;
++ sd-uhs-sdr104;
++ vmmc-supply = <&vcc_3v3_sd_s0>;
++ vqmmc-supply = <&vccio_sd_s0>;
++ status = "okay";
++};
++
++&spi2 {
++ status = "okay";
++ assigned-clocks = <&cru CLK_SPI2>;
++ assigned-clock-rates = <200000000>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
++ num-cs = <1>;
++
++ pmic@0 {
++ compatible = "rockchip,rk806";
++ spi-max-frequency = <1000000>;
++ reg = <0x0>;
++
++ interrupt-parent = <&gpio0>;
++ interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
++
++ pinctrl-names = "default";
++ pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
++ <&rk806_dvs2_null>, <&rk806_dvs3_null>;
++
++ system-power-controller;
++
++ vcc1-supply = <&vcc5v0_sys>;
++ vcc2-supply = <&vcc5v0_sys>;
++ vcc3-supply = <&vcc5v0_sys>;
++ vcc4-supply = <&vcc5v0_sys>;
++ vcc5-supply = <&vcc5v0_sys>;
++ vcc6-supply = <&vcc5v0_sys>;
++ vcc7-supply = <&vcc5v0_sys>;
++ vcc8-supply = <&vcc5v0_sys>;
++ vcc9-supply = <&vcc5v0_sys>;
++ vcc10-supply = <&vcc5v0_sys>;
++ vcc11-supply = <&vcc_2v0_pldo_s3>;
++ vcc12-supply = <&vcc5v0_sys>;
++ vcc13-supply = <&vcc_1v1_nldo_s3>;
++ vcc14-supply = <&vcc_1v1_nldo_s3>;
++ vcca-supply = <&vcc5v0_sys>;
++
++ gpio-controller;
++ #gpio-cells = <2>;
++
++ rk806_dvs1_null: dvs1-null-pins {
++ pins = "gpio_pwrctrl1";
++ function = "pin_fun0";
++ };
++
++ rk806_dvs2_null: dvs2-null-pins {
++ pins = "gpio_pwrctrl2";
++ function = "pin_fun0";
++ };
++
++ rk806_dvs3_null: dvs3-null-pins {
++ pins = "gpio_pwrctrl3";
++ function = "pin_fun0";
++ };
++
++ regulators {
++ vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
++ regulator-boot-on;
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <950000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_gpu_s0";
++ regulator-enable-ramp-delay = <400>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <950000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_cpu_lit_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vdd_log_s0: dcdc-reg3 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <675000>;
++ regulator-max-microvolt = <750000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_log_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ regulator-suspend-microvolt = <750000>;
++ };
++ };
++
++ vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <550000>;
++ regulator-max-microvolt = <950000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_vdenc_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vdd_ddr_s0: dcdc-reg5 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <675000>;
++ regulator-max-microvolt = <900000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_ddr_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ regulator-suspend-microvolt = <850000>;
++ };
++ };
++
++ vdd2_ddr_s3: dcdc-reg6 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-name = "vdd2_ddr_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ };
++ };
++
++ vcc_2v0_pldo_s3: dcdc-reg7 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <2000000>;
++ regulator-max-microvolt = <2000000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vdd_2v0_pldo_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <2000000>;
++ };
++ };
++
++ vcc_3v3_s3: dcdc-reg8 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-name = "vcc_3v3_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <3300000>;
++ };
++ };
++
++ vddq_ddr_s0: dcdc-reg9 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-name = "vddq_ddr_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vcc_1v8_s3: dcdc-reg10 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-name = "vcc_1v8_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <1800000>;
++ };
++ };
++
++ avcc_1v8_s0: pldo-reg1 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-name = "avcc_1v8_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ regulator-suspend-microvolt = <1800000>;
++ };
++ };
++
++ vcc_1v8_s0: pldo-reg2 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-name = "vcc_1v8_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ regulator-suspend-microvolt = <1800000>;
++ };
++ };
++
++ avdd_1v2_s0: pldo-reg3 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-name = "avdd_1v2_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ avcc_3v3_s0: pldo-reg4 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "avcc_3v3_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vccio_sd_s0: pldo-reg5 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-ramp-delay = <12500>;
++ regulator-name = "vccio_sd_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ pldo6_s3: pldo-reg6 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-name = "pldo6_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <1800000>;
++ };
++ };
++
++ vdd_0v75_s3: nldo-reg1 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <750000>;
++ regulator-max-microvolt = <750000>;
++ regulator-name = "vdd_0v75_s3";
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <750000>;
++ };
++ };
++
++ avdd_ddr_pll_s0: nldo-reg2 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <850000>;
++ regulator-max-microvolt = <850000>;
++ regulator-name = "avdd_ddr_pll_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ regulator-suspend-microvolt = <850000>;
++ };
++ };
++
++ avdd_0v75_s0: nldo-reg3 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <750000>;
++ regulator-max-microvolt = <750000>;
++ regulator-name = "avdd_0v75_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ avdd_0v85_s0: nldo-reg4 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <850000>;
++ regulator-max-microvolt = <850000>;
++ regulator-name = "avdd_0v85_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vdd_0v75_s0: nldo-reg5 {
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <750000>;
++ regulator-max-microvolt = <750000>;
++ regulator-name = "vdd_0v75_s0";
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++ };
++ };
++};
++
++&tsadc {
++ status = "okay";
++};
++
++&u2phy2 {
++ status = "okay";
++};
++
++&u2phy2_host {
++ phy-supply = <&vcc5v0_host_20>;
++ status = "okay";
++};
++
++&uart2 {
++ pinctrl-0 = <&uart2m0_xfer>;
++ status = "okay";
++};
++
++&usb_host0_ehci {
++ status = "okay";
++};
++
++&usb_host0_ohci {
++ status = "okay";
++};
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-orangepi-5_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-orangepi-5_dts
new file mode 100644
index 00000000000..bac4a866816
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-orangepi-5_dts
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588s-orangepi-5.dts
+--- dts/upstream/src/arm64/rockchip/rk3588s-orangepi-5.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588s-orangepi-5.dts
+@@ -18,7 +18,7 @@
+ };
+
+ chosen {
+- stdout-path = "serial2:1500000n8";
++ stdout-path = "serial2:115200n8";
+ };
+
+ adc-keys {
diff --git a/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-rock-5a_dts b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-rock-5a_dts
new file mode 100644
index 00000000000..9c7029fa392
--- /dev/null
+++ b/sysutils/u-boot/rk3588/patches/patch-dts_upstream_src_arm64_rockchip_rk3588s-rock-5a_dts
@@ -0,0 +1,12 @@
+Index: dts/upstream/src/arm64/rockchip/rk3588s-rock-5a.dts
+--- dts/upstream/src/arm64/rockchip/rk3588s-rock-5a.dts.orig
++++ dts/upstream/src/arm64/rockchip/rk3588s-rock-5a.dts
+@@ -32,7 +32,7 @@
+ };
+
+ chosen {
+- stdout-path = "serial2:1500000n8";
++ stdout-path = "serial2:115200n8";
+ };
+
+ leds {

No comments:

Post a Comment