Commit 70fe4407 authored by Hidetoshi Seto's avatar Hidetoshi Seto Committed by Ingo Molnar

x86, mce: Clean up thermal init by introducing intel_thermal_supported()

It looks better to have a common function. No change in functionality.
Signed-off-by: default avatarHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Cc: Cyrill Gorcunov <gorcunov@openvz.org>
LKML-Reference: <4B25FDDC.407@jp.fujitsu.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Cc: Cyrill Gorcunov <gorcunov@openvz.org>
parent 485a2e19
...@@ -256,6 +256,16 @@ asmlinkage void smp_thermal_interrupt(struct pt_regs *regs) ...@@ -256,6 +256,16 @@ asmlinkage void smp_thermal_interrupt(struct pt_regs *regs)
ack_APIC_irq(); ack_APIC_irq();
} }
/* Thermal monitoring depends on APIC, ACPI and clock modulation */
static int intel_thermal_supported(struct cpuinfo_x86 *c)
{
if (!cpu_has_apic)
return 0;
if (!cpu_has(c, X86_FEATURE_ACPI) || !cpu_has(c, X86_FEATURE_ACC))
return 0;
return 1;
}
void __init mcheck_intel_therm_init(void) void __init mcheck_intel_therm_init(void)
{ {
/* /*
...@@ -263,8 +273,7 @@ void __init mcheck_intel_therm_init(void) ...@@ -263,8 +273,7 @@ void __init mcheck_intel_therm_init(void)
* LVT value on BSP and use that value to restore APs' thermal LVT * LVT value on BSP and use that value to restore APs' thermal LVT
* entry BIOS programmed later * entry BIOS programmed later
*/ */
if (cpu_has(&boot_cpu_data, X86_FEATURE_ACPI) && if (intel_thermal_supported(&boot_cpu_data))
cpu_has(&boot_cpu_data, X86_FEATURE_ACC))
lvtthmr_init = apic_read(APIC_LVTTHMR); lvtthmr_init = apic_read(APIC_LVTTHMR);
} }
...@@ -274,9 +283,7 @@ void intel_init_thermal(struct cpuinfo_x86 *c) ...@@ -274,9 +283,7 @@ void intel_init_thermal(struct cpuinfo_x86 *c)
int tm2 = 0; int tm2 = 0;
u32 l, h; u32 l, h;
/* Thermal monitoring depends on APIC, ACPI and clock modulation */ if (!intel_thermal_supported(c))
if (!cpu_has_apic || !cpu_has(c, X86_FEATURE_ACPI) ||
!cpu_has(c, X86_FEATURE_ACC))
return; return;
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment