diff options
author | Paul Mackerras <paulus@samba.org> | 2006-09-27 22:47:03 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-09-28 14:30:02 +1000 |
commit | 2bf118197cb4d9a5e7a9e45b5b007235fdc9f402 (patch) | |
tree | d9d7ceadb4eb1b277e914fcca74c901773f17832 /arch/powerpc/boot/zImage.lds.S | |
parent | 4e6d816e51728d5006c53e78e079ac62b902f8aa (diff) | |
download | blackbird-op-linux-2bf118197cb4d9a5e7a9e45b5b007235fdc9f402.tar.gz blackbird-op-linux-2bf118197cb4d9a5e7a9e45b5b007235fdc9f402.zip |
[POWERPC] Create a "wrapper" script and use it in arch/powerpc/boot
This puts the knowledge of how to create various sorts of zImage
wrappers into a script called "wrapper" that could be used outside of
the kernel tree. This changes arch/powerpc/boot so it first builds
the files that the wrapper script needs, then runs it to create
whatever flavours of zImage are required.
This version does uImages as well. The zImage names are changed
slightly; zImage.pseries is the one with the PT_NOTE program header
entry added, and zImage.pmac is the one without. If the
zImage.pseries gets made, it will also get hardlinked to zImage;
otherwise, if zImage.pmac is made, it gets hardlinked to zImage.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/boot/zImage.lds.S')
-rw-r--r-- | arch/powerpc/boot/zImage.lds.S | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/arch/powerpc/boot/zImage.lds.S b/arch/powerpc/boot/zImage.lds.S new file mode 100644 index 000000000000..4b6bb3ffe3dc --- /dev/null +++ b/arch/powerpc/boot/zImage.lds.S @@ -0,0 +1,46 @@ +OUTPUT_ARCH(powerpc:common) +ENTRY(_zimage_start) +SECTIONS +{ + . = (4*1024*1024); + _start = .; + .text : + { + *(.text) + *(.fixup) + } + _etext = .; + . = ALIGN(4096); + .data : + { + *(.rodata*) + *(.data*) + *(.sdata*) + __got2_start = .; + *(.got2) + __got2_end = .; + } + + . = ALIGN(4096); + _vmlinux_start = .; + .kernel:vmlinux.strip : { *(.kernel:vmlinux.strip) } + _vmlinux_end = .; + + . = ALIGN(4096); + _initrd_start = .; + .kernel:initrd : { *(.kernel:initrd) } + _initrd_end = .; + + . = ALIGN(4096); + _edata = .; + + . = ALIGN(4096); + __bss_start = .; + .bss : + { + *(.sbss) + *(.bss) + } + . = ALIGN(4096); + _end = . ; +} |