diff options
author | Cédric Le Goater <clg@fr.ibm.com> | 2014-04-24 03:23:39 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2014-04-28 03:36:21 -0400 |
commit | 147c05168fc86e824ccd1c0a02b40843e3cbca88 (patch) | |
tree | b11fef2a92755918913b6c630d4fdb8f64af394a /arch/powerpc/boot/pseries-head.S | |
parent | 2d9afb369bc069f11a3a8696c4bdf95d4ddf1281 (diff) |
powerpc/boot: Add support for 64bit little endian wrapper
The code is only slightly modified : entry points now use the
FIXUP_ENDIAN trampoline to switch endian order. The 32bit wrapper
is kept for big endian kernels and 64bit is enforced for little
endian kernels with a PPC64_BOOT_WRAPPER config option.
The linker script is generated using the kernel preprocessor flags
to make use of the CONFIG_* definitions and the wrapper script is
modified to take into account the new elf64ppc format.
Finally, the zImage file is compiled as a position independent
executable (-pie) which makes it loadable at any address by the
firmware.
Signed-off-by: Cédric Le Goater <clg@fr.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/boot/pseries-head.S')
-rw-r--r-- | arch/powerpc/boot/pseries-head.S | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/powerpc/boot/pseries-head.S b/arch/powerpc/boot/pseries-head.S index 655c3d2c321b..6ef6e02e80f9 100644 --- a/arch/powerpc/boot/pseries-head.S +++ b/arch/powerpc/boot/pseries-head.S | |||
@@ -1,5 +1,8 @@ | |||
1 | #include "ppc_asm.h" | ||
2 | |||
1 | .text | 3 | .text |
2 | 4 | ||
3 | .globl _zimage_start | 5 | .globl _zimage_start |
4 | _zimage_start: | 6 | _zimage_start: |
7 | FIXUP_ENDIAN | ||
5 | b _zimage_start_lib | 8 | b _zimage_start_lib |