summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2016-06-16 14:31:59 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2016-06-20 08:30:34 +0200
commit0aa0bfc944e670e5fca9e24d96d91bfd1324d7ac (patch)
tree98f32ef137a09dcc34918bdc58ae1ebb97bfd54b /arch/arm/cpu
parent1e992a195cc0c89ad5faa8c15e89cc5561be6f9d (diff)
downloadbarebox-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/arm/cpu')
-rw-r--r--arch/arm/cpu/start.c10
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;
}
}