ppc64 iSeries: Make stab_initialize() work on iSeries
authorMichael Ellerman <michael@ellerman.id.au>
Fri, 23 Sep 2005 04:50:25 +0000 (14:50 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Fri, 23 Sep 2005 04:50:25 +0000 (14:50 +1000)
We don't need to call stab_initialize() for the boot cpu on iSeries, so
we hack around it so that early_setup() can be called on iSeries.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
arch/ppc64/kernel/setup.c

index 5ac48bd64891f98e0846ef8f0959ccba01da682b..ca8acf671e46ff5fbd16fec88724e9bbf869378e 100644 (file)
@@ -58,6 +58,7 @@
 #include <asm/mmu.h>
 #include <asm/lmb.h>
 #include <asm/iSeries/ItLpNaca.h>
+#include <asm/firmware.h>
 
 #ifdef DEBUG
 #define DBG(fmt...) udbg_printf(fmt)
@@ -401,7 +402,8 @@ void __init early_setup(unsigned long dt_ptr)
        /*
         * Initialize stab / SLB management
         */
-       stab_initialize(lpaca->stab_real);
+       if (!firmware_has_feature(FW_FEATURE_ISERIES))
+               stab_initialize(lpaca->stab_real);
 
        /*
         * Initialize the MMU Hash table and create the linear mapping