ARM: mach-mvebu: remove redundant DT parsing and validation
authorSudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Tue, 23 Jul 2013 11:32:42 +0000 (12:32 +0100)
committerJason Cooper <jason@lakedaemon.net>
Fri, 9 Aug 2013 13:02:51 +0000 (13:02 +0000)
arm_dt_init_cpu_maps parses the device tree, validates and sets the
cpu_possible_mask appropriately. It is unnecessary to do another DT
parse to get the number of cpus, use num_possible_cpus instead.

Cc: Gregory Clement <gregory.clement@free-electrons.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Acked-by: Gregory Clement <gregory.clement@free-electrons.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/mach-mvebu/platsmp.c

index 93f2f3ab45f1346925dc0a17db326a23e553ca1c..9ccbbdb89a4d26bc6bb27d97d48054c635f2f91b 100644 (file)
@@ -88,28 +88,11 @@ static int __cpuinit armada_xp_boot_secondary(unsigned int cpu,
 
 static void __init armada_xp_smp_init_cpus(void)
 {
-       struct device_node *np;
-       unsigned int i, ncores;
+       unsigned int ncores = num_possible_cpus();
 
-       np = of_find_node_by_name(NULL, "cpus");
-       if (!np)
-               panic("No 'cpus' node found\n");
-
-       ncores = of_get_child_count(np);
        if (ncores == 0 || ncores > ARMADA_XP_MAX_CPUS)
                panic("Invalid number of CPUs in DT\n");
 
-       /* Limit possible CPUs to defconfig */
-       if (ncores > nr_cpu_ids) {
-               pr_warn("SMP: %d CPUs physically present. Only %d configured.",
-                       ncores, nr_cpu_ids);
-               pr_warn("Clipping CPU count to %d\n", nr_cpu_ids);
-               ncores = nr_cpu_ids;
-       }
-
-       for (i = 0; i < ncores; i++)
-               set_cpu_possible(i, true);
-
        set_smp_cross_call(armada_mpic_send_doorbell);
 }