diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2016-06-16 14:31:59 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-06-20 08:30:34 +0200 |
commit | 0aa0bfc944e670e5fca9e24d96d91bfd1324d7ac (patch) | |
tree | 98f32ef137a09dcc34918bdc58ae1ebb97bfd54b /arch | |
parent | 1e992a195cc0c89ad5faa8c15e89cc5561be6f9d (diff) | |
download | barebox-0aa0bfc944e670e5fca9e24d96d91bfd1324d7ac.tar.gz barebox-0aa0bfc944e670e5fca9e24d96d91bfd1324d7ac.tar.xz |
ARM: start: simplify board_data sdram allocation
We already have a pointer for barebox_boarddata, so use it to
request the corresponding SDRAM region instead of calculating
it again.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/cpu/start.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/cpu/start.c b/arch/arm/cpu/start.c index d6a4c627ff..38f69d53a3 100644 --- a/arch/arm/cpu/start.c +++ b/arch/arm/cpu/start.c @@ -37,6 +37,7 @@ unsigned long arm_stack_top; static unsigned long arm_head_bottom; static unsigned long arm_barebox_size; static void *barebox_boarddata; +static unsigned long barebox_boarddata_size; static bool blob_is_fdt(const void *blob) { @@ -130,11 +131,9 @@ EXPORT_SYMBOL_GPL(arm_mem_ramoops_get); static int barebox_memory_areas_init(void) { - unsigned long start = arm_head_bottom; - unsigned long size = arm_mem_barebox_image(0, arm_stack_top, - arm_barebox_size) - - arm_head_bottom; - request_sdram_region("board data", start, size); + if(barebox_boarddata) + request_sdram_region("board data", (unsigned long)barebox_boarddata, + barebox_boarddata_size); return 0; } @@ -201,6 +200,7 @@ __noreturn void barebox_non_pbl_start(unsigned long membase, name, mem); barebox_boarddata = memcpy((void *)mem, boarddata, totalsize); + barebox_boarddata_size = totalsize; arm_head_bottom = mem; } } |