ARM: tegra: Use DT /cpu node to detect number of CPU core
authorHiroshi Doyu <hdoyu@nvidia.com>
Tue, 15 Jan 2013 08:13:12 +0000 (10:13 +0200)
committerStephen Warren <swarren@nvidia.com>
Mon, 28 Jan 2013 17:40:52 +0000 (10:40 -0700)
SCU based detection only works with Cortex-A9 MP and it doesn't
support ones with multiple clusters. The only way to detect number of
CPU core correctly is with DT /cpu node.

Tegra SoCs decided to use DT detection as the only way and to not use
SCU based detection at all. Even if DT /cpu node based detection
fails, it continues with a single core

Signed-off-by: Hiroshi Doyu <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
arch/arm/mach-tegra/platsmp.c

index 1b926df99c4b2a5c8929f28b180a36aaba9ee5a0..79fa7857d68d19b3f17b2c037cc24615e9011f16 100644 (file)
@@ -143,23 +143,8 @@ done:
        return status;
 }
 
-/*
- * Initialise the CPU possible map early - this describes the CPUs
- * which may be present or become present in the system.
- */
 static void __init tegra_smp_init_cpus(void)
 {
-       unsigned int i, ncores = scu_get_core_count(scu_base);
-
-       if (ncores > nr_cpu_ids) {
-               pr_warn("SMP: %u cores greater than maximum (%u), clipping\n",
-                       ncores, nr_cpu_ids);
-               ncores = nr_cpu_ids;
-       }
-
-       for (i = 0; i < ncores; i++)
-               set_cpu_possible(i, true);
-
        set_smp_cross_call(gic_raise_softirq);
 }