Patchwork [05/13] cpuid: add missing CPUID feature flag names

login
register
mail settings
Submitter Andre Przywara
Date Feb. 2, 2010, 10:08 a.m.
Message ID <1265105301-3455-6-git-send-email-andre.przywara@amd.com>
Download mbox | patch
Permalink /patch/44269/
State New
Headers show

Comments

Andre Przywara - Feb. 2, 2010, 10:08 a.m.
Some CPUID feature flags had no string value, so they could not be
switched on or off from the command line.
Add names for the missing ones mentioned in the current public CPUID
specification from both Intel and AMD. Those only mentioned in the
Linux kernel source I put as comments.

Signed-off-by: Andre Przywara <andre.przywara@amd.com>
---
 target-i386/cpuid.c |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)
Aurelien Jarno - March 6, 2010, 6:26 p.m.
On Tue, Feb 02, 2010 at 11:08:13AM +0100, Andre Przywara wrote:
> Some CPUID feature flags had no string value, so they could not be
> switched on or off from the command line.
> Add names for the missing ones mentioned in the current public CPUID
> specification from both Intel and AMD. Those only mentioned in the
> Linux kernel source I put as comments.
> 
> Signed-off-by: Andre Przywara <andre.przywara@amd.com>

Acked-by: Aurelien Jarno <aurelien@aurel32.net>

> ---
>  target-i386/cpuid.c |   15 ++++++++-------
>  1 files changed, 8 insertions(+), 7 deletions(-)
> 
> diff --git a/target-i386/cpuid.c b/target-i386/cpuid.c
> index 0238718..19d58e1 100644
> --- a/target-i386/cpuid.c
> +++ b/target-i386/cpuid.c
> @@ -52,11 +52,11 @@ static const char *feature_name[] = {
>      "fxsr", "sse", "sse2", "ss", "ht" /* Intel htt */, "tm", "ia64", "pbe",
>  };
>  static const char *ext_feature_name[] = {
> -    "pni" /* Intel,AMD sse3 */, NULL, NULL, "monitor",
> -        "ds_cpl", "vmx", NULL /* Linux smx */, "est",
> -    "tm2", "ssse3", "cid", NULL, NULL, "cx16", "xtpr", NULL,
> -    NULL, NULL, "dca", NULL, NULL, NULL, NULL, "popcnt",
> -    NULL, NULL, NULL, NULL, NULL, NULL, NULL, "hypervisor",
> +    "pni" /* Intel,AMD sse3 */, "pclmuldq", "dtes64", "monitor",
> +        "ds_cpl", "vmx", "smx", "est",
> +    "tm2", "ssse3", "cid", NULL, NULL /* FMA */, "cx16", "xtpr", "pdcm",
> +    NULL, NULL, "dca", "sse4_1", "sse4_2", "x2apic", "movbe", "popcnt",
> +    NULL, "aes", "xsave", "osxsave", NULL /* AVX */, NULL, NULL, "hypervisor",
>  };
>  static const char *ext2_feature_name[] = {
>      "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
> @@ -71,8 +71,9 @@ static const char *ext3_feature_name[] = {
>      "lahf_lm" /* AMD LahfSahf */, "cmp_legacy",
>          "svm", "extapic" /* AMD ExtApicSpace */,
>          "cr8legacy" /* AMD AltMovCr8 */, "abm", "sse4a", "misalignsse",
> -    "3dnowprefetch", "osvw", NULL /* Linux ibs */, NULL, "skinit", "wdt", NULL, NULL,
> -    NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
> +    "3dnowprefetch", "osvw", "ibs", NULL /* SSE-5 */,
> +        "skinit", "wdt", NULL, NULL,
> +    NULL, NULL, NULL, "nodeid_msr", NULL, NULL, NULL, NULL,
>      NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
>  };
>  
> -- 
> 1.6.4
> 
> 
> 
> 
>

Patch

diff --git a/target-i386/cpuid.c b/target-i386/cpuid.c
index 0238718..19d58e1 100644
--- a/target-i386/cpuid.c
+++ b/target-i386/cpuid.c
@@ -52,11 +52,11 @@  static const char *feature_name[] = {
     "fxsr", "sse", "sse2", "ss", "ht" /* Intel htt */, "tm", "ia64", "pbe",
 };
 static const char *ext_feature_name[] = {
-    "pni" /* Intel,AMD sse3 */, NULL, NULL, "monitor",
-        "ds_cpl", "vmx", NULL /* Linux smx */, "est",
-    "tm2", "ssse3", "cid", NULL, NULL, "cx16", "xtpr", NULL,
-    NULL, NULL, "dca", NULL, NULL, NULL, NULL, "popcnt",
-    NULL, NULL, NULL, NULL, NULL, NULL, NULL, "hypervisor",
+    "pni" /* Intel,AMD sse3 */, "pclmuldq", "dtes64", "monitor",
+        "ds_cpl", "vmx", "smx", "est",
+    "tm2", "ssse3", "cid", NULL, NULL /* FMA */, "cx16", "xtpr", "pdcm",
+    NULL, NULL, "dca", "sse4_1", "sse4_2", "x2apic", "movbe", "popcnt",
+    NULL, "aes", "xsave", "osxsave", NULL /* AVX */, NULL, NULL, "hypervisor",
 };
 static const char *ext2_feature_name[] = {
     "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
@@ -71,8 +71,9 @@  static const char *ext3_feature_name[] = {
     "lahf_lm" /* AMD LahfSahf */, "cmp_legacy",
         "svm", "extapic" /* AMD ExtApicSpace */,
         "cr8legacy" /* AMD AltMovCr8 */, "abm", "sse4a", "misalignsse",
-    "3dnowprefetch", "osvw", NULL /* Linux ibs */, NULL, "skinit", "wdt", NULL, NULL,
-    NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
+    "3dnowprefetch", "osvw", "ibs", NULL /* SSE-5 */,
+        "skinit", "wdt", NULL, NULL,
+    NULL, NULL, NULL, "nodeid_msr", NULL, NULL, NULL, NULL,
     NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
 };