Author: cem
Date: Thu Sep  7 21:29:51 2017
New Revision: 323287
URL: https://svnweb.freebsd.org/changeset/base/323287

Log:
  Store AMD RAS Capabilities cpuid value and name flags
  
  Reviewed by:  truckman
  Sponsored by: Dell EMC Isilon
  Differential Revision:        https://reviews.freebsd.org/D12237

Modified:
  head/sys/x86/include/specialreg.h
  head/sys/x86/include/x86_var.h
  head/sys/x86/x86/identcpu.c

Modified: head/sys/x86/include/specialreg.h
==============================================================================
--- head/sys/x86/include/specialreg.h   Thu Sep  7 20:20:12 2017        
(r323286)
+++ head/sys/x86/include/specialreg.h   Thu Sep  7 21:29:51 2017        
(r323287)
@@ -308,6 +308,15 @@
 #define        CPUID_EXTSTATE_XSAVES   0x00000008
 
 /*
+ * AMD extended function 8000_0007h ebx info
+ */
+#define        AMDRAS_MCA_OF_RECOV     0x00000001
+#define        AMDRAS_SUCCOR           0x00000002
+#define        AMDRAS_HW_ASSERT        0x00000004
+#define        AMDRAS_SCALABLE_MCA     0x00000008
+#define        AMDRAS_PFEH_SUPPORT     0x00000010
+
+/*
  * AMD extended function 8000_0007h edx info
  */
 #define        AMDPM_TS                0x00000001

Modified: head/sys/x86/include/x86_var.h
==============================================================================
--- head/sys/x86/include/x86_var.h      Thu Sep  7 20:20:12 2017        
(r323286)
+++ head/sys/x86/include/x86_var.h      Thu Sep  7 21:29:51 2017        
(r323287)
@@ -44,6 +44,7 @@ extern        u_int   cpu_feature;
 extern u_int   cpu_feature2;
 extern u_int   amd_feature;
 extern u_int   amd_feature2;
+extern u_int   amd_rascap;
 extern u_int   amd_pminfo;
 extern u_int   via_feature_rng;
 extern u_int   via_feature_xcrypt;

Modified: head/sys/x86/x86/identcpu.c
==============================================================================
--- head/sys/x86/x86/identcpu.c Thu Sep  7 20:20:12 2017        (r323286)
+++ head/sys/x86/x86/identcpu.c Thu Sep  7 21:29:51 2017        (r323287)
@@ -91,6 +91,7 @@ u_int cpu_feature;            /* Feature flags */
 u_int  cpu_feature2;           /* Feature flags */
 u_int  amd_feature;            /* AMD feature flags */
 u_int  amd_feature2;           /* AMD feature flags */
+u_int  amd_rascap;             /* AMD RAS capabilities */
 u_int  amd_pminfo;             /* AMD advanced power management info */
 u_int  via_feature_rng;        /* VIA RNG features */
 u_int  via_feature_xcrypt;     /* VIA ACE features */
@@ -1461,6 +1462,7 @@ finishidentcpu(void)
        }
        if (cpu_exthigh >= 0x80000007) {
                do_cpuid(0x80000007, regs);
+               amd_rascap = regs[1];
                amd_pminfo = regs[3];
        }
        if (cpu_exthigh >= 0x80000008) {
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to