aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-integrator/platsmp.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-02-17 08:13:11 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-02-17 08:13:11 -0800
commita5222049f3e26c21ecd65bfcc9b666d4c813933b (patch)
treef4474d66f0150b8dba8675b373a90d5509af9d75 /arch/arm/mach-integrator/platsmp.c
parent7054ec7f86cada917626c05fe461abccca816d3b (diff)
parentd9db950cfa3d674ee834d980c329efdf8e4a0568 (diff)
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'arch/arm/mach-integrator/platsmp.c')
-rw-r--r--arch/arm/mach-integrator/platsmp.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/arch/arm/mach-integrator/platsmp.c b/arch/arm/mach-integrator/platsmp.c
index ea10bd8c972..1bc8534ef0c 100644
--- a/arch/arm/mach-integrator/platsmp.c
+++ b/arch/arm/mach-integrator/platsmp.c
@@ -140,6 +140,18 @@ static void __init poke_milo(void)
mb();
}
+/*
+ * Initialise the CPU possible map early - this describes the CPUs
+ * which may be present or become present in the system.
+ */
+void __init smp_init_cpus(void)
+{
+ unsigned int i, ncores = get_core_count();
+
+ for (i = 0; i < ncores; i++)
+ cpu_set(i, cpu_possible_map);
+}
+
void __init smp_prepare_cpus(unsigned int max_cpus)
{
unsigned int ncores = get_core_count();
@@ -176,14 +188,11 @@ void __init smp_prepare_cpus(unsigned int max_cpus)
max_cpus = ncores;
/*
- * Initialise the possible/present maps.
- * cpu_possible_map describes the set of CPUs which may be present
- * cpu_present_map describes the set of CPUs populated
+ * Initialise the present map, which describes the set of CPUs
+ * actually populated at the present time.
*/
- for (i = 0; i < max_cpus; i++) {
- cpu_set(i, cpu_possible_map);
+ for (i = 0; i < max_cpus; i++)
cpu_set(i, cpu_present_map);
- }
/*
* Do we need any more CPUs? If so, then let them know where