Author: mw
Date: Mon Apr  6 19:45:26 2020
New Revision: 359667
URL: https://svnweb.freebsd.org/changeset/base/359667

Log:
  Add hwpmc support for Intel Atom Goldmont microarchitecture
  
  Recognize new micro-architecture in hwpmc_intel driver. Based on Intel
  document 325462-071US. Tested with tools/test/hwpmc/pmctest.py
  on Atom E3930 SoC.
  
  Submitted by: Dawid Gorecki <d...@semihalf.com>
  Reviewed by: kib
  Obtained from: Semihalf
  Sponsored by: Stormshield
  Differential Revision: https://reviews.freebsd.org/D24310

Modified:
  head/sys/dev/hwpmc/hwpmc_intel.c
  head/sys/sys/pmc.h

Modified: head/sys/dev/hwpmc/hwpmc_intel.c
==============================================================================
--- head/sys/dev/hwpmc/hwpmc_intel.c    Mon Apr  6 18:52:40 2020        
(r359666)
+++ head/sys/dev/hwpmc/hwpmc_intel.c    Mon Apr  6 19:45:26 2020        
(r359667)
@@ -203,6 +203,10 @@ pmc_intel_initialize(void)
                        cputype = PMC_CPU_INTEL_ATOM_SILVERMONT;
                        nclasses = 3;
                        break;
+               case 0x5C:      /* Per Intel document 325462-071US 10/2019. */
+                       cputype = PMC_CPU_INTEL_ATOM_GOLDMONT;
+                       nclasses = 3;
+                       break;
                }
                break;
        }
@@ -230,6 +234,7 @@ pmc_intel_initialize(void)
                 */
        case PMC_CPU_INTEL_ATOM:
        case PMC_CPU_INTEL_ATOM_SILVERMONT:
+       case PMC_CPU_INTEL_ATOM_GOLDMONT:
        case PMC_CPU_INTEL_BROADWELL:
        case PMC_CPU_INTEL_BROADWELL_XEON:
        case PMC_CPU_INTEL_SKYLAKE_XEON:
@@ -293,6 +298,7 @@ pmc_intel_finalize(struct pmc_mdep *md)
        switch (md->pmd_cputype) {
        case PMC_CPU_INTEL_ATOM:
        case PMC_CPU_INTEL_ATOM_SILVERMONT:
+       case PMC_CPU_INTEL_ATOM_GOLDMONT:
        case PMC_CPU_INTEL_BROADWELL:
        case PMC_CPU_INTEL_BROADWELL_XEON:
        case PMC_CPU_INTEL_SKYLAKE_XEON:

Modified: head/sys/sys/pmc.h
==============================================================================
--- head/sys/sys/pmc.h  Mon Apr  6 18:52:40 2020        (r359666)
+++ head/sys/sys/pmc.h  Mon Apr  6 19:45:26 2020        (r359667)
@@ -110,6 +110,7 @@ extern char pmc_cpuid[PMC_CPUID_LEN];
        __PMC_CPU(INTEL_BROADWELL_XEON, 0x97,   "Intel Broadwell Xeon") \
        __PMC_CPU(INTEL_SKYLAKE, 0x98,   "Intel Skylake")               \
        __PMC_CPU(INTEL_SKYLAKE_XEON, 0x99,   "Intel Skylake Xeon")     \
+       __PMC_CPU(INTEL_ATOM_GOLDMONT, 0x9A,   "Intel Atom Goldmont")   \
        __PMC_CPU(INTEL_XSCALE, 0x100,  "Intel XScale")         \
        __PMC_CPU(MIPS_24K,     0x200,  "MIPS 24K")             \
        __PMC_CPU(MIPS_OCTEON,  0x201,  "Cavium Octeon")        \
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to