diff options
author | Andrew Dyer <adyer@righthandtech.com> | 2008-09-12 02:20:46 +0200 |
---|---|---|
committer | Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> | 2008-09-12 02:20:46 +0200 |
commit | 6e1551a870d360805b9d172dc56d935064abe71d (patch) | |
tree | c648dd1ae69f1f4cb28a8622e31db9af33ee12d2 | |
parent | b23253835f871cd9bd8e955b9a971d18a7d4ff56 (diff) | |
download | u-boot-imx-6e1551a870d360805b9d172dc56d935064abe71d.zip u-boot-imx-6e1551a870d360805b9d172dc56d935064abe71d.tar.gz u-boot-imx-6e1551a870d360805b9d172dc56d935064abe71d.tar.bz2 |
arm920t fix constant error in start.S
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@righthandtech.com>
-rw-r--r-- | 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 |