diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-11-19 07:23:51 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2008-01-29 05:14:57 -0500 |
commit | 87353d8ac39c52784da605ecbe965ecdfad609ad (patch) | |
tree | c95ce7cbe9b099c21cab71a195621801b04bc05a /arch/mips/mipssim/sim_setup.c | |
parent | 19388fb092d89e179575bd0b44f51b57e175edf5 (diff) |
[MIPS] SMP: Call platform methods via ops structure.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mipssim/sim_setup.c')
-rw-r--r-- | arch/mips/mipssim/sim_setup.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/mips/mipssim/sim_setup.c b/arch/mips/mipssim/sim_setup.c index 452c129d02c1..d49fe73426b7 100644 --- a/arch/mips/mipssim/sim_setup.c +++ b/arch/mips/mipssim/sim_setup.c | |||
@@ -60,6 +60,8 @@ void __init plat_mem_setup(void) | |||
60 | #endif | 60 | #endif |
61 | } | 61 | } |
62 | 62 | ||
63 | extern struct plat_smp_ops ssmtc_smp_ops; | ||
64 | |||
63 | void __init prom_init(void) | 65 | void __init prom_init(void) |
64 | { | 66 | { |
65 | set_io_port_base(0xbfd00000); | 67 | set_io_port_base(0xbfd00000); |
@@ -67,8 +69,20 @@ void __init prom_init(void) | |||
67 | pr_info("\nLINUX started...\n"); | 69 | pr_info("\nLINUX started...\n"); |
68 | prom_init_cmdline(); | 70 | prom_init_cmdline(); |
69 | prom_meminit(); | 71 | prom_meminit(); |
70 | } | ||
71 | 72 | ||
73 | #ifdef CONFIG_MIPS_MT_SMP | ||
74 | if (cpu_has_mipsmt) | ||
75 | register_smp_ops(&vsmp_smp_ops); | ||
76 | else | ||
77 | register_smp_ops(&up_smp_ops); | ||
78 | #endif | ||
79 | #ifdef CONFIG_MIPS_MT_SMTC | ||
80 | if (cpu_has_mipsmt) | ||
81 | register_smp_ops(&ssmtc_smp_ops); | ||
82 | else | ||
83 | register_smp_ops(&up_smp_ops); | ||
84 | #endif | ||
85 | } | ||
72 | 86 | ||
73 | static void __init serial_init(void) | 87 | static void __init serial_init(void) |
74 | { | 88 | { |