ARM: ux500: convert logical CPU numbers to physical numbers
authorWill Deacon <will.deacon@arm.com>
Tue, 9 Aug 2011 11:21:36 +0000 (12:21 +0100)
committerWill Deacon <will.deacon@arm.com>
Mon, 17 Oct 2011 09:01:11 +0000 (10:01 +0100)
This patch uses the new cpu_logical_map() macro for converting logical
CPU numbers into physical numbers when dealing with the pen_release
variable in the SMP boot and CPU hotplug paths.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/mach-ux500/hotplug.c
arch/arm/mach-ux500/platsmp.c

index dd8037e..572015e 100644 (file)
@@ -24,7 +24,7 @@ static inline void platform_do_lowpower(unsigned int cpu)
        for (;;) {
                __asm__ __volatile__("dsb\n\t" "wfi\n\t"
                                : : : "memory");
-               if (pen_release == cpu) {
+               if (pen_release == cpu_logical_map(cpu)) {
                        /*
                         * OK, proper wakeup, we're done
                         */
index a33df5f..27e5281 100644 (file)
@@ -96,7 +96,7 @@ int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle)
         * the holding pen - release it, then wait for it to flag
         * that it has been released by resetting pen_release.
         */
-       write_pen_release(cpu);
+       write_pen_release(cpu_logical_map(cpu));
 
        gic_raise_softirq(cpumask_of(cpu), 1);