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

Commit 7856f6cc authored by Andi Kleen's avatar Andi Kleen Committed by H. Peter Anvin
Browse files

x86, mce: enable MCE_INTEL for 32bit new MCE



Enable the 64bit MCE_INTEL code (CMCI, thermal interrupts) for 32bit NEW_MCE.

Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
Signed-off-by: default avatarHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
parent 45f458e9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -808,7 +808,7 @@ config X86_NEW_MCE
config X86_MCE_INTEL
	def_bool y
	prompt "Intel MCE features"
	depends on X86_64 && X86_MCE && X86_LOCAL_APIC
	depends on X86_NEW_MCE && X86_LOCAL_APIC
	---help---
	   Additional support for intel specific MCE features such as
	   the thermal monitor.
+4 −0
Original line number Diff line number Diff line
@@ -56,4 +56,8 @@ BUILD_INTERRUPT(perf_counter_interrupt, LOCAL_PERF_VECTOR)
BUILD_INTERRUPT(thermal_interrupt,THERMAL_APIC_VECTOR)
#endif

#ifdef CONFIG_X86_MCE_THRESHOLD
BUILD_INTERRUPT(threshold_interrupt,THRESHOLD_APIC_VECTOR)
#endif

#endif
+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ typedef struct {
#endif
#ifdef CONFIG_X86_MCE
	unsigned int irq_thermal_count;
# ifdef CONFIG_X86_64
# ifdef CONFIG_X86_MCE_THRESHOLD
	unsigned int irq_threshold_count;
# endif
#endif
+3 −2
Original line number Diff line number Diff line
@@ -87,10 +87,11 @@
#define CALL_FUNCTION_SINGLE_VECTOR	0xfb
#define THERMAL_APIC_VECTOR		0xfa

#define THRESHOLD_APIC_VECTOR		0xf9

#ifdef CONFIG_X86_32
/* 0xf8 - 0xf9 : free */
/* 0xf9 : free */
#else
# define THRESHOLD_APIC_VECTOR		0xf9
# define UV_BAU_MESSAGE			0xf8
#endif

+1 −1
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ static void default_threshold_interrupt(void)

void (*mce_threshold_vector)(void) = default_threshold_interrupt;

asmlinkage void mce_threshold_interrupt(void)
asmlinkage void smp_threshold_interrupt(void)
{
	exit_idle();
	irq_enter();
Loading