aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcin Mielczarczyk <marcin.mielczarczyk@tieto.com>2010-12-01 14:27:21 +0100
committerMarcin Mielczarczyk <marcin.mielczarczyk@tieto.com>2011-02-17 07:08:17 +0100
commit171c69aa4383fd3cc3123a9e52a5e1196d531deb (patch)
treea25f368680e75bbfe8f954c3dc7d6e4eefc45e11
parenta025f73fd75dc0b3c90440d76af8f33dc357a307 (diff)
sciphone_g2: ARM926EJS preloader BSS fix
Even in preloader configuration BSS section should be cleared, otherwise initialized variables will have wrong values. Relocation symbols are not available in SBL configuration and should be not included. Signed-off-by: Marcin Mielczarczyk <marcin.mielczarczyk@tieto.com>
-rw-r--r--arch/arm/cpu/arm926ejs/start.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index eb93ac9db..0d5d354ca 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -252,7 +252,6 @@ fixnext:
#endif
clear_bss:
-#ifndef CONFIG_PRELOADER
ldr r0, _bss_start_ofs
ldr r1, _bss_end_ofs
mov r4, r6 /* reloc addr */
@@ -265,6 +264,7 @@ clbss_l:str r2, [r0] /* clear loop... */
cmp r0, r1
bne clbss_l
+#ifndef CONFIG_PRELOADER
bl coloured_LED_init
bl red_LED_on
#endif
@@ -294,12 +294,14 @@ _board_init_r_ofs:
.word board_init_r - _start
#endif
+#ifndef CONFIG_PRELOADER
_rel_dyn_start_ofs:
.word __rel_dyn_start - _start
_rel_dyn_end_ofs:
.word __rel_dyn_end - _start
_dynsym_start_ofs:
.word __dynsym_start - _start
+#endif
/*
*************************************************************************