diff options
Diffstat (limited to 'arch/arm/cpu/armv7/start.S')
| -rw-r--r-- | arch/arm/cpu/armv7/start.S | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S index 22a3cedcb..aee27fdc4 100644 --- a/arch/arm/cpu/armv7/start.S +++ b/arch/arm/cpu/armv7/start.S @@ -259,10 +259,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:  /*   * We are done. Do not return, instead branch to second part of board |