]> Pileus Git - ~andy/linux/blobdiff - arch/powerpc/kernel/setup_32.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg...
[~andy/linux] / arch / powerpc / kernel / setup_32.c
index 086c23c1ee5e9395db3f26ca4b80fe99324e72c3..9e1ca745d8f059afc2809353eaae248155b9c282 100644 (file)
@@ -38,6 +38,7 @@
 #include <asm/time.h>
 #include <asm/serial.h>
 #include <asm/udbg.h>
+#include <asm/mmu_context.h>
 
 #include "setup.h"
 
@@ -97,6 +98,10 @@ notrace unsigned long __init early_init(unsigned long dt_ptr)
                          PTRRELOC(&__start___ftr_fixup),
                          PTRRELOC(&__stop___ftr_fixup));
 
+       do_feature_fixups(spec->mmu_features,
+                         PTRRELOC(&__start___mmu_ftr_fixup),
+                         PTRRELOC(&__stop___mmu_ftr_fixup));
+
        do_lwsync_fixups(spec->cpu_features,
                         PTRRELOC(&__start___lwsync_fixup),
                         PTRRELOC(&__stop___lwsync_fixup));
@@ -121,6 +126,8 @@ notrace void __init machine_init(unsigned long dt_ptr)
 
        probe_machine();
 
+       setup_kdump_trampoline();
+
 #ifdef CONFIG_6xx
        if (cpu_has_feature(CPU_FTR_CAN_DOZE) ||
            cpu_has_feature(CPU_FTR_CAN_NAP))
@@ -326,4 +333,8 @@ void __init setup_arch(char **cmdline_p)
        if ( ppc_md.progress ) ppc_md.progress("arch: exit", 0x3eab);
 
        paging_init();
+
+       /* Initialize the MMU context management stuff */
+       mmu_context_init();
+
 }