From: Venkatesh Pallipadi Date: Thu, 16 Oct 2008 23:00:08 +0000 (-0400) Subject: cpuidle: upon BIOS bug, default to default_idle rather than polling X-Git-Tag: firefly_0821_release~17134^2~21^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=89cedfefca1d446ee2598fd3bcbb23ee3802e26a;p=firefly-linux-kernel-4.4.55.git cpuidle: upon BIOS bug, default to default_idle rather than polling http://bugzilla.kernel.org/show_bug.cgi?id=11345 Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown --- diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index ed92864d1325..f8caf040650e 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -123,6 +123,9 @@ config GENERIC_TIME_VSYSCALL config ARCH_HAS_CPU_RELAX def_bool y +config ARCH_HAS_DEFAULT_IDLE + def_bool y + config ARCH_HAS_CACHE_LINE_SIZE def_bool y diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index eb2cade562db..bb6e3b338043 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c @@ -56,7 +56,11 @@ static void cpuidle_idle_call(void) if (pm_idle_old) pm_idle_old(); else +#if defined(CONFIG_ARCH_HAS_DEFAULT_IDLE) + default_idle(); +#else local_irq_enable(); +#endif return; }