ARM: fix address setup in start.S

Fix address setup bug for ARM.
This bug stops u-boot booting if
CONFIG_SKIP_RELOCATE_UBOOT is defined.

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
This commit is contained in:
Darius Augulis 2010-10-25 13:45:35 +03:00 committed by Wolfgang Denk
parent 25ddd1fb0a
commit 123fb7deb2
4 changed files with 16 additions and 8 deletions

View File

@ -297,8 +297,10 @@ _nand_boot_ofs
jump_2_ram:
ldr r0, _board_init_r_ofs
adr r1, _start
add r0, r0, r1
add lr, r0, r9
add lr, r0, r1
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
add lr, lr, r9
#endif
/* setup parameters for board_init_r */
mov r0, r5 /* gd_t */
mov r1, r7 /* dest_addr */

View File

@ -286,8 +286,10 @@ _nand_boot_ofs:
#else
ldr r0, _board_init_r_ofs
adr r1, _start
add r0, r0, r1
add lr, r0, r9
add lr, r0, r1
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
add lr, lr, r9
#endif
/* setup parameters for board_init_r */
mov r0, r5 /* gd_t */
mov r1, r7 /* dest_addr */

View File

@ -275,8 +275,10 @@ clbss_l:str r2, [r0] /* clear loop... */
jump_2_ram:
ldr r0, _board_init_r_ofs
adr r1, _start
add r0, r0, r1
add lr, r0, r9
add lr, r0, r1
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
add lr, lr, r9
#endif
/* setup parameters for board_init_r */
mov r0, r5 /* gd_t */
mov r1, r7 /* dest_addr */

View File

@ -331,8 +331,10 @@ _start_oneboot_ofs
#else
ldr r0, _board_init_r_ofs
adr r1, _start
add r0, r0, r1
add lr, r0, r9
add lr, r0, r1
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
add lr, lr, r9
#endif
/* setup parameters for board_init_r */
mov r0, r5 /* gd_t */
mov r1, r7 /* dest_addr */