diff options
author | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2013-12-20 13:47:28 -0500 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-01-10 19:26:49 -0500 |
commit | dbf87ab89fbd14b723b7282de635bc70f4996342 (patch) | |
tree | ef5c18c825d823f5d91f3c70ce3aa45e527efe5e | |
parent | 130a5f692425e6237229598a8624da0a247f33d5 (diff) |
intel_idle: do C1E promotion disable quirk for hotplugged CPUs
If the system is booted with some CPUs offline C1E promotion disable quirk
won't be applied because on_each_cpu() in intel_idle_cpuidle_driver_init()
operates only on online CPUs. Fix it by adding the C1E promotion disable
handling to intel_idle_cpu_init() (which is also called during CPU_ONLINE
operation).
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Len Brown <lenb@kernel.org>
Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/idle/intel_idle.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/idle/intel_idle.c b/drivers/idle/intel_idle.c index 797ed29a36ea..920232ffb282 100644 --- a/drivers/idle/intel_idle.c +++ b/drivers/idle/intel_idle.c | |||
@@ -688,6 +688,9 @@ static int intel_idle_cpu_init(int cpu) | |||
688 | if (icpu->auto_demotion_disable_flags) | 688 | if (icpu->auto_demotion_disable_flags) |
689 | smp_call_function_single(cpu, auto_demotion_disable, NULL, 1); | 689 | smp_call_function_single(cpu, auto_demotion_disable, NULL, 1); |
690 | 690 | ||
691 | if (icpu->disable_promotion_to_c1e) | ||
692 | smp_call_function_single(cpu, c1e_promotion_disable, NULL, 1); | ||
693 | |||
691 | return 0; | 694 | return 0; |
692 | } | 695 | } |
693 | 696 | ||