[PATCH 3/5] ARM: mach-mvebu: remove redundant DT parsing and validation
Gregory CLEMENT
gregory.clement at free-electrons.com
Thu Aug 8 11:19:43 EDT 2013
On 08/08/2013 16:54, Sudeep KarkadaNagesha wrote:
> On 23/07/13 12:32, Sudeep KarkadaNagesha wrote:
>> From: Sudeep KarkadaNagesha <sudeep.karkadanagesha at arm.com>
>>
>> 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.
>>
> Hi Gregory,
>
> Does this change look fine ?
Yes it is a nice cleanup.
and I have just test it on an Armada XP DB board.
So you can add
my Acked-by: Gregory Clement <gregory.clement at free-electrons.com>
> If OK, not sure if you prefer to pick up this or want me to send to
> arm-soc guys.
I think it is better if we pick up this patch as it only touch a file
belonging to mvebu.
Jason,
do you agree to pick it up and then push it to in your next (and maybe
last) pull request?
Thanks,
>
> Regards,
> Sudeep
>
>> Cc: Gregory Clement <gregory.clement at free-electrons.com>
>> Cc: Jason Cooper <jason at lakedaemon.net>
>> Cc: Andrew Lunn <andrew at lunn.ch>
>> Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha at arm.com>
>> ---
>> arch/arm/mach-mvebu/platsmp.c | 19 +------------------
>> 1 file changed, 1 insertion(+), 18 deletions(-)
>>
>> diff --git a/arch/arm/mach-mvebu/platsmp.c b/arch/arm/mach-mvebu/platsmp.c
>> index ce81d30..2e4508a 100644
>> --- a/arch/arm/mach-mvebu/platsmp.c
>> +++ b/arch/arm/mach-mvebu/platsmp.c
>> @@ -87,28 +87,11 @@ static int armada_xp_boot_secondary(unsigned int cpu, struct task_struct *idle)
>>
>> 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);
>> }
>>
>>
>
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the linux-arm-kernel
mailing list