When using CONFIG_MMU_EARLY combined with CONFIG_PBL_IMAGE, the barebox
setup reuses the MMU setup from the PBL, but doesn't setup the cache
functions.

Set these up to guarantee proper early cache handing before mmu_initcall().

Signed-off-by: Andre Heider <[email protected]>
---
 arch/arm/cpu/start.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm/cpu/start.c b/arch/arm/cpu/start.c
index f8d343f..f0a7df3 100644
--- a/arch/arm/cpu/start.c
+++ b/arch/arm/cpu/start.c
@@ -70,7 +70,9 @@ static noinline __noreturn void __start(uint32_t membase, 
uint32_t memsize,
                endmem &= ~0x3fff;
                endmem -= SZ_16K; /* ttb */
 
-               if (!IS_ENABLED(CONFIG_PBL_IMAGE)) {
+               if (IS_ENABLED(CONFIG_PBL_IMAGE)) {
+                       arm_set_cache_functions();
+               } else {
                        arm_early_mmu_cache_invalidate();
                        mmu_early_enable(membase, memsize, endmem);
                }
-- 
1.8.3.2


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to