$ git diff --patch-with-stat --summary 98a80ab176fc4a1c2907c1ebb68eb12634701a29..9a6450e046f4756d2fd0f8798d3109e56ef88c52
.abf.yml | 2 +-
add-u-boot-delay-rockpro64.patch | 11 +++++++++++
add-u-boot-setexpr-rockpro64.patch | 12 ++++++++++++
general-prioritize-sd.patch | 15 +++++++++++++++
rk3399-enable-stable-mac.patch | 15 +++++++++++++++
uboot-tools.spec | 9 +++++++--
zzz-usb-otg-fix.patch | 13 +++++++++++++
7 files changed, 74 insertions(+), 3 deletions(-)
create mode 100644 add-u-boot-delay-rockpro64.patch
create mode 100644 add-u-boot-setexpr-rockpro64.patch
create mode 100644 general-prioritize-sd.patch
create mode 100644 rk3399-enable-stable-mac.patch
create mode 100644 zzz-usb-otg-fix.patch
diff --git a/.abf.yml b/.abf.yml
index c7377c1..8b4bb5a 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,2 +1,2 @@
sources:
- u-boot-2021.04-rc4.tar.bz2: 92e482965890c2e1fe08f671ec7d176c970f5804
+ u-boot-2021.04.tar.bz2: a69cf9cf8ddda0935b0bfed86e90fde1124f133d
diff --git a/add-u-boot-delay-rockpro64.patch b/add-u-boot-delay-rockpro64.patch
new file mode 100644
index 0000000..59f6991
--- /dev/null
+++ b/add-u-boot-delay-rockpro64.patch
@@ -0,0 +1,11 @@
+diff -Naur a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
+--- a/configs/rockpro64-rk3399_defconfig 2021-04-01 19:12:33.531581841 +0000
++++ b/configs/rockpro64-rk3399_defconfig 2021-04-01 19:13:33.301652439 +0000
+@@ -12,6 +12,7 @@
+ CONFIG_SPL_SPI_SUPPORT=y
+ CONFIG_DEFAULT_DEVICE_TREE="rk3399-rockpro64"
+ CONFIG_DEBUG_UART=y
++CONFIG_BOOTDELAY=2
+ CONFIG_USE_PREBOOT=n
+ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-rockpro64.dtb"
+ CONFIG_DISPLAY_BOARDINFO_LATE=y
diff --git a/add-u-boot-setexpr-rockpro64.patch b/add-u-boot-setexpr-rockpro64.patch
new file mode 100644
index 0000000..074a93c
--- /dev/null
+++ b/add-u-boot-setexpr-rockpro64.patch
@@ -0,0 +1,12 @@
+diff -Naur a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
+--- a/configs/rockpro64-rk3399_defconfig 2021-04-01 19:13:33.301652439 +0000
++++ b/configs/rockpro64-rk3399_defconfig 2021-04-01 19:14:59.523752811 +0000
+@@ -27,7 +27,7 @@
+ CONFIG_CMD_MMC=y
+ CONFIG_CMD_PCI=y
+ CONFIG_CMD_USB=y
+-# CONFIG_CMD_SETEXPR is not set
++CONFIG_CMD_SETEXPR=y
+ CONFIG_CMD_TIME=y
+ CONFIG_SPL_OF_CONTROL=y
+ CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
diff --git a/general-prioritize-sd.patch b/general-prioritize-sd.patch
new file mode 100644
index 0000000..b71d4a2
--- /dev/null
+++ b/general-prioritize-sd.patch
@@ -0,0 +1,15 @@
+diff --git a/include/configs/rockchip-common.h b/include/configs/rockchip-common.h
+index 68e1105a..906c22ed 100644
+--- a/include/configs/rockchip-common.h
++++ b/include/configs/rockchip-common.h
+@@ -14,8 +14,8 @@
+ /* First try to boot from SD (index 0), then eMMC (index 1) */
+ #if CONFIG_IS_ENABLED(CMD_MMC)
+ #define BOOT_TARGET_MMC(func) \
+- func(MMC, mmc, 0) \
+- func(MMC, mmc, 1)
++ func(MMC, mmc, 1) \
++ func(MMC, mmc, 0)
+ #else
+ #define BOOT_TARGET_MMC(func)
+ #endif
diff --git a/rk3399-enable-stable-mac.patch b/rk3399-enable-stable-mac.patch
new file mode 100644
index 0000000..5e2a9e4
--- /dev/null
+++ b/rk3399-enable-stable-mac.patch
@@ -0,0 +1,15 @@
+diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h
+index 126c3476..c6dccf4f 100644
+--- a/include/configs/rk3399_common.h
++++ b/include/configs/rk3399_common.h
+@@ -19,6 +19,10 @@
+ #define CONFIG_SYS_INIT_SP_ADDR 0x00300000
+ #define CONFIG_SYS_LOAD_ADDR 0x00800800
+
++#define CONFIG_MISC 1
++#define CONFIG_MISC_INIT_R 1
++#define CONFIG_ROCKCHIP_EFUSE 1
++
+ #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_TPL_BOOTROM_SUPPORT)
+ #define CONFIG_SPL_STACK 0x00400000
+ #define CONFIG_SPL_MAX_SIZE 0x40000
diff --git a/uboot-tools.spec b/uboot-tools.spec
index 2682951..e601747 100644
--- a/uboot-tools.spec
+++ b/uboot-tools.spec
@@ -1,8 +1,8 @@
-%global candidate rc4
+%undefine candidate
Name: uboot-tools
Version: 2021.04
-Release: 0%{?candidate:.%{candidate}.}4
+Release: %{?candidate:0.%{candidate}.}1
Summary: U-Boot utilities
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
URL: http://www.denx.de/wiki/U-Boot
@@ -32,6 +32,11 @@ Patch13: https://src.fedoraproject.org/rpms/uboot-tools/raw/master/f/0001-arm-dt
# Misc patches
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=973323
Patch100: u-boot-2021.04-rc3-fix-booting-on-rk3399.patch
+Patch101: https://raw.githubusercontent.com/armbian/build/master/patch/u-boot/u-boot-rockchip/zzz-usb-otg-fix.patch
+Patch103: https://raw.githubusercontent.com/armbian/build/master/patch/u-boot/u-boot-rockchip64-edge/add-u-boot-delay-rockpro64.patch
+Patch104: https://raw.githubusercontent.com/armbian/build/master/patch/u-boot/u-boot-rockchip64-edge/add-u-boot-setexpr-rockpro64.patch
+Patch105: https://raw.githubusercontent.com/armbian/build/master/patch/u-boot/u-boot-rockchip64-mainline/general-prioritize-sd.patch
+Patch106: https://raw.githubusercontent.com/armbian/build/master/patch/u-boot/u-boot-rockchip64-mainline/rk3399-enable-stable-mac.patch
BuildRequires: bc
BuildRequires: dtc
diff --git a/zzz-usb-otg-fix.patch b/zzz-usb-otg-fix.patch
new file mode 100644
index 0000000..dcfbaea
--- /dev/null
+++ b/zzz-usb-otg-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
+index cefe9d83..f7288203 100644
+--- a/drivers/usb/host/dwc2.c
++++ b/drivers/usb/host/dwc2.c
+@@ -440,6 +440,8 @@ static void dwc_otg_core_init(struct dwc2_priv *priv)
+
+ writel(usbcfg, ®s->gusbcfg);
+
++ mdelay(10);
++
+ /* Program the GAHBCFG Register. */
+ switch (readl(®s->ghwcfg2) & DWC2_HWCFG2_ARCHITECTURE_MASK) {
+ case DWC2_HWCFG2_ARCHITECTURE_SLAVE_ONLY: