[RFC PATCH 3/4] jumparch64: insert into bootm

Frank Wunderlich linux at fw-web.de
Mon Aug 10 16:26:51 CEST 2020


From: Frank Wunderlich <frank-w at public-files.de>

if uboot is 32bit and linux-kernel is 64bit packed into armhf mkimage
(like official kernels for bpi-r64) call jumparch64 to switch to 64bit
mode after unpacking the kernel-image

Signed-off-by: Frank Wunderlich <frank-w at public-files.de>
---
 arch/arm/lib/bootm.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index 1206e306db..015a5f7f86 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -374,6 +374,16 @@ static void boot_jump_linux(bootm_headers_t *images, int flag)
 					    ES_TO_AARCH64);
 #endif
 	}
+#elif defined(CONFIG_ARCH_MEDIATEK_32) && defined(CONFIG_TARGET_MT7622)
+    extern void jumparch64_smc(ulong addr, ulong arg1, ulong arg2);
+
+    /*
+     * Iverson 20150528 - show message for boot.
+     */
+	debug("images->ep = %lx, images->ft_addr = %lx\n", images->ep, (unsigned long)images->ft_addr);
+
+	announce_and_cleanup(0);
+    jumparch64_smc(images->ep, (unsigned long)images->ft_addr, 0);
 #else
 	unsigned long machid = gd->bd->bi_arch_number;
 	char *s;
-- 
2.25.1



More information about the U-Boot mailing list