The following series implements: * Generic framework for relocatable kernel on PPC32, based on processing the dynamic relocation entries. * Relocatable kernel support for 44x * Kdump support for 44x. Doesn't support 47x yet, as the kexec support is missing.
Changes from V1: * Splitted patch 'Enable CONFIG_RELOCATABLE for PPC44x' to move some of the generic bits to a new patch. * Renamed RELOCATABLE_PPC32 to RELOCATABLE_PPC32_PIE and provided options to retained old style mapping. (Suggested by: Scott Wood) * Added support for avoiding the overlapping of uncompressed kernel with boot wrapper for PPC images. The patches are based on -next tree for ppc. I have tested these patches on Ebony, Sequoia and Virtex(QEMU Emulated). I haven't tested the RELOCATABLE bits on PPC_47x yet, as I don't have access to one. However, it should work fine there as we only depend on the runtime address and the XLAT entry setup by the boot loader. It would be great if somebody could test these patches on a 47x. --- Suzuki K. Poulose (5): [boot] Change the load address for the wrapper to fit the kernel [44x] Enable CRASH_DUMP for 440x [44x] Enable CONFIG_RELOCATABLE for PPC44x [ppc] Define virtual-physical translations for PIE relocations [ppc] Process dynamic relocations for kernel arch/powerpc/Kconfig | 18 +++ arch/powerpc/Makefile | 1 arch/powerpc/boot/wrapper | 20 ++++ arch/powerpc/include/asm/page.h | 85 ++++++++++++++++ arch/powerpc/kernel/Makefile | 2 arch/powerpc/kernel/head_44x.S | 110 ++++++++++++++++++++- arch/powerpc/kernel/reloc_32.S | 194 +++++++++++++++++++++++++++++++++++++ arch/powerpc/kernel/vmlinux.lds.S | 8 +- arch/powerpc/mm/init_32.c | 7 + 9 files changed, 434 insertions(+), 11 deletions(-) create mode 100644 arch/powerpc/kernel/reloc_32.S -- Suzuki Poulose _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev