Commit 9223d0dc authored by Borislav Petkov's avatar Borislav Petkov
Browse files

thermal: Move therm_throt there from x86/mce



This functionality has nothing to do with MCE, move it to the thermal
framework and untangle it from MCE.

Requested-by: default avatarPeter Zijlstra <peterz@infradead.org>
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Reviewed-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Tested-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Link: https://lkml.kernel.org/r/20210202121003.GD18075@zn.tnic
parent 4f432e8b
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -1157,10 +1157,6 @@ config X86_MCE_INJECT
	  If you don't know what a machine check is and you don't do kernel
	  QA it is safe to say n.

config X86_THERMAL_VECTOR
	def_bool y
	depends on X86_MCE_INTEL

source "arch/x86/events/Kconfig"

config X86_LEGACY_VM86
+0 −16
Original line number Diff line number Diff line
@@ -288,22 +288,6 @@ extern void (*mce_threshold_vector)(void);
/* Deferred error interrupt handler */
extern void (*deferred_error_int_vector)(void);

/*
 * Thermal handler
 */

void intel_init_thermal(struct cpuinfo_x86 *c);

/* Interrupt Handler for core thermal thresholds */
extern int (*platform_thermal_notify)(__u64 msr_val);

/* Interrupt Handler for package thermal thresholds */
extern int (*platform_thermal_package_notify)(__u64 msr_val);

/* Callback support of rate control, return true, if
 * callback has rate control */
extern bool (*platform_thermal_package_rate_control)(void);

/*
 * Used by APEI to report memory error via /dev/mcelog
 */
+13 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _ASM_X86_THERMAL_H
#define _ASM_X86_THERMAL_H

#ifdef CONFIG_X86_THERMAL_VECTOR
void intel_init_thermal(struct cpuinfo_x86 *c);
bool x86_thermal_enabled(void);
void intel_thermal_interrupt(void);
#else
static inline void intel_init_thermal(struct cpuinfo_x86 *c) { }
#endif

#endif /* _ASM_X86_THERMAL_H */
+3 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@
#include <asm/traps.h>
#include <asm/resctrl.h>
#include <asm/numa.h>
#include <asm/thermal.h>

#ifdef CONFIG_X86_64
#include <linux/topology.h>
@@ -719,6 +720,8 @@ static void init_intel(struct cpuinfo_x86 *c)
		tsx_disable();

	split_lock_init();

	intel_init_thermal(c);
}

#ifdef CONFIG_X86_32
+0 −2
Original line number Diff line number Diff line
@@ -9,8 +9,6 @@ obj-$(CONFIG_X86_MCE_THRESHOLD) += threshold.o
mce-inject-y			:= inject.o
obj-$(CONFIG_X86_MCE_INJECT)	+= mce-inject.o

obj-$(CONFIG_X86_THERMAL_VECTOR) += therm_throt.o

obj-$(CONFIG_ACPI_APEI)		+= apei.o

obj-$(CONFIG_X86_MCELOG_LEGACY)	+= dev-mcelog.o
Loading