Module Name:    src
Committed By:   cegger
Date:           Tue Feb 15 10:11:25 UTC 2011

Modified Files:
        src/sys/arch/x86/include: specialreg.h

Log Message:
update cpuid bits


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/sys/arch/x86/include/specialreg.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x86/include/specialreg.h
diff -u src/sys/arch/x86/include/specialreg.h:1.49 src/sys/arch/x86/include/specialreg.h:1.50
--- src/sys/arch/x86/include/specialreg.h:1.49	Tue Oct 12 00:39:08 2010
+++ src/sys/arch/x86/include/specialreg.h	Tue Feb 15 10:11:25 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: specialreg.h,v 1.49 2010/10/12 00:39:08 jakllsch Exp $	*/
+/*	$NetBSD: specialreg.h,v 1.50 2011/02/15 10:11:25 cegger Exp $	*/
 
 /*-
  * Copyright (c) 1991 The Regents of the University of California.
@@ -158,7 +158,7 @@
 /* Intel Fn80000001 extended features - %ecx */
 #define	CPUID_LAHF	0x00000001	/* LAHF/SAHF in IA-32e mode, 64bit sub*/
 
-#define	CPUID_INTEL_FLAGS4	"\20\1LAHF"
+#define	CPUID_INTEL_FLAGS4	"\20\1LAHF\02B02\03B03"
 
 
 /* AMD/VIA Fn80000001 extended features - %edx */
@@ -173,8 +173,9 @@
 #define CPUID_3DNOW2	0x40000000	/* 3DNow! Instruction Extension */
 #define CPUID_3DNOW	0x80000000	/* 3DNow! Instructions */
 
-#define CPUID_EXT_FLAGS	"\20\14SYSCALL/SYSRET\24MPC\25NOX\27MXX\32FFXSR" \
-			    "\33P1GB\34RDTSCP\36LONG\0373DNOW2\0403DNOW"
+#define CPUID_EXT_FLAGS	"\20\14SYSCALL/SYSRET\24MPC\25NOX" \
+			    "\27MXX\32FFXSR\33P1GB\34RDTSCP" \
+			    "\36LONG\0373DNOW2\0403DNOW" \
 
 /* AMD Fn80000001 extended features - %ecx */
 #define CPUID_LAHF	0x00000001	/* LAHF/SAHF instruction */
@@ -188,24 +189,40 @@
 #define CPUID_3DNOWPF	0x00000100	/* 3DNow Prefetch */
 #define CPUID_OSVW	0x00000200	/* OS visible workarounds */
 #define CPUID_IBS	0x00000400	/* Instruction Based Sampling */
-#define CPUID_SSE5	0x00000800	/* SSE5 instruction set */
+#define CPUID_XOP	0x00000800	/* XOP instruction set */
 #define CPUID_SKINIT	0x00001000	/* SKINIT */
 #define CPUID_WDT	0x00002000	/* watchdog timer support */
+#define CPUID_LWP	0x00008000	/* Light Weight Profiling */
+#define CPUID_FMA4	0x00010000	/* FMA4 instructions */
+#define CPUID_NODEID	0x00080000	/* NodeID MSR available*/
+#define CPUID_TBM	0x00200000	/* TBM instructions */
+#define CPUID_TOPOEXT	0x00400000	/* cpuid Topology Extension */
 
 #define CPUID_AMD_FLAGS4	"\20\1LAHF\2CMPLEGACY\3SVM\4EAPIC\5ALTMOVCR0" \
 				    "\6LZCNT\7SSE4A\10MISALIGNSSE" \
 				    "\0113DNOWPREFETCH\12OSVW\13IBS" \
-				    "\14SSE5\15SKINIT\16WDT"
+				    "\14XOP\15SKINIT\16WDT\20LWP" \
+				    "\21FMA4\22B17\23B18\24NodeID\25B20\26TBM" \
+				    "\27TopoExt\30B23\31B24" \
+				    "\32B25\33B25\34B26" \
+				    "\35B27\36B28\37B29\40B30\41B31\42B32"
 
 /* AMD Fn8000000a %edx features (SVM features) */
 #define	CPUID_AMD_SVM_NP		0x00000001
 #define	CPUID_AMD_SVM_LbrVirt		0x00000002
 #define	CPUID_AMD_SVM_SVML		0x00000004
 #define	CPUID_AMD_SVM_NRIPS		0x00000008
-#define	CPUID_AMD_SVM_Ssse3Sse5Dis	0x00000200
+#define	CPUID_AMD_SVM_TSCRateCtrl	0x00000010
+#define	CPUID_AMD_SVM_VMCBCleanBits	0x00000020
+#define	CPUID_AMD_SVM_FlushByASID	0x00000040
+#define	CPUID_AMD_SVM_DecodeAssist	0x00000080
 #define	CPUID_AMD_SVM_PauseFilter	0x00000400
 #define	CPUID_AMD_SVM_FLAGS	 "\20\1NP\2LbrVirt\3SVML\4NRIPS" \
-				    "\12Ssse3Sse5Dis\13PauseFilter"
+				    "\5TSCRate\6VMCBCleanBits\7FlushByASID" \
+				    "\10DecodeAssist\11B08" \
+				    "\12B09\13PauseFilter" \
+				    "\14B11\15B12" \
+				    "\16B13\17B17\20B18\21B19"
 
 /*
  * AMD Advanced Power Management
@@ -221,9 +238,10 @@
 #define CPUID_APM_HWP	0x00000080	/* HW P-State control */
 #define CPUID_APM_TSC	0x00000100	/* TSC invariant */
 #define CPUID_APM_CPB	0x00000200	/* Core performance boost */
+#define CPUID_APM_EFF	0x00000400	/* Effective Frequency (read-only) */
 
 #define CPUID_APM_FLAGS		"\20\1TS\2FID\3VID\4TTP\5HTC\6STC\007100" \
-				    "\10HWP\11TSC\12CPB"
+				    "\10HWP\11TSC\12CPB\13EffFreq\14B11\15B12"
 
 /*
  * Centaur Extended Feature flags
@@ -246,6 +264,7 @@
  */
 
 #define	CPUID2_SSE3	0x00000001	/* Streaming SIMD Extensions 3 */
+#define	CPUID2_PCLMUL	0x00000002	/* PCLMULQDQ instructions */
 #define	CPUID2_DTES64	0x00000004	/* 64-bit Debug Trace */
 #define	CPUID2_MONITOR	0x00000008	/* MONITOR/MWAIT instructions */
 #define	CPUID2_DS_CPL	0x00000010	/* CPL Qualified Debug Store */
@@ -263,13 +282,18 @@
 #define	CPUID2_SSE42	0x00100000	/* Streaming SIMD Extensions 4.2 */
 #define	CPUID2_X2APIC	0x00200000	/* xAPIC Extensions */
 #define	CPUID2_POPCNT	0x00800000	/* popcount instruction available */
+#define	CPUID2_AES	0x02000000	/* AES instructions */
+#define	CPUID2_XSAVE	0x04000000	/* XSAVE instructions */
+#define	CPUID2_OSXSAVE	0x08000000	/* XGETBV/XSETBV instructions */
+#define	CPUID2_AVX	0x10000000	/* AVX instructions */
+#define	CPUID2_F16C	0x20000000	/* half precision conversion */
 #define	CPUID2_RAZ	0x80000000	/* RAZ. Indicates guest state. */
 
-#define CPUID2_FLAGS1	"\20\1SSE3\2B01\3DTES64\4MONITOR\5DS-CPL\6VMX\7SMX" \
+#define CPUID2_FLAGS1	"\20\1SSE3\2PCLMULQDQ\3DTES64\4MONITOR\5DS-CPL\6VMX\7SMX" \
 			    "\10EST\11TM2\12SSSE3\13CID\14B11\15B12\16CX16" \
 			    "\17xTPR\20PDCM\21B16\22B17\23DCA\24SSE41\25SSE42" \
-			    "\26X2APIC\27MOVBE\30POPCNT\31B24\32B25\33XSAVE" \
-			    "\34OSXSAVE\35B28\36B29\37B30\40RAZ"
+			    "\26X2APIC\27MOVBE\30POPCNT\31B24\32AES\33XSAVE" \
+			    "\34OSXSAVE\35AVX\36F16C\37B30\40RAZ"
 
 #define CPUID2FAMILY(cpuid)	(((cpuid) >> 8) & 0xf)
 #define CPUID2MODEL(cpuid)	(((cpuid) >> 4) & 0xf)

Reply via email to