mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-11 07:34:31 +00:00
arm: mvebu: a37xx: Fix calling build_mem_map()
Function build_mem_map() modifies global variable mem_map. This variable is used by the get_page_table_size() function which is called by function arm_reserve_mmu() (as aliased macro PGTABLE_SIZE). Function arm_reserve_mmu() is called earlier than enable_caches() which calls build_mem_map(). So arm_reserve_mmu() does not calculate reserved memory correctly. Fix this issue by calling build_mem_map() from a3700_dram_init() which is called before arm_reserve_mmu(). Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Marek Behún <marek.behun@nic.cz>
This commit is contained in:
parent
0eebc3dbe5
commit
2fb7426cf0
1 changed files with 2 additions and 2 deletions
|
@ -142,8 +142,6 @@ static void build_mem_map(void)
|
|||
|
||||
void enable_caches(void)
|
||||
{
|
||||
build_mem_map();
|
||||
|
||||
icache_enable();
|
||||
dcache_enable();
|
||||
}
|
||||
|
@ -152,6 +150,8 @@ int a3700_dram_init(void)
|
|||
{
|
||||
int win;
|
||||
|
||||
build_mem_map();
|
||||
|
||||
gd->ram_size = 0;
|
||||
for (win = 0; win < MVEBU_CPU_DEC_WINS; ++win) {
|
||||
u32 base, tgt, size;
|
||||
|
|
Loading…
Reference in a new issue