]> git.sur5r.net Git - u-boot/blobdiff - board/spd8xx/u-boot.lds
SPEAr: Fix ARM relocation support
[u-boot] / board / spd8xx / u-boot.lds
index 796c283b344cc56441b8874f0a3e36c059132fc7..a84e7fd35b90df98ba5678787e42a5671fe5fbff 100644 (file)
@@ -36,7 +36,6 @@ SECTIONS
     arch/powerpc/cpu/mpc8xx/traps.o    (.text*)
     net/libnet.o                       (.text*)
     arch/powerpc/cpu/mpc8xx/libmpc8xx.o        (.text*)
-    board/spd8xx/libspd8xx.o           (.text*)
     *(.text.v*printf)
 
     . = DEFINED(env_offset) ? env_offset : .;
@@ -57,13 +56,14 @@ SECTIONS
   PROVIDE (erotext = .);
   .reloc   :
   {
-    KEEP(*(.got))
     _GOT2_TABLE_ = .;
     KEEP(*(.got2))
+    KEEP(*(.got))
+    PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
     _FIXUP_TABLE_ = .;
     KEEP(*(.fixup))
   }
-  __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
+  __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1;
   __fixup_entries = (. - _FIXUP_TABLE_)>>2;
 
   .data    :