diff options
author | Peter Tyser <ptyser@xes-inc.com> | 2009-08-21 23:05:20 -0500 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2009-09-04 21:46:32 +0200 |
commit | a483a167bc8d808145ca1224a2c238cda90aa60c (patch) | |
tree | fde71dcae066c865872f5c990c593e98a0750265 /lib_mips/board.c | |
parent | 5e93bd1c9aaea886c5e5c7c1b6114ab36c30668f (diff) | |
download | u-boot-imx-a483a167bc8d808145ca1224a2c238cda90aa60c.zip u-boot-imx-a483a167bc8d808145ca1224a2c238cda90aa60c.tar.gz u-boot-imx-a483a167bc8d808145ca1224a2c238cda90aa60c.tar.bz2 |
Standardize mem_malloc_init() implementation
This lays the groundwork to allow architectures to share a common
mem_malloc_init().
Note that the x86 implementation was not modified as it did not fit the
mold of all other architectures.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Diffstat (limited to 'lib_mips/board.c')
-rw-r--r-- | lib_mips/board.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/lib_mips/board.c b/lib_mips/board.c index 68a3697..b233a6c 100644 --- a/lib_mips/board.c +++ b/lib_mips/board.c @@ -77,17 +77,13 @@ int board_early_init_f(void) __attribute__((weak, alias("__board_early_init_f")) /* * The Malloc area is immediately below the monitor copy in DRAM */ -static void mem_malloc_init (void) +static void mem_malloc_init(ulong start, ulong size) { - ulong dest_addr = CONFIG_SYS_MONITOR_BASE + gd->reloc_off; + mem_malloc_start = start; + mem_malloc_end = start + size; + mem_malloc_brk = start; - mem_malloc_end = dest_addr; - mem_malloc_start = dest_addr - TOTAL_MALLOC_LEN; - mem_malloc_brk = mem_malloc_start; - - memset ((void *) mem_malloc_start, - 0, - mem_malloc_end - mem_malloc_start); + memset ((void *)mem_malloc_start, 0, size); } @@ -352,7 +348,8 @@ void board_init_r (gd_t *id, ulong dest_addr) bd = gd->bd; /* initialize malloc() area */ - mem_malloc_init(); + mem_malloc_init(CONFIG_SYS_MONITOR_BASE + gd->reloc_off - + TOTAL_MALLOC_LEN, TOTAL_MALLOC_LEN); malloc_bin_reloc(); #ifndef CONFIG_SYS_NO_FLASH |