Pull kmalloc into release branch
[pandora-kernel.git] / arch / powerpc / platforms / cell / setup.c
index fd3e560..d8c2a29 100644 (file)
@@ -14,7 +14,6 @@
  */
 #undef DEBUG
 
-#include <linux/config.h>
 #include <linux/sched.h>
 #include <linux/kernel.h>
 #include <linux/mm.h>
 #include <asm/ppc-pci.h>
 #include <asm/irq.h>
 #include <asm/spu.h>
+#include <asm/spu_priv1.h>
 
 #include "interrupt.h"
 #include "iommu.h"
+#include "cbe_regs.h"
 #include "pervasive.h"
+#include "ras.h"
 
 #ifdef DEBUG
 #define DBG(fmt...) udbg_printf(fmt)
@@ -81,6 +83,15 @@ static void __init cell_setup_arch(void)
 {
        ppc_md.init_IRQ       = iic_init_IRQ;
        ppc_md.get_irq        = iic_get_irq;
+#ifdef CONFIG_SPU_BASE
+       spu_priv1_ops         = &spu_priv1_mmio_ops;
+#endif
+
+       cbe_regs_init();
+
+#ifdef CONFIG_CBE_RAS
+       cbe_ras_init();
+#endif
 
 #ifdef CONFIG_SMP
        smp_init_cell();
@@ -98,7 +109,7 @@ static void __init cell_setup_arch(void)
        init_pci_config_tokens();
        find_and_init_phbs();
        spider_init_IRQ();
-       cell_pervasive_init();
+       cbe_pervasive_init();
 #ifdef CONFIG_DUMMY_CONSOLE
        conswitchp = &dummy_con;
 #endif
@@ -113,8 +124,6 @@ static void __init cell_init_early(void)
 {
        DBG(" -> cell_init_early()\n");
 
-       hpte_init_native();
-
        cell_init_iommu();
 
        ppc64_interrupt_controller = IC_CELL_PIC;
@@ -127,11 +136,17 @@ static int __init cell_probe(void)
 {
        unsigned long root = of_get_flat_dt_root();
 
-       if (of_flat_dt_is_compatible(root, "IBM,CBEA") ||
-           of_flat_dt_is_compatible(root, "IBM,CPBW-1.0"))
-               return 1;
+       if (!of_flat_dt_is_compatible(root, "IBM,CBEA") &&
+           !of_flat_dt_is_compatible(root, "IBM,CPBW-1.0"))
+               return 0;
+
+#ifdef CONFIG_UDBG_RTAS_CONSOLE
+       udbg_init_rtas_console();
+#endif
+
+       hpte_init_native();
 
-       return 0;
+       return 1;
 }
 
 /*