ARM: ux500: cpuidle: replace for_each_online_cpu by for_each_possible_cpu
authorDaniel Lezcano <daniel.lezcano@linaro.org>
Tue, 23 Apr 2013 08:54:32 +0000 (08:54 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 23 Apr 2013 11:45:22 +0000 (13:45 +0200)
All the drivers are using, in their initialization function, the
for_each_possible_cpu macro.

Using for_each_online_cpu means the driver must handle the initialization
of the cpuidle device when a cpu is up which is not the case here.

Change the macro to for_each_possible_cpu as that fix the hotplug
initialization and make the initialization routine consistent with the
rest of the code in the different drivers.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
arch/arm/mach-ux500/cpuidle.c

index c29c1bf..5657d4a 100644 (file)
@@ -125,7 +125,7 @@ int __init ux500_idle_init(void)
                return ret;
        }
 
-       for_each_online_cpu(cpu) {
+       for_each_possible(cpu) {
                device = &per_cpu(ux500_cpuidle_device, cpu);
                device->cpu = cpu;
                ret = cpuidle_register_device(device);
@@ -139,7 +139,7 @@ out:
        return ret;
 
 out_unregister:
-       for_each_online_cpu(cpu) {
+       for_each_possible_cpu(cpu) {
                device = &per_cpu(ux500_cpuidle_device, cpu);
                cpuidle_unregister_device(device);
        }