summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/lib/crt0.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
index 6d566dca5c8..a0311438b45 100644
--- a/arch/arm/lib/crt0.S
+++ b/arch/arm/lib/crt0.S
@@ -147,6 +147,11 @@ ENTRY(_main)
ldr r1, =CONFIG_TEXT_BASE
sub r1, r0
add lr, r1
+#if defined(CONFIG_SYS_RELOC_GD_ENV_ADDR)
+ ldr r0, [r9, #GD_ENV_ADDR] /* r0 = gd->env_addr */
+ add r0, r0, r1
+ str r0, [r9, #GD_ENV_ADDR]
+#endif
#endif
ldr r0, [r9, #GD_RELOC_OFF] /* r0 = gd->reloc_off */
add lr, lr, r0