aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/netlogic/xlr/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/netlogic/xlr/setup.c')
-rw-r--r--arch/mips/netlogic/xlr/setup.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/mips/netlogic/xlr/setup.c b/arch/mips/netlogic/xlr/setup.c
index 81b1d311834f..8fca6807cab8 100644
--- a/arch/mips/netlogic/xlr/setup.c
+++ b/arch/mips/netlogic/xlr/setup.c
@@ -57,8 +57,9 @@ struct psb_info nlm_prom_info;
57unsigned long nlm_common_ebase = 0x0; 57unsigned long nlm_common_ebase = 0x0;
58 58
59/* default to uniprocessor */ 59/* default to uniprocessor */
60uint32_t nlm_coremask = 1, nlm_cpumask = 1; 60uint32_t nlm_coremask = 1;
61int nlm_threads_per_core = 1; 61int nlm_threads_per_core = 1;
62cpumask_t nlm_cpumask = CPU_MASK_CPU0;
62 63
63static void __init nlm_early_serial_setup(void) 64static void __init nlm_early_serial_setup(void)
64{ 65{
@@ -178,7 +179,7 @@ static void prom_add_memory(void)
178 179
179void __init prom_init(void) 180void __init prom_init(void)
180{ 181{
181 int *argv, *envp; /* passed as 32 bit ptrs */ 182 int i, *argv, *envp; /* passed as 32 bit ptrs */
182 struct psb_info *prom_infop; 183 struct psb_info *prom_infop;
183 184
184 /* truncate to 32 bit and sign extend all args */ 185 /* truncate to 32 bit and sign extend all args */
@@ -195,7 +196,10 @@ void __init prom_init(void)
195 prom_add_memory(); 196 prom_add_memory();
196 197
197#ifdef CONFIG_SMP 198#ifdef CONFIG_SMP
198 nlm_wakeup_secondary_cpus(nlm_prom_info.online_cpu_map); 199 for (i = 0; i < 32; i++)
200 if (nlm_prom_info.online_cpu_map & (1 << i))
201 cpumask_set_cpu(i, &nlm_cpumask);
202 nlm_wakeup_secondary_cpus();
199 register_smp_ops(&nlm_smp_ops); 203 register_smp_ops(&nlm_smp_ops);
200#endif 204#endif
201} 205}