]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/mips/mipssim/sim_setup.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable
[mv-sheeva.git] / arch / mips / mipssim / sim_setup.c
index d012719c4d240ff1d0c0522c013304a954ccbbb5..7c7148ef26463f5d159ef7ceaf538ecceb8b0dde 100644 (file)
 #include <asm/mips-boards/simint.h>
 
 
-extern void sim_time_init(void);
 static void __init serial_init(void);
 unsigned int _isbonito = 0;
 
-extern void __init sanitize_tlb_entries(void);
-
-
 const char *get_system_type(void)
 {
        return "MIPSsim";
@@ -54,14 +50,12 @@ void __init plat_mem_setup(void)
 
        serial_init();
 
-       board_time_init = sim_time_init;
        pr_info("Linux started...\n");
 
-#ifdef CONFIG_MIPS_MT_SMP
-       sanitize_tlb_entries();
-#endif
 }
 
+extern struct plat_smp_ops ssmtc_smp_ops;
+
 void __init prom_init(void)
 {
        set_io_port_base(0xbfd00000);
@@ -69,8 +63,20 @@ void __init prom_init(void)
        pr_info("\nLINUX started...\n");
        prom_init_cmdline();
        prom_meminit();
-}
 
+#ifdef CONFIG_MIPS_MT_SMP
+       if (cpu_has_mipsmt)
+               register_smp_ops(&vsmp_smp_ops);
+       else
+               register_smp_ops(&up_smp_ops);
+#endif
+#ifdef CONFIG_MIPS_MT_SMTC
+       if (cpu_has_mipsmt)
+               register_smp_ops(&ssmtc_smp_ops);
+       else
+               register_smp_ops(&up_smp_ops);
+#endif
+}
 
 static void __init serial_init(void)
 {