From 3b4604a40b9fd61b87e9d059fc56f04d36f1a380 Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Sat, 12 Jul 2025 20:52:27 +0200 Subject: [PATCH] board: vexpress_ca9x4: Enable D-cache and MMU Enable the D-cache, which will also enable the MMU. The latter make sure we don't do unaligned access on Strongly-ordered memory, which has UNPREDICTABLE behaviour according the architecture definition. This fixes using U-Boot with recent versions of QEMU's vexpress-ca9 emulation. Signed-off-by: Mark Kettenis --- board/armltd/vexpress/vexpress_common.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/board/armltd/vexpress/vexpress_common.c b/board/armltd/vexpress/vexpress_common.c index 6c374e25e32..3833af59b09 100644 --- a/board/armltd/vexpress/vexpress_common.c +++ b/board/armltd/vexpress/vexpress_common.c @@ -165,3 +165,11 @@ void smp_set_core_boot_addr(unsigned long addr, int corenr) writel(addr, CONFIG_SYSFLAGS_ADDR); } #endif + +#if !CONFIG_IS_ENABLED(SYS_DCACHE_OFF) +void enable_caches(void) +{ + /* Enable D-cache. I-cache is already enabled in start.S */ + dcache_enable(); +} +#endif -- 2.47.2