[U-Boot] [PATCH v6] arm, arm926ejs: Fix clear bss loop for zero length bss
Albert ARIBAUD
albert.u.boot at aribaud.net
Mon Dec 5 18:04:41 CET 2011
Hi Christian,
Le 01/12/2011 09:27, Christian Riesch a écrit :
> This patch fixes the clear bss loop for bss sections that have
> zero length, i.e., where __bss_start == __bss_end__.
>
> Signed-off-by: Christian Riesch<christian.riesch at omicron.at>
> Cc: Albert Aribaud<albert.u.boot at aribaud.net>
> ---
>
> Hi,
> this is v6 of a patch out of my recent patchset
>
> [PATCH v3 00/15] Add an SPL to boot the da850evm from SPI
> http://lists.denx.de/pipermail/u-boot/2011-November/111182.html
>
> Changes for v6:
> - replace beq clbss_e to allow for cases where r1-r0 is not a multiple of 4,
> as suggested by Albert Aribaud.
>
> Changes for v5:
> - correct subject line
>
> Changes for v4:
> - split the patchset since it is getting quite big
>
> Regards, Christian
>
>
> arch/arm/cpu/arm926ejs/start.S | 8 +++++---
> 1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
> index 8b5355b..6a09c02 100644
> --- a/arch/arm/cpu/arm926ejs/start.S
> +++ b/arch/arm/cpu/arm926ejs/start.S
> @@ -299,10 +299,12 @@ clear_bss:
> #endif
> mov r2, #0x00000000 /* clear */
>
> -clbss_l:str r2, [r0] /* clear loop... */
> +clbss_l:cmp r0, r1 /* clear loop... */
> + bhs clbss_e /* if reached end of bss, exit */
> + str r2, [r0]
> add r0, r0, #4
> - cmp r0, r1
> - bne clbss_l
> + b clbss_l
> +clbss_e:
>
> #ifndef CONFIG_SPL_BUILD
> bl coloured_LED_init
Applied to u-boot-arm/master, thanks!
Amicalement,
--
Albert.
More information about the U-Boot
mailing list