common/board_f: Make reserve_mmu generic
authorOvidiu Panait <ovpanait@gmail.com>
Sun, 29 Mar 2020 17:57:41 +0000 (20:57 +0300)
committerTom Rini <trini@konsulko.com>
Fri, 24 Apr 2020 19:17:14 +0000 (15:17 -0400)
Introduce arch_reserve_mmu to allow for architecture-specific reserve_mmu
routines. Also, define a weak nop stub for it.

Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/arm/lib/cache.c
common/board_f.c
include/init.h

index 3cbed602eb148300f3d372513757cb8cfcbcf13f..44dde26065b1f338ff8e7f541a1f70c7207f135f 100644 (file)
@@ -121,7 +121,7 @@ void invalidate_l2_cache(void)
 }
 #endif
 
-__weak int reserve_mmu(void)
+int arch_reserve_mmu(void)
 {
        return arm_reserve_mmu();
 }
index 26309c44d233e43cb7d9ee65d9ea8afc5dfe356d..5c650f046cfc7f40e56539ba9ff749d3f047ceff 100644 (file)
@@ -385,6 +385,11 @@ static int reserve_round_4k(void)
        return 0;
 }
 
+__weak int arch_reserve_mmu(void)
+{
+       return 0;
+}
+
 static int reserve_video(void)
 {
 #ifdef CONFIG_DM_VIDEO
@@ -951,9 +956,7 @@ static const init_fnc_t init_sequence_f[] = {
        reserve_pram,
 #endif
        reserve_round_4k,
-#ifdef CONFIG_ARM
-       reserve_mmu,
-#endif
+       arch_reserve_mmu,
        reserve_video,
        reserve_trace,
        reserve_uboot,
index 2a33a3fd1e41c54f35b973e9b0a0974b274198ce..9ef88c966bef025992e6265ce9feccd7c467a671 100644 (file)
@@ -129,6 +129,18 @@ int testdram(void);
  */
 int arch_reserve_stacks(void);
 
+/**
+ * arch_reserve_mmu() - Reserve memory for MMU TLB table
+ *
+ * Architecture-specific routine for reserving memory for the MMU TLB table.
+ * This is used in generic board init sequence in common/board_f.c.
+ *
+ * If an implementation is not provided, it will just be a nop stub.
+ *
+ * Return: 0 if OK
+ */
+int arch_reserve_mmu(void);
+
 /**
  * init_cache_f_r() - Turn on the cache in preparation for relocation
  *
@@ -145,7 +157,6 @@ int init_cache_f_r(void);
 int print_cpuinfo(void);
 #endif
 int timer_init(void);
-int reserve_mmu(void);
 int misc_init_f(void);
 
 #if defined(CONFIG_DTB_RESELECT)