summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv7/lowlevel_init.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/cpu/armv7/lowlevel_init.S')
-rw-r--r--arch/arm/cpu/armv7/lowlevel_init.S8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/lowlevel_init.S b/arch/arm/cpu/armv7/lowlevel_init.S
index 0d45528e99..0a15aa4671 100644
--- a/arch/arm/cpu/armv7/lowlevel_init.S
+++ b/arch/arm/cpu/armv7/lowlevel_init.S
@@ -37,7 +37,13 @@ ENTRY(lowlevel_init)
*/
ldr sp, =CONFIG_SYS_INIT_SP_ADDR
bic sp, sp, #7 /* 8-byte alignment for ABI compliance */
-
+#ifdef CONFIG_SPL_BUILD
+ ldr r8, =gdata
+#else
+ sub sp, #GD_SIZE
+ bic sp, sp, #7
+ mov r8, sp
+#endif
/*
* Save the old lr(passed in ip) and the current lr to stack
*/