common: Add .u_boot_list into all linker files
[kernel/u-boot.git] / board / freescale / mx31ads / u-boot.lds
index 2731294..e59fd18 100644 (file)
@@ -38,33 +38,62 @@ SECTIONS
          /* the sector layout of our flash chips!      XXX FIXME XXX   */
 
          arch/arm/cpu/arm1136/start.o                  (.text)
-         board/freescale/mx31ads/libmx31ads.a  (.text)
-         arch/arm/lib/libarm.a                 (.text)
-         net/libnet.a                          (.text)
-         drivers/mtd/libmtd.a                  (.text)
+         board/freescale/mx31ads/libmx31ads.o  (.text)
+         arch/arm/lib/libarm.o                 (.text)
+         net/libnet.o                          (.text)
+         drivers/mtd/libmtd.o                  (.text)
 
          . = DEFINED(env_offset) ? env_offset : .;
          common/env_embedded.o(.text)
 
          *(.text)
        }
-
        . = ALIGN(4);
-       .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
+       .rodata : { *(.rodata) }
 
        . = ALIGN(4);
-       .data : { *(.data) }
+       .data : {
+               *(.data)
+       }
 
        . = ALIGN(4);
-       .got : { *(.got) }
-
-       . = .;
        __u_boot_cmd_start = .;
        .u_boot_cmd : { *(.u_boot_cmd) }
        __u_boot_cmd_end = .;
 
        . = ALIGN(4);
-       __bss_start = .;
-       .bss : { *(.bss) . = ALIGN(4); }
+       .u_boot_list : {
+       #include <u-boot.lst>
+       }
+
+       . = ALIGN(4);
+
+       .rel.dyn : {
+               __rel_dyn_start = .;
+               *(.rel*)
+               __rel_dyn_end = .;
+       }
+
+       .dynsym : {
+               __dynsym_start = .;
+               *(.dynsym)
+       }
+
        _end = .;
+
+       .bss __rel_dyn_start (OVERLAY) : {
+               __bss_start = .;
+               *(.bss)
+                . = ALIGN(4);
+               __bss_end__ = .;
+       }
+
+       /DISCARD/ : { *(.bss*) }
+       /DISCARD/ : { *(.dynstr*) }
+       /DISCARD/ : { *(.dynsym*) }
+       /DISCARD/ : { *(.dynamic*) }
+       /DISCARD/ : { *(.hash*) }
+       /DISCARD/ : { *(.plt*) }
+       /DISCARD/ : { *(.interp*) }
+       /DISCARD/ : { *(.gnu*) }
 }