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:
parent
25ddd1fb0a
commit
123fb7deb2
@ -297,8 +297,10 @@ _nand_boot_ofs
|
|||||||
jump_2_ram:
|
jump_2_ram:
|
||||||
ldr r0, _board_init_r_ofs
|
ldr r0, _board_init_r_ofs
|
||||||
adr r1, _start
|
adr r1, _start
|
||||||
add r0, r0, r1
|
add lr, r0, r1
|
||||||
add lr, r0, r9
|
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
|
||||||
|
add lr, lr, r9
|
||||||
|
#endif
|
||||||
/* setup parameters for board_init_r */
|
/* setup parameters for board_init_r */
|
||||||
mov r0, r5 /* gd_t */
|
mov r0, r5 /* gd_t */
|
||||||
mov r1, r7 /* dest_addr */
|
mov r1, r7 /* dest_addr */
|
||||||
|
@ -286,8 +286,10 @@ _nand_boot_ofs:
|
|||||||
#else
|
#else
|
||||||
ldr r0, _board_init_r_ofs
|
ldr r0, _board_init_r_ofs
|
||||||
adr r1, _start
|
adr r1, _start
|
||||||
add r0, r0, r1
|
add lr, r0, r1
|
||||||
add lr, r0, r9
|
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
|
||||||
|
add lr, lr, r9
|
||||||
|
#endif
|
||||||
/* setup parameters for board_init_r */
|
/* setup parameters for board_init_r */
|
||||||
mov r0, r5 /* gd_t */
|
mov r0, r5 /* gd_t */
|
||||||
mov r1, r7 /* dest_addr */
|
mov r1, r7 /* dest_addr */
|
||||||
|
@ -275,8 +275,10 @@ clbss_l:str r2, [r0] /* clear loop... */
|
|||||||
jump_2_ram:
|
jump_2_ram:
|
||||||
ldr r0, _board_init_r_ofs
|
ldr r0, _board_init_r_ofs
|
||||||
adr r1, _start
|
adr r1, _start
|
||||||
add r0, r0, r1
|
add lr, r0, r1
|
||||||
add lr, r0, r9
|
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
|
||||||
|
add lr, lr, r9
|
||||||
|
#endif
|
||||||
/* setup parameters for board_init_r */
|
/* setup parameters for board_init_r */
|
||||||
mov r0, r5 /* gd_t */
|
mov r0, r5 /* gd_t */
|
||||||
mov r1, r7 /* dest_addr */
|
mov r1, r7 /* dest_addr */
|
||||||
|
@ -331,8 +331,10 @@ _start_oneboot_ofs
|
|||||||
#else
|
#else
|
||||||
ldr r0, _board_init_r_ofs
|
ldr r0, _board_init_r_ofs
|
||||||
adr r1, _start
|
adr r1, _start
|
||||||
add r0, r0, r1
|
add lr, r0, r1
|
||||||
add lr, r0, r9
|
#ifndef CONFIG_SKIP_RELOCATE_UBOOT
|
||||||
|
add lr, lr, r9
|
||||||
|
#endif
|
||||||
/* setup parameters for board_init_r */
|
/* setup parameters for board_init_r */
|
||||||
mov r0, r5 /* gd_t */
|
mov r0, r5 /* gd_t */
|
||||||
mov r1, r7 /* dest_addr */
|
mov r1, r7 /* dest_addr */
|
||||||
|
Loading…
Reference in New Issue
Block a user