From a483a167bc8d808145ca1224a2c238cda90aa60c Mon Sep 17 00:00:00 2001 From: Peter Tyser Date: Fri, 21 Aug 2009 23:05:20 -0500 Subject: 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 --- lib_avr32/board.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'lib_avr32') diff --git a/lib_avr32/board.c b/lib_avr32/board.c index 03a520cdd..ca1bd6fd3 100644 --- a/lib_avr32/board.c +++ b/lib_avr32/board.c @@ -50,20 +50,16 @@ int board_postclk_init(void) __attribute__((weak, alias("__do_nothing"))); int board_early_init_r(void) __attribute__((weak, alias("__do_nothing"))); /* The malloc area is right below the monitor image in RAM */ -static void mem_malloc_init(void) +static void mem_malloc_init(ulong start, ulong size) { - unsigned long monitor_addr; - - monitor_addr = CONFIG_SYS_MONITOR_BASE + gd->reloc_off; - mem_malloc_end = monitor_addr; - mem_malloc_start = mem_malloc_end - CONFIG_SYS_MALLOC_LEN; - mem_malloc_brk = mem_malloc_start; + mem_malloc_start = start; + mem_malloc_end = start + size; + mem_malloc_brk = start; printf("malloc: Using memory from 0x%08lx to 0x%08lx\n", mem_malloc_start, mem_malloc_end); - memset ((void *)mem_malloc_start, 0, - mem_malloc_end - mem_malloc_start); + memset((void *)mem_malloc_start, 0, size); } #ifdef CONFIG_SYS_DMA_ALLOC_LEN @@ -312,7 +308,8 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) #endif timer_init(); - mem_malloc_init(); + mem_malloc_init(CONFIG_SYS_MONITOR_BASE + gd->reloc_off - + CONFIG_SYS_MALLOC_LEN, CONFIG_SYS_MALLOC_LEN); malloc_bin_reloc(); dma_alloc_init(); -- cgit v1.2.3