[PATCH] arm: armv8: mmu: fix mem_map_from_dram_banks

Anshul Dalal anshuld at ti.com
Fri Oct 31 17:17:31 CET 2025


mem_map_from_dram_banks calls fdtdec_setup_memory_banksize to setup the
dram banks though that is expected to be done by dram_init_banksize as
part of board_r sequence.

This has the side effect of modifying gd->bd->bi_dram as well, therefore
this patch removes the call and updates spl_enable_cache for K3 to call
dram_init_banksize.

Signed-off-by: Anshul Dalal <anshuld at ti.com>
Reported-by: Francesco Dolcini <francesco at dolcini.it>
Closes: https://lore.kernel.org/u-boot/20251027165225.GA71553@francesco-nb/
Fixes: fe2647f2a0d4 ("arm: armv8: mmu: add mem_map_from_dram_banks")
---
 arch/arm/cpu/armv8/cache_v8.c | 6 ------
 arch/arm/mach-k3/common.c     | 1 +
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/arch/arm/cpu/armv8/cache_v8.c b/arch/arm/cpu/armv8/cache_v8.c
index 672ec16d4834be501d5bfa343af9537aa9285252..0309da6d3971af6f2a349ce0760507765da9af4f 100644
--- a/arch/arm/cpu/armv8/cache_v8.c
+++ b/arch/arm/cpu/armv8/cache_v8.c
@@ -61,12 +61,6 @@ static int get_effective_el(void)
 int mem_map_from_dram_banks(unsigned int index, unsigned int len, u64 attrs)
 {
 	unsigned int i;
-	int ret = fdtdec_setup_memory_banksize();
-
-	if (ret) {
-		log_err("%s: Failed to setup dram banks\n", __func__);
-		return ret;
-	}
 
 	if (index + CONFIG_NR_DRAM_BANKS >= len) {
 		log_err("%s: Provided mem_map array has insufficient size for DRAM entries\n",
diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c
index 7c06764af8256b7fd27f8e7f208a597b1b91652b..82a31b5178b9b5abdf7eae68cbbd22fe2a86dbee 100644
--- a/arch/arm/mach-k3/common.c
+++ b/arch/arm/mach-k3/common.c
@@ -311,6 +311,7 @@ void spl_enable_cache(void)
 	int ret = 0;
 
 	dram_init();
+	dram_init_banksize();
 
 	/* reserve TLB table */
 	gd->arch.tlb_size = PGTABLE_SIZE;

---
base-commit: 08bf42e1faa4411cd347c2e370da790a0116e318
change-id: 20251031-k3_fix_mmu-bd62988ed62d

Best regards,
-- 
Anshul Dalal <anshuld at ti.com>



More information about the U-Boot mailing list