diff options
author | Daniel Schwierzeck <daniel.schwierzeck@gmail.com> | 2013-02-12 22:22:13 +0100 |
---|---|---|
committer | Daniel Schwierzeck <daniel.schwierzeck@gmail.com> | 2013-02-12 22:22:13 +0100 |
commit | 28875e2c4731296ee7ed645d07f1c28c0301f1c4 (patch) | |
tree | 7f80856cdbc7692ed60f0c41a15b516b642d8350 /arch/mips/cpu/mips32 | |
parent | 696a3b2a5368360c149335e2a35b8900a78f47fa (diff) | |
download | u-boot-imx-28875e2c4731296ee7ed645d07f1c28c0301f1c4.zip u-boot-imx-28875e2c4731296ee7ed645d07f1c28c0301f1c4.tar.gz u-boot-imx-28875e2c4731296ee7ed645d07f1c28c0301f1c4.tar.bz2 |
MIPS: start.S: use symbol __image_copy_end for U-Boot image relocation
Use the newly introduced symbol __image_copy_end as end address for
relocation of U-Boot image. This is needed for dynamic relocation added
in later patches. This patch obsoletes the symbols uboot_end and
uboot_end_data which are removed.
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Diffstat (limited to 'arch/mips/cpu/mips32')
-rw-r--r-- | arch/mips/cpu/mips32/start.S | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/mips/cpu/mips32/start.S b/arch/mips/cpu/mips32/start.S index cd8b914..649c0bb 100644 --- a/arch/mips/cpu/mips32/start.S +++ b/arch/mips/cpu/mips32/start.S @@ -173,7 +173,7 @@ relocate_code: sub s1, s2, t0 # s1 <-- relocation offset la t3, in_ram - lw t2, -12(t3) # t2 <-- uboot_end_data + lw t2, -12(t3) # t2 <-- __image_copy_end move t1, a2 add gp, s1 # adjust gp @@ -201,9 +201,8 @@ relocate_code: jr t0 nop + .word __image_copy_end .word _GLOBAL_OFFSET_TABLE_ - .word uboot_end_data - .word uboot_end .word num_got_entries in_ram: @@ -214,7 +213,7 @@ in_ram: * generated by GNU ld. Skip these reserved entries from relocation. */ lw t3, -4(t0) # t3 <-- num_got_entries - lw t4, -16(t0) # t4 <-- _GLOBAL_OFFSET_TABLE_ + lw t4, -8(t0) # t4 <-- _GLOBAL_OFFSET_TABLE_ add t4, s1 # t4 now holds relocated _G_O_T_ addi t4, t4, 8 # skipping first two entries li t2, 2 |