mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
mach-k3: use custom enable_cache
U-Boot's provided enable_caches enforces the following sequence: icache_enable -> mmu_setup (as part of dcache_enable) -> dcache_enable Whereas for K3 devices, we would like to add entries to the provided static array (k3_mem_map) as per gd->bd->bi_dram and then call mmu_setup to configure the MMU but also create carveouts for TFA/TEE before we enable caches to prevent speculative accesses to the region. Thus the following desired sequence: add dram banks -> mmu_setup -> carveout TFA/TEE -> icache/dcache enable Therefore this patch adds K3's own implementation of enable_cache for ARM64, allowing for greater control over the cache enablement sequence. Reviewed-by: Dhruva Gole <d-gole@ti.com> Signed-off-by: Anshul Dalal <anshuld@ti.com> Tested-by: Wadim Egorov <w.egorov@phytec.de>
This commit is contained in:
@@ -258,6 +258,12 @@ void board_prep_linux(struct bootm_headers *images)
|
||||
ROUND(images->os.end,
|
||||
CONFIG_SYS_CACHELINE_SIZE));
|
||||
}
|
||||
|
||||
void enable_caches(void)
|
||||
{
|
||||
icache_enable();
|
||||
dcache_enable();
|
||||
}
|
||||
#endif
|
||||
|
||||
void spl_enable_cache(void)
|
||||
|
||||
Reference in New Issue
Block a user