diff options
author | Marcin Mielczarczyk <marcin.mielczarczyk@tieto.com> | 2010-12-01 14:27:21 +0100 |
---|---|---|
committer | Marcin Mielczarczyk <marcin.mielczarczyk@tieto.com> | 2011-02-17 07:08:17 +0100 |
commit | 171c69aa4383fd3cc3123a9e52a5e1196d531deb (patch) | |
tree | a25f368680e75bbfe8f954c3dc7d6e4eefc45e11 | |
parent | a025f73fd75dc0b3c90440d76af8f33dc357a307 (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.S | 4 |
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 /* ************************************************************************* |