summaryrefslogtreecommitdiffstats
path: root/tools/power/x86
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2016-06-16 23:22:37 -0400
committerLen Brown <len.brown@intel.com>2016-12-01 01:33:19 -0500
commit869ce69e1e8ae7e6fa4a1a90887e5f94eac653eb (patch)
treecb36bfcf6b78447b35298b1512e490fcefc5d68b /tools/power/x86
parent0f64490978ef9ed4debe33bf0dbf25e80659f7f7 (diff)
tools/power turbostat: use intel-family.h model strings
All except for model 1F, a Nehalem, which is currently incorrectly indentified as a Westmere in that new header. Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'tools/power/x86')
-rw-r--r--tools/power/x86/turbostat/Makefile1
-rw-r--r--tools/power/x86/turbostat/turbostat.c249
2 files changed, 126 insertions, 124 deletions
diff --git a/tools/power/x86/turbostat/Makefile b/tools/power/x86/turbostat/Makefile
index 8561e7ddca59..8792ad8dbf83 100644
--- a/tools/power/x86/turbostat/Makefile
+++ b/tools/power/x86/turbostat/Makefile
@@ -10,6 +10,7 @@ endif
10turbostat : turbostat.c 10turbostat : turbostat.c
11CFLAGS += -Wall 11CFLAGS += -Wall
12CFLAGS += -DMSRHEADER='"../../../../arch/x86/include/asm/msr-index.h"' 12CFLAGS += -DMSRHEADER='"../../../../arch/x86/include/asm/msr-index.h"'
13CFLAGS += -DINTEL_FAMILY_HEADER='"../../../../arch/x86/include/asm/intel-family.h"'
13 14
14%: %.c 15%: %.c
15 @mkdir -p $(BUILD_OUTPUT) 16 @mkdir -p $(BUILD_OUTPUT)
diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c
index 70a6699c528c..2056c148c684 100644
--- a/tools/power/x86/turbostat/turbostat.c
+++ b/tools/power/x86/turbostat/turbostat.c
@@ -21,6 +21,7 @@
21 21
22#define _GNU_SOURCE 22#define _GNU_SOURCE
23#include MSRHEADER 23#include MSRHEADER
24#include INTEL_FAMILY_HEADER
24#include <stdarg.h> 25#include <stdarg.h>
25#include <stdio.h> 26#include <stdio.h>
26#include <err.h> 27#include <err.h>
@@ -2163,48 +2164,48 @@ int probe_nhm_msrs(unsigned int family, unsigned int model)
2163 bclk = discover_bclk(family, model); 2164 bclk = discover_bclk(family, model);
2164 2165
2165 switch (model) { 2166 switch (model) {
2166 case 0x1A: /* Core i7, Xeon 5500 series - Bloomfield, Gainstown NHM-EP */ 2167 case INTEL_FAM6_NEHALEM_EP: /* Core i7, Xeon 5500 series - Bloomfield, Gainstown NHM-EP */
2167 case 0x1E: /* Core i7 and i5 Processor - Clarksfield, Lynnfield, Jasper Forest */ 2168 case INTEL_FAM6_NEHALEM: /* Core i7 and i5 Processor - Clarksfield, Lynnfield, Jasper Forest */
2168 case 0x1F: /* Core i7 and i5 Processor - Nehalem */ 2169 case 0x1F: /* Core i7 and i5 Processor - Nehalem */
2169 case 0x25: /* Westmere Client - Clarkdale, Arrandale */ 2170 case INTEL_FAM6_WESTMERE: /* Westmere Client - Clarkdale, Arrandale */
2170 case 0x2C: /* Westmere EP - Gulftown */ 2171 case INTEL_FAM6_WESTMERE_EP: /* Westmere EP - Gulftown */
2171 case 0x2E: /* Nehalem-EX Xeon - Beckton */ 2172 case INTEL_FAM6_NEHALEM_EX: /* Nehalem-EX Xeon - Beckton */
2172 case 0x2F: /* Westmere-EX Xeon - Eagleton */ 2173 case INTEL_FAM6_WESTMERE_EX: /* Westmere-EX Xeon - Eagleton */
2173 pkg_cstate_limits = nhm_pkg_cstate_limits; 2174 pkg_cstate_limits = nhm_pkg_cstate_limits;
2174 break; 2175 break;
2175 case 0x2A: /* SNB */ 2176 case INTEL_FAM6_SANDYBRIDGE: /* SNB */
2176 case 0x2D: /* SNB Xeon */ 2177 case INTEL_FAM6_SANDYBRIDGE_X: /* SNB Xeon */
2177 case 0x3A: /* IVB */ 2178 case INTEL_FAM6_IVYBRIDGE: /* IVB */
2178 case 0x3E: /* IVB Xeon */ 2179 case INTEL_FAM6_IVYBRIDGE_X: /* IVB Xeon */
2179 pkg_cstate_limits = snb_pkg_cstate_limits; 2180 pkg_cstate_limits = snb_pkg_cstate_limits;
2180 break; 2181 break;
2181 case 0x3C: /* HSW */ 2182 case INTEL_FAM6_HASWELL_CORE: /* HSW */
2182 case 0x3F: /* HSX */ 2183 case INTEL_FAM6_HASWELL_X: /* HSX */
2183 case 0x45: /* HSW */ 2184 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2184 case 0x46: /* HSW */ 2185 case INTEL_FAM6_HASWELL_GT3E: /* HSW */
2185 case 0x3D: /* BDW */ 2186 case INTEL_FAM6_BROADWELL_CORE: /* BDW */
2186 case 0x47: /* BDW */ 2187 case INTEL_FAM6_BROADWELL_GT3E: /* BDW */
2187 case 0x4F: /* BDX */ 2188 case INTEL_FAM6_BROADWELL_X: /* BDX */
2188 case 0x56: /* BDX-DE */ 2189 case INTEL_FAM6_BROADWELL_XEON_D: /* BDX-DE */
2189 case 0x4E: /* SKL */ 2190 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2190 case 0x5E: /* SKL */ 2191 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2191 case 0x8E: /* KBL */ 2192 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2192 case 0x9E: /* KBL */ 2193 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2193 case 0x55: /* SKX */ 2194 case INTEL_FAM6_SKYLAKE_X: /* SKX */
2194 pkg_cstate_limits = hsw_pkg_cstate_limits; 2195 pkg_cstate_limits = hsw_pkg_cstate_limits;
2195 break; 2196 break;
2196 case 0x37: /* BYT */ 2197 case INTEL_FAM6_ATOM_SILVERMONT1: /* BYT */
2197 case 0x4D: /* AVN */ 2198 case INTEL_FAM6_ATOM_SILVERMONT2: /* AVN */
2198 pkg_cstate_limits = slv_pkg_cstate_limits; 2199 pkg_cstate_limits = slv_pkg_cstate_limits;
2199 break; 2200 break;
2200 case 0x4C: /* AMT */ 2201 case INTEL_FAM6_ATOM_AIRMONT: /* AMT */
2201 pkg_cstate_limits = amt_pkg_cstate_limits; 2202 pkg_cstate_limits = amt_pkg_cstate_limits;
2202 break; 2203 break;
2203 case 0x57: /* PHI */ 2204 case INTEL_FAM6_XEON_PHI_KNL: /* PHI */
2204 pkg_cstate_limits = phi_pkg_cstate_limits; 2205 pkg_cstate_limits = phi_pkg_cstate_limits;
2205 break; 2206 break;
2206 case 0x5C: /* BXT */ 2207 case INTEL_FAM6_ATOM_GOLDMONT: /* BXT */
2207 case 0x5F: /* DNV */ 2208 case INTEL_FAM6_ATOM_DENVERTON: /* DNV */
2208 pkg_cstate_limits = bxt_pkg_cstate_limits; 2209 pkg_cstate_limits = bxt_pkg_cstate_limits;
2209 break; 2210 break;
2210 default: 2211 default:
@@ -2224,9 +2225,9 @@ int has_nhm_turbo_ratio_limit(unsigned int family, unsigned int model)
2224{ 2225{
2225 switch (model) { 2226 switch (model) {
2226 /* Nehalem compatible, but do not include turbo-ratio limit support */ 2227 /* Nehalem compatible, but do not include turbo-ratio limit support */
2227 case 0x2E: /* Nehalem-EX Xeon - Beckton */ 2228 case INTEL_FAM6_NEHALEM_EX: /* Nehalem-EX Xeon - Beckton */
2228 case 0x2F: /* Westmere-EX Xeon - Eagleton */ 2229 case INTEL_FAM6_WESTMERE_EX: /* Westmere-EX Xeon - Eagleton */
2229 case 0x57: /* PHI - Knights Landing (different MSR definition) */ 2230 case INTEL_FAM6_XEON_PHI_KNL: /* PHI - Knights Landing (different MSR definition) */
2230 return 0; 2231 return 0;
2231 default: 2232 default:
2232 return 1; 2233 return 1;
@@ -2241,8 +2242,8 @@ int has_ivt_turbo_ratio_limit(unsigned int family, unsigned int model)
2241 return 0; 2242 return 0;
2242 2243
2243 switch (model) { 2244 switch (model) {
2244 case 0x3E: /* IVB Xeon */ 2245 case INTEL_FAM6_IVYBRIDGE_X: /* IVB Xeon */
2245 case 0x3F: /* HSW Xeon */ 2246 case INTEL_FAM6_HASWELL_X: /* HSW Xeon */
2246 return 1; 2247 return 1;
2247 default: 2248 default:
2248 return 0; 2249 return 0;
@@ -2257,7 +2258,7 @@ int has_hsw_turbo_ratio_limit(unsigned int family, unsigned int model)
2257 return 0; 2258 return 0;
2258 2259
2259 switch (model) { 2260 switch (model) {
2260 case 0x3F: /* HSW Xeon */ 2261 case INTEL_FAM6_HASWELL_X: /* HSW Xeon */
2261 return 1; 2262 return 1;
2262 default: 2263 default:
2263 return 0; 2264 return 0;
@@ -2273,7 +2274,7 @@ int has_knl_turbo_ratio_limit(unsigned int family, unsigned int model)
2273 return 0; 2274 return 0;
2274 2275
2275 switch (model) { 2276 switch (model) {
2276 case 0x57: /* Knights Landing */ 2277 case INTEL_FAM6_XEON_PHI_KNL: /* Knights Landing */
2277 return 1; 2278 return 1;
2278 default: 2279 default:
2279 return 0; 2280 return 0;
@@ -2288,22 +2289,22 @@ int has_config_tdp(unsigned int family, unsigned int model)
2288 return 0; 2289 return 0;
2289 2290
2290 switch (model) { 2291 switch (model) {
2291 case 0x3A: /* IVB */ 2292 case INTEL_FAM6_IVYBRIDGE: /* IVB */
2292 case 0x3C: /* HSW */ 2293 case INTEL_FAM6_HASWELL_CORE: /* HSW */
2293 case 0x3F: /* HSX */ 2294 case INTEL_FAM6_HASWELL_X: /* HSX */
2294 case 0x45: /* HSW */ 2295 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2295 case 0x46: /* HSW */ 2296 case INTEL_FAM6_HASWELL_GT3E: /* HSW */
2296 case 0x3D: /* BDW */ 2297 case INTEL_FAM6_BROADWELL_CORE: /* BDW */
2297 case 0x47: /* BDW */ 2298 case INTEL_FAM6_BROADWELL_GT3E: /* BDW */
2298 case 0x4F: /* BDX */ 2299 case INTEL_FAM6_BROADWELL_X: /* BDX */
2299 case 0x56: /* BDX-DE */ 2300 case INTEL_FAM6_BROADWELL_XEON_D: /* BDX-DE */
2300 case 0x4E: /* SKL */ 2301 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2301 case 0x5E: /* SKL */ 2302 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2302 case 0x8E: /* KBL */ 2303 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2303 case 0x9E: /* KBL */ 2304 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2304 case 0x55: /* SKX */ 2305 case INTEL_FAM6_SKYLAKE_X: /* SKX */
2305 2306
2306 case 0x57: /* Knights Landing */ 2307 case INTEL_FAM6_XEON_PHI_KNL: /* Knights Landing */
2307 return 1; 2308 return 1;
2308 default: 2309 default:
2309 return 0; 2310 return 0;
@@ -2583,8 +2584,8 @@ double get_tdp(unsigned int model)
2583 return ((msr >> 0) & RAPL_POWER_GRANULARITY) * rapl_power_units; 2584 return ((msr >> 0) & RAPL_POWER_GRANULARITY) * rapl_power_units;
2584 2585
2585 switch (model) { 2586 switch (model) {
2586 case 0x37: 2587 case INTEL_FAM6_ATOM_SILVERMONT1:
2587 case 0x4D: 2588 case INTEL_FAM6_ATOM_SILVERMONT2:
2588 return 30.0; 2589 return 30.0;
2589 default: 2590 default:
2590 return 135.0; 2591 return 135.0;
@@ -2601,10 +2602,10 @@ rapl_dram_energy_units_probe(int model, double rapl_energy_units)
2601 /* only called for genuine_intel, family 6 */ 2602 /* only called for genuine_intel, family 6 */
2602 2603
2603 switch (model) { 2604 switch (model) {
2604 case 0x3F: /* HSX */ 2605 case INTEL_FAM6_HASWELL_X: /* HSX */
2605 case 0x4F: /* BDX */ 2606 case INTEL_FAM6_BROADWELL_X: /* BDX */
2606 case 0x56: /* BDX-DE */ 2607 case INTEL_FAM6_BROADWELL_XEON_D: /* BDX-DE */
2607 case 0x57: /* KNL */ 2608 case INTEL_FAM6_XEON_PHI_KNL: /* KNL */
2608 return (rapl_dram_energy_units = 15.3 / 1000000); 2609 return (rapl_dram_energy_units = 15.3 / 1000000);
2609 default: 2610 default:
2610 return (rapl_energy_units); 2611 return (rapl_energy_units);
@@ -2630,40 +2631,40 @@ void rapl_probe(unsigned int family, unsigned int model)
2630 return; 2631 return;
2631 2632
2632 switch (model) { 2633 switch (model) {
2633 case 0x2A: 2634 case INTEL_FAM6_SANDYBRIDGE:
2634 case 0x3A: 2635 case INTEL_FAM6_IVYBRIDGE:
2635 case 0x3C: /* HSW */ 2636 case INTEL_FAM6_HASWELL_CORE: /* HSW */
2636 case 0x45: /* HSW */ 2637 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2637 case 0x46: /* HSW */ 2638 case INTEL_FAM6_HASWELL_GT3E: /* HSW */
2638 case 0x3D: /* BDW */ 2639 case INTEL_FAM6_BROADWELL_CORE: /* BDW */
2639 case 0x47: /* BDW */ 2640 case INTEL_FAM6_BROADWELL_GT3E: /* BDW */
2640 do_rapl = RAPL_PKG | RAPL_CORES | RAPL_CORE_POLICY | RAPL_GFX | RAPL_PKG_POWER_INFO; 2641 do_rapl = RAPL_PKG | RAPL_CORES | RAPL_CORE_POLICY | RAPL_GFX | RAPL_PKG_POWER_INFO;
2641 break; 2642 break;
2642 case 0x5C: /* BXT */ 2643 case INTEL_FAM6_ATOM_GOLDMONT: /* BXT */
2643 do_rapl = RAPL_PKG | RAPL_PKG_POWER_INFO; 2644 do_rapl = RAPL_PKG | RAPL_PKG_POWER_INFO;
2644 break; 2645 break;
2645 case 0x4E: /* SKL */ 2646 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2646 case 0x5E: /* SKL */ 2647 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2647 case 0x8E: /* KBL */ 2648 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2648 case 0x9E: /* KBL */ 2649 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2649 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO; 2650 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO;
2650 break; 2651 break;
2651 case 0x3F: /* HSX */ 2652 case INTEL_FAM6_HASWELL_X: /* HSX */
2652 case 0x4F: /* BDX */ 2653 case INTEL_FAM6_BROADWELL_X: /* BDX */
2653 case 0x56: /* BDX-DE */ 2654 case INTEL_FAM6_BROADWELL_XEON_D: /* BDX-DE */
2654 case 0x55: /* SKX */ 2655 case INTEL_FAM6_SKYLAKE_X: /* SKX */
2655 case 0x57: /* KNL */ 2656 case INTEL_FAM6_XEON_PHI_KNL: /* KNL */
2656 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO; 2657 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO;
2657 break; 2658 break;
2658 case 0x2D: 2659 case INTEL_FAM6_SANDYBRIDGE_X:
2659 case 0x3E: 2660 case INTEL_FAM6_IVYBRIDGE_X:
2660 do_rapl = RAPL_PKG | RAPL_CORES | RAPL_CORE_POLICY | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_PKG_PERF_STATUS | RAPL_DRAM_PERF_STATUS | RAPL_PKG_POWER_INFO; 2661 do_rapl = RAPL_PKG | RAPL_CORES | RAPL_CORE_POLICY | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_PKG_PERF_STATUS | RAPL_DRAM_PERF_STATUS | RAPL_PKG_POWER_INFO;
2661 break; 2662 break;
2662 case 0x37: /* BYT */ 2663 case INTEL_FAM6_ATOM_SILVERMONT1: /* BYT */
2663 case 0x4D: /* AVN */ 2664 case INTEL_FAM6_ATOM_SILVERMONT2: /* AVN */
2664 do_rapl = RAPL_PKG | RAPL_CORES; 2665 do_rapl = RAPL_PKG | RAPL_CORES;
2665 break; 2666 break;
2666 case 0x5f: /* DNV */ 2667 case INTEL_FAM6_ATOM_DENVERTON: /* DNV */
2667 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO | RAPL_CORES_ENERGY_STATUS; 2668 do_rapl = RAPL_PKG | RAPL_DRAM | RAPL_DRAM_POWER_INFO | RAPL_DRAM_PERF_STATUS | RAPL_PKG_PERF_STATUS | RAPL_PKG_POWER_INFO | RAPL_CORES_ENERGY_STATUS;
2668 break; 2669 break;
2669 default: 2670 default:
@@ -2675,7 +2676,7 @@ void rapl_probe(unsigned int family, unsigned int model)
2675 return; 2676 return;
2676 2677
2677 rapl_power_units = 1.0 / (1 << (msr & 0xF)); 2678 rapl_power_units = 1.0 / (1 << (msr & 0xF));
2678 if (model == 0x37) 2679 if (model == INTEL_FAM6_ATOM_SILVERMONT1)
2679 rapl_energy_units = 1.0 * (1 << (msr >> 8 & 0x1F)) / 1000000; 2680 rapl_energy_units = 1.0 * (1 << (msr >> 8 & 0x1F)) / 1000000;
2680 else 2681 else
2681 rapl_energy_units = 1.0 / (1 << (msr >> 8 & 0x1F)); 2682 rapl_energy_units = 1.0 / (1 << (msr >> 8 & 0x1F));
@@ -2706,11 +2707,11 @@ void perf_limit_reasons_probe(unsigned int family, unsigned int model)
2706 return; 2707 return;
2707 2708
2708 switch (model) { 2709 switch (model) {
2709 case 0x3C: /* HSW */ 2710 case INTEL_FAM6_HASWELL_CORE: /* HSW */
2710 case 0x45: /* HSW */ 2711 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2711 case 0x46: /* HSW */ 2712 case INTEL_FAM6_HASWELL_GT3E: /* HSW */
2712 do_gfx_perf_limit_reasons = 1; 2713 do_gfx_perf_limit_reasons = 1;
2713 case 0x3F: /* HSX */ 2714 case INTEL_FAM6_HASWELL_X: /* HSX */
2714 do_core_perf_limit_reasons = 1; 2715 do_core_perf_limit_reasons = 1;
2715 do_ring_perf_limit_reasons = 1; 2716 do_ring_perf_limit_reasons = 1;
2716 default: 2717 default:
@@ -2919,24 +2920,24 @@ int has_snb_msrs(unsigned int family, unsigned int model)
2919 return 0; 2920 return 0;
2920 2921
2921 switch (model) { 2922 switch (model) {
2922 case 0x2A: 2923 case INTEL_FAM6_SANDYBRIDGE:
2923 case 0x2D: 2924 case INTEL_FAM6_SANDYBRIDGE_X:
2924 case 0x3A: /* IVB */ 2925 case INTEL_FAM6_IVYBRIDGE: /* IVB */
2925 case 0x3E: /* IVB Xeon */ 2926 case INTEL_FAM6_IVYBRIDGE_X: /* IVB Xeon */
2926 case 0x3C: /* HSW */ 2927 case INTEL_FAM6_HASWELL_CORE: /* HSW */
2927 case 0x3F: /* HSW */ 2928 case INTEL_FAM6_HASWELL_X: /* HSW */
2928 case 0x45: /* HSW */ 2929 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2929 case 0x46: /* HSW */ 2930 case INTEL_FAM6_HASWELL_GT3E: /* HSW */
2930 case 0x3D: /* BDW */ 2931 case INTEL_FAM6_BROADWELL_CORE: /* BDW */
2931 case 0x47: /* BDW */ 2932 case INTEL_FAM6_BROADWELL_GT3E: /* BDW */
2932 case 0x4F: /* BDX */ 2933 case INTEL_FAM6_BROADWELL_X: /* BDX */
2933 case 0x56: /* BDX-DE */ 2934 case INTEL_FAM6_BROADWELL_XEON_D: /* BDX-DE */
2934 case 0x4E: /* SKL */ 2935 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2935 case 0x5E: /* SKL */ 2936 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2936 case 0x8E: /* KBL */ 2937 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2937 case 0x9E: /* KBL */ 2938 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2938 case 0x55: /* SKX */ 2939 case INTEL_FAM6_SKYLAKE_X: /* SKX */
2939 case 0x5C: /* BXT */ 2940 case INTEL_FAM6_ATOM_GOLDMONT: /* BXT */
2940 return 1; 2941 return 1;
2941 } 2942 }
2942 return 0; 2943 return 0;
@@ -2960,13 +2961,13 @@ int has_hsw_msrs(unsigned int family, unsigned int model)
2960 return 0; 2961 return 0;
2961 2962
2962 switch (model) { 2963 switch (model) {
2963 case 0x45: /* HSW */ 2964 case INTEL_FAM6_HASWELL_ULT: /* HSW */
2964 case 0x3D: /* BDW */ 2965 case INTEL_FAM6_BROADWELL_CORE: /* BDW */
2965 case 0x4E: /* SKL */ 2966 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2966 case 0x5E: /* SKL */ 2967 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2967 case 0x8E: /* KBL */ 2968 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2968 case 0x9E: /* KBL */ 2969 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2969 case 0x5C: /* BXT */ 2970 case INTEL_FAM6_ATOM_GOLDMONT: /* BXT */
2970 return 1; 2971 return 1;
2971 } 2972 }
2972 return 0; 2973 return 0;
@@ -2986,10 +2987,10 @@ int has_skl_msrs(unsigned int family, unsigned int model)
2986 return 0; 2987 return 0;
2987 2988
2988 switch (model) { 2989 switch (model) {
2989 case 0x4E: /* SKL */ 2990 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
2990 case 0x5E: /* SKL */ 2991 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
2991 case 0x8E: /* KBL */ 2992 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
2992 case 0x9E: /* KBL */ 2993 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
2993 return 1; 2994 return 1;
2994 } 2995 }
2995 return 0; 2996 return 0;
@@ -3002,8 +3003,8 @@ int is_slm(unsigned int family, unsigned int model)
3002 if (!genuine_intel) 3003 if (!genuine_intel)
3003 return 0; 3004 return 0;
3004 switch (model) { 3005 switch (model) {
3005 case 0x37: /* BYT */ 3006 case INTEL_FAM6_ATOM_SILVERMONT1: /* BYT */
3006 case 0x4D: /* AVN */ 3007 case INTEL_FAM6_ATOM_SILVERMONT2: /* AVN */
3007 return 1; 3008 return 1;
3008 } 3009 }
3009 return 0; 3010 return 0;
@@ -3014,7 +3015,7 @@ int is_knl(unsigned int family, unsigned int model)
3014 if (!genuine_intel) 3015 if (!genuine_intel)
3015 return 0; 3016 return 0;
3016 switch (model) { 3017 switch (model) {
3017 case 0x57: /* KNL */ 3018 case INTEL_FAM6_XEON_PHI_KNL: /* KNL */
3018 return 1; 3019 return 1;
3019 } 3020 }
3020 return 0; 3021 return 0;
@@ -3295,17 +3296,17 @@ void process_cpuid()
3295 3296
3296 if (crystal_hz == 0) 3297 if (crystal_hz == 0)
3297 switch(model) { 3298 switch(model) {
3298 case 0x4E: /* SKL */ 3299 case INTEL_FAM6_SKYLAKE_MOBILE: /* SKL */
3299 case 0x5E: /* SKL */ 3300 case INTEL_FAM6_SKYLAKE_DESKTOP: /* SKL */
3300 case 0x8E: /* KBL */ 3301 case INTEL_FAM6_KABYLAKE_MOBILE: /* KBL */
3301 case 0x9E: /* KBL */ 3302 case INTEL_FAM6_KABYLAKE_DESKTOP: /* KBL */
3302 crystal_hz = 24000000; /* 24.0 MHz */ 3303 crystal_hz = 24000000; /* 24.0 MHz */
3303 break; 3304 break;
3304 case 0x55: /* SKX */ 3305 case INTEL_FAM6_SKYLAKE_X: /* SKX */
3305 crystal_hz = 25000000; /* 25.0 MHz */ 3306 crystal_hz = 25000000; /* 25.0 MHz */
3306 break; 3307 break;
3307 case 0x5C: /* BXT */ 3308 case INTEL_FAM6_ATOM_GOLDMONT: /* BXT */
3308 case 0x5F: /* DNV */ 3309 case INTEL_FAM6_ATOM_DENVERTON: /* DNV */
3309 crystal_hz = 19200000; /* 19.2 MHz */ 3310 crystal_hz = 19200000; /* 19.2 MHz */
3310 break; 3311 break;
3311 default: 3312 default: