[U-Boot] [PATCH] armv7m: Disable D-cache when booting nommu(ARMv7M) Linux kernel
Toshifumi NISHINAGA
tnishinaga.dev at gmail.com
Sun Jun 4 16:18:08 UTC 2017
Disable D-Cache is required when booting nommu Linux kernel.
(please see Linux kernel source "arch/arm/kernel/head-nommu.S")
U-Boot is enabled D-cache and I-Cache at startup.
However, it does not disable D-Cache before
booting nommu Linux kernel.
Therefore, I call dcache_disable()
when the CPU is ARMv7M to fix this problem.
Signed-off-by: Toshifumi NISHINAGA <tnishinaga.dev at gmail.com>
---
arch/arm/lib/bootm.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index 4dbe6a5303..d14a8b5737 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -359,6 +359,7 @@ static void boot_jump_linux(bootm_headers_t *images, int flag)
#ifdef CONFIG_CPU_V7M
ulong addr = (ulong)kernel_entry | 1;
kernel_entry = (void *)addr;
+ dcache_disable();
#endif
s = getenv("machid");
if (s) {
--
2.13.0
More information about the U-Boot
mailing list