summaryrefslogtreecommitdiff
path: root/arch/microblaze
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2015-02-03 15:24:48 (GMT)
committerMichal Simek <michal.simek@xilinx.com>2015-02-09 14:13:12 (GMT)
commitca7d22662e1ca1b05fd4cd3d1f80efec93c499ef (patch)
treee94a54b936855a1c2c96e3067c5800586ffa9c7a /arch/microblaze
parent405e651d705e197babe423ef88e8224e2737fc06 (diff)
downloadu-boot-fsl-qoriq-ca7d22662e1ca1b05fd4cd3d1f80efec93c499ef.tar.xz
microblaze: spl: Do not call mem_malloc_init and use early alloc
This patch has some parts connected together: - Use _gd in bss section which is automatically cleared Location at SPL_MALLOC_END wasn't cleared at all - Use MALLOC_F_LEN(early alloc) instead of FULL MALLOC (mem_malloc_init is not called at all) - Simplify malloc and stack init. At the end of SPL addr is malloc area and below is stack Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/microblaze')
-rw-r--r--arch/microblaze/cpu/start.S6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
index cf9ee7e..953d3a1 100644
--- a/arch/microblaze/cpu/start.S
+++ b/arch/microblaze/cpu/start.S
@@ -162,7 +162,11 @@ clear_bss:
#endif
brai board_init_f
#else
- addi r31, r0, CONFIG_SYS_SPL_MALLOC_END
+ addi r31, r0, _gd
+#if defined(CONFIG_SYS_MALLOC_F_LEN)
+ addi r6, r0, CONFIG_SPL_STACK_ADDR
+ swi r6, r31, GD_MALLOC_BASE
+#endif
brai board_init_r
#endif
1: bri 1b