Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36dffadb7f19671aab58be43c5896ea87d5fb1bf
Commit:     36dffadb7f19671aab58be43c5896ea87d5fb1bf
Parent:     6d15d109632ff01e13c26893030e2ed9e6c4e3fd
Author:     Chris Zankel <[EMAIL PROTECTED]>
AuthorDate: Tue Feb 12 13:14:17 2008 -0800
Committer:  Chris Zankel <[EMAIL PROTECTED]>
CommitDate: Wed Feb 13 17:26:17 2008 -0800

    [XTENSA] Use preprocessor to generate the linker script for the ELF boot 
image
    
    Signed-off-by: Marc Gauthier <[EMAIL PROTECTED]>
    Signed-off-by: Chris Zankel <[EMAIL PROTECTED]>
---
 arch/xtensa/boot/boot-elf/Makefile   |    5 +-
 arch/xtensa/boot/boot-elf/boot.ld    |   72 ---------------------------------
 arch/xtensa/boot/boot-elf/boot.lds.S |   73 ++++++++++++++++++++++++++++++++++
 3 files changed, 76 insertions(+), 74 deletions(-)

diff --git a/arch/xtensa/boot/boot-elf/Makefile 
b/arch/xtensa/boot/boot-elf/Makefile
index 734db7f..9cf50ef 100644
--- a/arch/xtensa/boot/boot-elf/Makefile
+++ b/arch/xtensa/boot/boot-elf/Makefile
@@ -14,12 +14,13 @@ OBJCOPY_ARGS    := -O elf32-xtensa-le
 endif
 
 export OBJCOPY_ARGS
+export CPPFLAGS_boot.lds += -P -C
 
 boot-y         := bootstrap.o
 
 OBJS           := $(addprefix $(obj)/,$(boot-y))
 
-Image: vmlinux $(OBJS)
+Image: vmlinux $(OBJS) arch/$(ARCH)/boot/boot-elf/boot.lds
        $(OBJCOPY) --strip-all -R .comment -R .xt.insn -O binary \
                vmlinux vmlinux.tmp
        $(OBJCOPY) $(OBJCOPY_ARGS) -R .comment \
@@ -27,7 +28,7 @@ Image:        vmlinux $(OBJS)
                --set-section-flags image=contents,alloc,load,load,data \
                $(OBJS) [EMAIL PROTECTED]
        $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) \
-               -T $(srctree)/arch/$(ARCH)/boot/boot-elf/boot.ld \
+               -T arch/$(ARCH)/boot/boot-elf/boot.lds \
                -o arch/$(ARCH)/boot/[EMAIL PROTECTED] [EMAIL PROTECTED]
        rm -f [EMAIL PROTECTED] vmlinux.tmp
 
diff --git a/arch/xtensa/boot/boot-elf/boot.ld 
b/arch/xtensa/boot/boot-elf/boot.ld
deleted file mode 100644
index e33855c..0000000
--- a/arch/xtensa/boot/boot-elf/boot.ld
+++ /dev/null
@@ -1,72 +0,0 @@
-OUTPUT_ARCH(xtensa)
-ENTRY(_ResetVector)
-
-SECTIONS
-{
-       .start 0xD0000000 : { *(.start) }
-
-       .text 0xD0000000:
-       {
-               __reloc_start = . ;
-               _text_start = . ;
-               *(.literal .text.literal .text)
-               _text_end = . ;
-       }
-
-       .rodata ALIGN(0x04):
-       {
-               *(.rodata)
-               *(.rodata1)
-       }
-
-       .data ALIGN(0x04):
-       {
-               *(.data)
-               *(.data1)
-               *(.sdata)
-               *(.sdata2)
-               *(.got.plt)
-               *(.got)
-               *(.dynamic)
-       }
-
-       __reloc_end = . ;
-
-       .initrd ALIGN(0x10) :
-       {
-               boot_initrd_start = . ;
-               *(.initrd)
-               boot_initrd_end = .;
-       }
-
-       . = ALIGN(0x10);
-       __image_load = . ;
-       .image 0xd0001000:
-       {
-               _image_start = .;
-               *(image)
-               . = (. + 3) & ~ 3;
-               _image_end = .  ;
-       }
-
-
-       .bss ((LOADADDR(.image) + SIZEOF(.image) + 3) & ~ 3):
-       {
-               __bss_start = .;
-               *(.sbss)
-               *(.scommon)
-               *(.dynbss)
-               *(.bss)
-               __bss_end = .;
-       }
-       _end = .;
-       _param_start = .;
-
-       .ResetVector.text 0xfe000020 :
-       {
-               *(.ResetVector.text)
-       }
-
-
-       PROVIDE (end = .);
-}
diff --git a/arch/xtensa/boot/boot-elf/boot.lds.S 
b/arch/xtensa/boot/boot-elf/boot.lds.S
new file mode 100644
index 0000000..849dfca
--- /dev/null
+++ b/arch/xtensa/boot/boot-elf/boot.lds.S
@@ -0,0 +1,73 @@
+#include <asm/variant/core.h>
+OUTPUT_ARCH(xtensa)
+ENTRY(_ResetVector)
+
+SECTIONS
+{
+       .start 0xD0000000 : { *(.start) }
+
+       .text 0xD0000000:
+       {
+               __reloc_start = . ;
+               _text_start = . ;
+               *(.literal .text.literal .text)
+               _text_end = . ;
+       }
+
+       .rodata ALIGN(0x04):
+       {
+               *(.rodata)
+               *(.rodata1)
+       }
+
+       .data ALIGN(0x04):
+       {
+               *(.data)
+               *(.data1)
+               *(.sdata)
+               *(.sdata2)
+               *(.got.plt)
+               *(.got)
+               *(.dynamic)
+       }
+
+       __reloc_end = . ;
+
+       .initrd ALIGN(0x10) :
+       {
+               boot_initrd_start = . ;
+               *(.initrd)
+               boot_initrd_end = .;
+       }
+
+       . = ALIGN(0x10);
+       __image_load = . ;
+       .image 0xd0001000:
+       {
+               _image_start = .;
+               *(image)
+               . = (. + 3) & ~ 3;
+               _image_end = .  ;
+       }
+
+
+       .bss ((LOADADDR(.image) + SIZEOF(.image) + 3) & ~ 3):
+       {
+               __bss_start = .;
+               *(.sbss)
+               *(.scommon)
+               *(.dynbss)
+               *(.bss)
+               __bss_end = .;
+       }
+       _end = .;
+       _param_start = .;
+
+       .ResetVector.text XCHAL_RESET_VECTOR_VADDR :
+       {
+               *(.ResetVector.text)
+       }
+
+
+       PROVIDE (end = .);
+}
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to