[U-Boot] [patch] arm920t fix constant error in start.S

Andrew Dyer adyer at righthandtech.com
Tue Aug 26 00:30:00 CEST 2008


Code in cpu/arm920t/start.S will die with a compilation error if
CONFIG_STACKSIZE + CFG_MALLOC_LEN works out to an invalid constant for
the ARM sub instruction.  Change the code so that each is subtracted
independently to avoid the error.

Signed-off-by: Andrew Dyer <adyer at righthandtech.com>
---
 cpu/arm920t/start.S |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/cpu/arm920t/start.S b/cpu/arm920t/start.S
index 62231f8..5d0fec6 100644
--- a/cpu/arm920t/start.S
+++ b/cpu/arm920t/start.S
@@ -315,7 +315,8 @@ cpu_init_crit:
 	sub	sp, sp, #S_FRAME_SIZE
 	stmia	sp, {r0 - r12}			@ Calling r0-r12
 	ldr	r2, _armboot_start
-	sub	r2, r2, #(CONFIG_STACKSIZE+CFG_MALLOC_LEN)
+	sub	r2, r2, #(CONFIG_STACKSIZE)
+	sub	r2, r2, #(CFG_MALLOC_LEN)
 	sub	r2, r2, #(CFG_GBL_DATA_SIZE+8)  @ set base 2 words into abort stack
 	ldmia	r2, {r2 - r3}			@ get pc, cpsr
 	add	r0, sp, #S_FRAME_SIZE		@ restore sp_SVC
@@ -348,7 +349,8 @@ cpu_init_crit:
 
 	.macro get_bad_stack
 	ldr	r13, _armboot_start		@ setup our mode stack
-	sub	r13, r13, #(CONFIG_STACKSIZE+CFG_MALLOC_LEN)
+	sub	r13, r13, #(CONFIG_STACKSIZE)
+	sub	r13, r13, #(CFG_MALLOC_LEN)
 	sub	r13, r13, #(CFG_GBL_DATA_SIZE+8) @ reserved a couple spots in abort stack
 
 	str	lr, [r13]			@ save caller lr / spsr
-- 
1.5.4.3



More information about the U-Boot mailing list