diff options
author | Darius Augulis <augulis.darius@gmail.com> | 2010-10-25 13:45:35 +0300 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2010-10-26 21:11:58 +0200 |
commit | 123fb7deb238cf9d03e82f98962ed7f03d09703a (patch) | |
tree | bd8625d39bc4773de1e59012293971e88b5ecb98 | |
parent | 25ddd1fb0a2281b182529afbc8fda5de2dc16d96 (diff) | |
download | u-boot-123fb7deb238cf9d03e82f98962ed7f03d09703a.zip u-boot-123fb7deb238cf9d03e82f98962ed7f03d09703a.tar.gz u-boot-123fb7deb238cf9d03e82f98962ed7f03d09703a.tar.bz2 |
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>
-rw-r--r-- | arch/arm/cpu/arm1136/start.S | 6 | ||||
-rw-r--r-- | arch/arm/cpu/arm926ejs/start.S | 6 | ||||
-rw-r--r-- | arch/arm/cpu/armv7/start.S | 6 | ||||
-rw-r--r-- | arch/arm/cpu/pxa/start.S | 6 |
4 files changed, 16 insertions, 8 deletions
diff --git a/arch/arm/cpu/arm1136/start.S b/arch/arm/cpu/arm1136/start.S index 07d0c85..e3e646c 100644 --- a/arch/arm/cpu/arm1136/start.S +++ b/arch/arm/cpu/arm1136/start.S @@ -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 */ diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S index 69e1a33..7397882 100644 --- a/arch/arm/cpu/arm926ejs/start.S +++ b/arch/arm/cpu/arm926ejs/start.S @@ -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 */ diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S index b9eb0c9..bdf2fad 100644 --- a/arch/arm/cpu/armv7/start.S +++ b/arch/arm/cpu/armv7/start.S @@ -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 */ diff --git a/arch/arm/cpu/pxa/start.S b/arch/arm/cpu/pxa/start.S index b8065b7..bf8510e 100644 --- a/arch/arm/cpu/pxa/start.S +++ b/arch/arm/cpu/pxa/start.S @@ -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 */ |