diff options
Diffstat (limited to 'arch/arm/mach-shmobile/platsmp.c')
-rw-r--r-- | arch/arm/mach-shmobile/platsmp.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/mach-shmobile/platsmp.c b/arch/arm/mach-shmobile/platsmp.c index f3888feb1c6..e4e485fa253 100644 --- a/arch/arm/mach-shmobile/platsmp.c +++ b/arch/arm/mach-shmobile/platsmp.c | |||
@@ -56,6 +56,12 @@ void __init smp_init_cpus(void) | |||
56 | unsigned int ncores = shmobile_smp_get_core_count(); | 56 | unsigned int ncores = shmobile_smp_get_core_count(); |
57 | unsigned int i; | 57 | unsigned int i; |
58 | 58 | ||
59 | if (ncores > nr_cpu_ids) { | ||
60 | pr_warn("SMP: %u cores greater than maximum (%u), clipping\n", | ||
61 | ncores, nr_cpu_ids); | ||
62 | ncores = nr_cpu_ids; | ||
63 | } | ||
64 | |||
59 | for (i = 0; i < ncores; i++) | 65 | for (i = 0; i < ncores; i++) |
60 | set_cpu_possible(i, true); | 66 | set_cpu_possible(i, true); |
61 | 67 | ||
@@ -64,10 +70,5 @@ void __init smp_init_cpus(void) | |||
64 | 70 | ||
65 | void __init platform_smp_prepare_cpus(unsigned int max_cpus) | 71 | void __init platform_smp_prepare_cpus(unsigned int max_cpus) |
66 | { | 72 | { |
67 | int i; | ||
68 | |||
69 | for (i = 0; i < max_cpus; i++) | ||
70 | set_cpu_present(i, true); | ||
71 | |||
72 | shmobile_smp_prepare_cpus(); | 73 | shmobile_smp_prepare_cpus(); |
73 | } | 74 | } |