Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+12 −5
Original line number Diff line number Diff line
@@ -256,6 +256,16 @@ asmlinkage void smp_thermal_interrupt(struct pt_regs *regs)
	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)
{
	/*
@@ -263,8 +273,7 @@ void __init mcheck_intel_therm_init(void)
	 * LVT value on BSP and use that value to restore APs' thermal LVT
	 * entry BIOS programmed later
	 */
	if (cpu_has(&boot_cpu_data, X86_FEATURE_ACPI) &&
		cpu_has(&boot_cpu_data, X86_FEATURE_ACC))
	if (intel_thermal_supported(&boot_cpu_data))
		lvtthmr_init = apic_read(APIC_LVTTHMR);
}

@@ -274,9 +283,7 @@ void intel_init_thermal(struct cpuinfo_x86 *c)
	int tm2 = 0;
	u32 l, h;

	/* Thermal monitoring depends on APIC, ACPI and clock modulation */
	if (!cpu_has_apic || !cpu_has(c, X86_FEATURE_ACPI) ||
		!cpu_has(c, X86_FEATURE_ACC))
	if (!intel_thermal_supported(c))
		return;

	/*