common: move ram_base calculation to independent INITCALL()
Currently, ram_base is calculated within setup_dest_addr(). However, upcoming patches that enable U-Boot relocation to the highest DRAM bank require ram_base to be initialized earlier. The default dram_init_banksize() definition relies on ram_base to calculate the start of the first bank. But following patches will move that function to execute immediately before setup_dest_addr(). So let's split the ram_base initialization in its own INITCALL. Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Anshul Dalal <anshuld@ti.com> Tested-by: Michal Simek <michal.simek@amd.com> # Versal Gen 2 Vek385 Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Christophe Leroy (CS GROUP) <chleroy@kernel.org>
This commit is contained in:
committed by
Tom Rini
parent
1174c99ab4
commit
15b35e4289
+9
-3
@@ -328,6 +328,14 @@ __weak int arch_setup_dest_addr(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setup_ram_base(void)
|
||||
{
|
||||
#ifdef CFG_SYS_SDRAM_BASE
|
||||
gd->ram_base = CFG_SYS_SDRAM_BASE;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setup_dest_addr(void)
|
||||
{
|
||||
int ret;
|
||||
@@ -349,9 +357,6 @@ static int setup_dest_addr(void)
|
||||
* get fixed.
|
||||
*/
|
||||
gd->ram_size -= CONFIG_SYS_MEM_TOP_HIDE;
|
||||
#endif
|
||||
#ifdef CFG_SYS_SDRAM_BASE
|
||||
gd->ram_base = CFG_SYS_SDRAM_BASE;
|
||||
#endif
|
||||
gd->ram_top = gd->ram_base + get_effective_memsize();
|
||||
gd->ram_top = board_get_usable_ram_top(gd->mon_len);
|
||||
@@ -977,6 +982,7 @@ static void initcall_run_f(void)
|
||||
* - monitor code
|
||||
* - board info struct
|
||||
*/
|
||||
INITCALL(setup_ram_base);
|
||||
INITCALL(setup_dest_addr);
|
||||
#if CONFIG_IS_ENABLED(OF_BOARD_FIXUP) && \
|
||||
!CONFIG_IS_ENABLED(OF_INITIAL_DTB_READONLY)
|
||||
|
||||
Reference in New Issue
Block a user