mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
x86/cpuid: More AMD features
All of these are informational and require no further logic changes in Xen to support. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
5205bda5f1
commit
ee973396f0
3 files changed
+17
No files matched your search
@@ -91,6 +91,7 @@ static const char *const str_e1c[32] =
|
||||
[24] = "perfctr-nb", /* [25] */
|
||||
[26] = "dbx", [27] = "perftsc",
|
||||
[28] = "pcx-l2i", [29] = "monitorx",
|
||||
[30] = "addr-msk-ext",
|
||||
};
|
||||
|
||||
static const char *const str_7b0[32] =
|
||||
@@ -199,11 +200,15 @@ static const char *const str_7a1[32] =
|
||||
|
||||
static const char *const str_e21a[32] =
|
||||
{
|
||||
[ 0] = "no-nest-bp", [ 1] = "fs-gs-ns",
|
||||
[ 2] = "lfence+",
|
||||
[ 6] = "nscb",
|
||||
[ 8] = "auto-ibrs",
|
||||
[10] = "amd-fsrs", [11] = "amd-fsrc",
|
||||
|
||||
/* 16 */ [17] = "cpuid-user-dis",
|
||||
[18] = "epsf", [19] = "fsrsc",
|
||||
[20] = "amd-prefetchi",
|
||||
|
||||
/* 26 */ [27] = "sbpb",
|
||||
[28] = "ibpb-brtype", [29] = "srso-no",
|
||||
|
||||
@@ -168,6 +168,7 @@ XEN_CPUFEATURE(TBM, 3*32+21) /*A trailing bit manipulations */
|
||||
XEN_CPUFEATURE(TOPOEXT, 3*32+22) /* topology extensions CPUID leafs */
|
||||
XEN_CPUFEATURE(DBEXT, 3*32+26) /*A data breakpoint extension */
|
||||
XEN_CPUFEATURE(MONITORX, 3*32+29) /* MONITOR extension (MONITORX/MWAITX) */
|
||||
XEN_CPUFEATURE(ADDR_MSK_EXT, 3*32+30) /*A Address Mask Extentions */
|
||||
|
||||
/* Intel-defined CPU features, CPUID level 0x0000000D:1.eax, word 4 */
|
||||
XEN_CPUFEATURE(XSAVEOPT, 4*32+ 0) /*A XSAVEOPT instruction */
|
||||
@@ -290,10 +291,17 @@ XEN_CPUFEATURE(WRMSRNS, 10*32+19) /*S WRMSR Non-Serialising */
|
||||
XEN_CPUFEATURE(AVX_IFMA, 10*32+23) /*A AVX-IFMA Instructions */
|
||||
|
||||
/* AMD-defined CPU features, CPUID level 0x80000021.eax, word 11 */
|
||||
XEN_CPUFEATURE(NO_NEST_BP, 11*32+ 0) /*A No Nested Data Breakpoints */
|
||||
XEN_CPUFEATURE(FS_GS_NS, 11*32+ 1) /*S FS/GS base MSRs non-serialising */
|
||||
XEN_CPUFEATURE(LFENCE_DISPATCH, 11*32+ 2) /*A LFENCE always serializing */
|
||||
XEN_CPUFEATURE(NSCB, 11*32+ 6) /*A Null Selector Clears Base (and limit too) */
|
||||
XEN_CPUFEATURE(AUTO_IBRS, 11*32+ 8) /*S Automatic IBRS */
|
||||
XEN_CPUFEATURE(AMD_FSRS, 11*32+10) /*A Fast Short REP STOSB */
|
||||
XEN_CPUFEATURE(AMD_FSRC, 11*32+11) /*A Fast Short REP CMPSB */
|
||||
XEN_CPUFEATURE(CPUID_USER_DIS, 11*32+17) /* CPUID disable for CPL > 0 software */
|
||||
XEN_CPUFEATURE(EPSF, 11*32+18) /*A Enhanced Predictive Store Forwarding */
|
||||
XEN_CPUFEATURE(FSRSC, 11*32+19) /*A Fast Short REP SCASB */
|
||||
XEN_CPUFEATURE(AMD_PREFETCHI, 11*32+20) /*A PREFETCHIT{0,1} Instructions */
|
||||
XEN_CPUFEATURE(SBPB, 11*32+27) /*A Selective Branch Predictor Barrier */
|
||||
XEN_CPUFEATURE(IBPB_BRTYPE, 11*32+28) /*A IBPB flushes Branch Type predictions too */
|
||||
XEN_CPUFEATURE(SRSO_NO, 11*32+29) /*A Hardware not vulenrable to Speculative Return Stack Overflow */
|
||||
|
||||
@@ -329,6 +329,10 @@ def crunch_numbers(state):
|
||||
# In principle the TSXLDTRK insns could also be considered independent.
|
||||
RTM: [TSXLDTRK],
|
||||
|
||||
# Enhanced Predictive Store-Forwarding is a informational note on top
|
||||
# of PSF.
|
||||
PSFD: [EPSF],
|
||||
|
||||
# The ARCH_CAPS CPUID bit enumerates the availability of the whole register.
|
||||
ARCH_CAPS: list(range(RDCL_NO, RDCL_NO + 64)),
|
||||
|
||||
|
||||