| /* SPDX-License-Identifier: GPL-2.0-only */ |
| |
| #include <types.h> |
| |
| #include <arch/cache.h> |
| #include <bootblock_common.h> |
| #include <symbols.h> |
| |
| #define SRAM_START ((uintptr_t)_sram / MiB) |
| #define SRAM_END (DIV_ROUND_UP((uintptr_t)_esram, MiB)) |
| |
| #define DRAM_START ((uintptr_t)_dram / MiB) |
| #define DRAM_SIZE (CONFIG_DRAM_SIZE_MB) |
| |
| void bootblock_soc_init(void) |
| { |
| mmu_init(); |
| |
| /* Map everything strongly ordered by default */ |
| mmu_config_range(0, 4096, DCACHE_OFF); |
| |
| mmu_config_range(SRAM_START, SRAM_END - SRAM_START, |
| DCACHE_WRITEBACK); |
| |
| mmu_config_range(DRAM_START, DRAM_SIZE, DCACHE_WRITEBACK); |
| |
| dcache_mmu_enable(); |
| } |