From c869e2ac46a7a8ca00d1fd24c6399ca8e256e244 Mon Sep 17 00:00:00 2001 From: Graeme Russ Date: Sat, 12 Feb 2011 15:11:59 +1100 Subject: x86: Move call to dram_init_f into board_init_f --- arch/i386/cpu/start.S | 3 --- arch/i386/include/asm/u-boot-i386.h | 1 + arch/i386/lib/board.c | 3 +++ 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/arch/i386/cpu/start.S b/arch/i386/cpu/start.S index 77f03322bb..fd018bf822 100644 --- a/arch/i386/cpu/start.S +++ b/arch/i386/cpu/start.S @@ -93,9 +93,6 @@ car_init_ret: subl $1b, %ecx movl %ecx, (GD_LOAD_OFF * 4)(%ebp) - /* size memory */ - call dram_init_f - /* Set parameter to board_init_f() to boot flags */ movl (GD_FLAGS * 4)(%ebp), %eax diff --git a/arch/i386/include/asm/u-boot-i386.h b/arch/i386/include/asm/u-boot-i386.h index 80db52fc6f..7b39bd2ae0 100644 --- a/arch/i386/include/asm/u-boot-i386.h +++ b/arch/i386/include/asm/u-boot-i386.h @@ -37,6 +37,7 @@ int register_timer_isr (timer_fnc_t *isr_func); /* Architecture specific - can be in arch/i386/cpu/, arch/i386/lib/, or $(BOARD)/ */ int timer_init(void); +int dram_init_f(void); /* cpu/.../interrupts.c */ int cpu_init_interrupts(void); diff --git a/arch/i386/lib/board.c b/arch/i386/lib/board.c index 60fa982e34..0b26c83133 100644 --- a/arch/i386/lib/board.c +++ b/arch/i386/lib/board.c @@ -197,6 +197,9 @@ void board_init_f(ulong boot_flags) gd->flags = boot_flags; + if (dram_init_f() != 0) + hang(); + /* Calculate destination RAM Address and relocation offset */ dest_addr = (void *)gd->ram_size; addr_sp = dest_addr; -- cgit v1.2.1