Commit 754aaac3 authored by Dave Hansen's avatar Dave Hansen
Browse files

x86/fpu: Move CPUID leaf definitions to common code



Move the XSAVE-related CPUID leaf definitions to common code.  Then,
use the new definition to remove the last magic number from the CPUID
level dependency table.

Signed-off-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: default avatarZhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/all/20241213205037.43C57CDE%40davehans-spike.ostc.intel.com
parent e558eadf
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -23,8 +23,10 @@ enum cpuid_regs_idx {

#define CPUID_MWAIT_LEAF	0x5
#define CPUID_DCA_LEAF		0x9
#define XSTATE_CPUID		0x0d
#define CPUID_TSC_LEAF		0x15
#define CPUID_FREQ_LEAF		0x16
#define TILE_CPUID		0x1d

#ifdef CONFIG_X86_32
bool have_cpuid_p(void);
+0 −4
Original line number Diff line number Diff line
@@ -12,10 +12,6 @@
/* Bit 63 of XCR0 is reserved for future expansion */
#define XFEATURE_MASK_EXTEND	(~(XFEATURE_MASK_FPSSE | (1ULL << 63)))

#define XSTATE_CPUID		0x0000000d

#define TILE_CPUID		0x0000001d

#define FXSAVE_SIZE	512

#define XSAVE_HDR_SIZE	    64
+1 −1
Original line number Diff line number Diff line
@@ -639,7 +639,7 @@ static const struct cpuid_dependent_feature
cpuid_dependent_features[] = {
	{ X86_FEATURE_MWAIT,		CPUID_MWAIT_LEAF },
	{ X86_FEATURE_DCA,		CPUID_DCA_LEAF },
	{ X86_FEATURE_XSAVE,		0x0000000d },
	{ X86_FEATURE_XSAVE,		XSTATE_CPUID },
	{ 0, 0 }
};

+1 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@
#include <asm/fpu/signal.h>
#include <asm/fpu/xcr.h>

#include <asm/cpuid.h>
#include <asm/tlbflush.h>
#include <asm/prctl.h>
#include <asm/elf.h>