summaryrefslogtreecommitdiff
path: root/arch/i386
diff options
context:
space:
mode:
authorGraeme Russ <graeme.russ@gmail.com>2011-02-12 15:11:59 +1100
committerGraeme Russ <graeme.russ@gmail.com>2011-02-12 15:11:59 +1100
commitc869e2ac46a7a8ca00d1fd24c6399ca8e256e244 (patch)
tree3b37dc4e76c760c3b000868659222cf5ec02a37a /arch/i386
parentfb0029088e5b9d3f31870715ad23dda4a2c6e7f3 (diff)
downloadu-boot-imx-c869e2ac46a7a8ca00d1fd24c6399ca8e256e244.zip
u-boot-imx-c869e2ac46a7a8ca00d1fd24c6399ca8e256e244.tar.gz
u-boot-imx-c869e2ac46a7a8ca00d1fd24c6399ca8e256e244.tar.bz2
x86: Move call to dram_init_f into board_init_f
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/cpu/start.S3
-rw-r--r--arch/i386/include/asm/u-boot-i386.h1
-rw-r--r--arch/i386/lib/board.c3
3 files changed, 4 insertions, 3 deletions
diff --git a/arch/i386/cpu/start.S b/arch/i386/cpu/start.S
index 77f0332..fd018bf 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 80db52f..7b39bd2 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 60fa982..0b26c83 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;