diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2013-03-07 12:58:39 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-03-14 08:41:40 +0100 |
commit | 7a76f0607bef50e4439d162e577007aa74f51a5f (patch) | |
tree | 7a9e912b6428fcdf27982a02877ea367c9588bd1 /arch | |
parent | 1d9547773cd0e39472760e1eab21c3ff86c08db7 (diff) | |
download | barebox-7a76f0607bef50e4439d162e577007aa74f51a5f.tar.gz barebox-7a76f0607bef50e4439d162e577007aa74f51a5f.tar.xz |
x86: initialize malloc pool before start_barebox()
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/boot/main_entry.c | 4 | ||||
-rw-r--r-- | arch/x86/lib/memory.c | 7 |
2 files changed, 5 insertions, 6 deletions
diff --git a/arch/x86/boot/main_entry.c b/arch/x86/boot/main_entry.c index f7f4710c44..afb7e32dfc 100644 --- a/arch/x86/boot/main_entry.c +++ b/arch/x86/boot/main_entry.c @@ -22,7 +22,7 @@ #include <string.h> #include <asm/sections.h> -extern void start_barebox(void); +extern void x86_start_barebox(void); /** * Called plainly from assembler that switches from real to flat mode @@ -33,5 +33,5 @@ void uboot_entry(void) { /* clear the BSS first */ memset(__bss_start, 0x00, __bss_stop - __bss_start); - start_barebox(); + x86_start_barebox(); } diff --git a/arch/x86/lib/memory.c b/arch/x86/lib/memory.c index 43b6931258..de0e5d907f 100644 --- a/arch/x86/lib/memory.c +++ b/arch/x86/lib/memory.c @@ -21,6 +21,7 @@ * @brief Memory management */ +#include <common.h> #include <init.h> #include <stdio.h> #include <memory.h> @@ -36,7 +37,7 @@ * - memory above 0x100000 */ -static int x86_mem_malloc_init(void) +int x86_start_barebox(void) { #ifdef CONFIG_MEMORY_LAYOUT_DEFAULT unsigned long memory_size; @@ -57,7 +58,5 @@ static int x86_mem_malloc_init(void) mem_malloc_init((void *)MALLOC_BASE, (void *)(MALLOC_BASE + MALLOC_SIZE - 1)); #endif - return 0; + start_barebox(); } - -core_initcall(x86_mem_malloc_init); |