Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge branch 'x86/cpu' into x86/platform, to avoid conflict

Signed-off-by: Ingo Molnar <mingo@kernel.org>

+103 -97
+1 -11
arch/x86/include/asm/topology.h
··· 25 25 #ifndef _ASM_X86_TOPOLOGY_H 26 26 #define _ASM_X86_TOPOLOGY_H 27 27 28 - #ifdef CONFIG_X86_32 29 - # ifdef CONFIG_SMP 30 - # define ENABLE_TOPO_DEFINES 31 - # endif 32 - #else 33 - # ifdef CONFIG_SMP 34 - # define ENABLE_TOPO_DEFINES 35 - # endif 36 - #endif 37 - 38 28 /* 39 29 * to preserve the visibility of NUMA_NO_NODE definition, 40 30 * moved to there from here. May be used independent of ··· 113 123 #define topology_physical_package_id(cpu) (cpu_data(cpu).phys_proc_id) 114 124 #define topology_core_id(cpu) (cpu_data(cpu).cpu_core_id) 115 125 116 - #ifdef ENABLE_TOPO_DEFINES 126 + #ifdef CONFIG_SMP 117 127 #define topology_core_cpumask(cpu) (per_cpu(cpu_core_map, cpu)) 118 128 #define topology_sibling_cpumask(cpu) (per_cpu(cpu_sibling_map, cpu)) 119 129
+3 -4
arch/x86/kernel/cpu/intel.c
··· 300 300 } 301 301 302 302 /* 303 - * P4 Xeon errata 037 workaround. 303 + * P4 Xeon erratum 037 workaround. 304 304 * Hardware prefetcher may cause stale data to be loaded into the cache. 305 305 */ 306 306 if ((c->x86 == 15) && (c->x86_model == 1) && (c->x86_mask == 1)) { 307 307 if (msr_set_bit(MSR_IA32_MISC_ENABLE, 308 - MSR_IA32_MISC_ENABLE_PREFETCH_DISABLE_BIT) 309 - > 0) { 308 + MSR_IA32_MISC_ENABLE_PREFETCH_DISABLE_BIT) > 0) { 310 309 pr_info("CPU: C0 stepping P4 Xeon detected.\n"); 311 - pr_info("CPU: Disabling hardware prefetching (Errata 037)\n"); 310 + pr_info("CPU: Disabling hardware prefetching (Erratum 037)\n"); 312 311 } 313 312 } 314 313
+3 -2
arch/x86/platform/atom/punit_atom_debug.c
··· 23 23 #include <linux/seq_file.h> 24 24 #include <linux/io.h> 25 25 #include <asm/cpu_device_id.h> 26 + #include <asm/intel-family.h> 26 27 #include <asm/iosf_mbi.h> 27 28 28 29 /* Power gate status reg */ ··· 144 143 (kernel_ulong_t)&drv_data } 145 144 146 145 static const struct x86_cpu_id intel_punit_cpu_ids[] = { 147 - ICPU(55, punit_device_byt), /* Valleyview, Bay Trail */ 148 - ICPU(76, punit_device_cht), /* Braswell, Cherry Trail */ 146 + ICPU(INTEL_FAM6_ATOM_SILVERMONT1, punit_device_byt), 147 + ICPU(INTEL_FAM6_ATOM_AIRMONT, punit_device_cht), 149 148 {} 150 149 }; 151 150
+3 -2
drivers/acpi/acpi_lpss.c
··· 29 29 #ifdef CONFIG_X86_INTEL_LPSS 30 30 31 31 #include <asm/cpu_device_id.h> 32 + #include <asm/intel-family.h> 32 33 #include <asm/iosf_mbi.h> 33 34 #include <asm/pmc_atom.h> 34 35 ··· 230 229 #define ICPU(model) { X86_VENDOR_INTEL, 6, model, X86_FEATURE_ANY, } 231 230 232 231 static const struct x86_cpu_id lpss_cpu_ids[] = { 233 - ICPU(0x37), /* Valleyview, Bay Trail */ 234 - ICPU(0x4c), /* Braswell, Cherry Trail */ 232 + ICPU(INTEL_FAM6_ATOM_SILVERMONT1), /* Valleyview, Bay Trail */ 233 + ICPU(INTEL_FAM6_ATOM_AIRMONT), /* Braswell, Cherry Trail */ 235 234 {} 236 235 }; 237 236
+19 -18
drivers/cpufreq/intel_pstate.c
··· 35 35 #include <asm/msr.h> 36 36 #include <asm/cpu_device_id.h> 37 37 #include <asm/cpufeature.h> 38 + #include <asm/intel-family.h> 38 39 39 40 #define ATOM_RATIOS 0x66a 40 41 #define ATOM_VIDS 0x66b ··· 1353 1352 (unsigned long)&policy } 1354 1353 1355 1354 static const struct x86_cpu_id intel_pstate_cpu_ids[] = { 1356 - ICPU(0x2a, core_params), 1357 - ICPU(0x2d, core_params), 1358 - ICPU(0x37, silvermont_params), 1359 - ICPU(0x3a, core_params), 1360 - ICPU(0x3c, core_params), 1361 - ICPU(0x3d, core_params), 1362 - ICPU(0x3e, core_params), 1363 - ICPU(0x3f, core_params), 1364 - ICPU(0x45, core_params), 1365 - ICPU(0x46, core_params), 1366 - ICPU(0x47, core_params), 1367 - ICPU(0x4c, airmont_params), 1368 - ICPU(0x4e, core_params), 1369 - ICPU(0x4f, core_params), 1370 - ICPU(0x5e, core_params), 1371 - ICPU(0x56, core_params), 1372 - ICPU(0x57, knl_params), 1355 + ICPU(INTEL_FAM6_SANDYBRIDGE, core_params), 1356 + ICPU(INTEL_FAM6_SANDYBRIDGE_X, core_params), 1357 + ICPU(INTEL_FAM6_ATOM_SILVERMONT1, silvermont_params), 1358 + ICPU(INTEL_FAM6_IVYBRIDGE, core_params), 1359 + ICPU(INTEL_FAM6_HASWELL_CORE, core_params), 1360 + ICPU(INTEL_FAM6_BROADWELL_CORE, core_params), 1361 + ICPU(INTEL_FAM6_IVYBRIDGE_X, core_params), 1362 + ICPU(INTEL_FAM6_HASWELL_X, core_params), 1363 + ICPU(INTEL_FAM6_HASWELL_ULT, core_params), 1364 + ICPU(INTEL_FAM6_HASWELL_GT3E, core_params), 1365 + ICPU(INTEL_FAM6_BROADWELL_GT3E, core_params), 1366 + ICPU(INTEL_FAM6_ATOM_AIRMONT, airmont_params), 1367 + ICPU(INTEL_FAM6_SKYLAKE_MOBILE, core_params), 1368 + ICPU(INTEL_FAM6_BROADWELL_X, core_params), 1369 + ICPU(INTEL_FAM6_SKYLAKE_DESKTOP, core_params), 1370 + ICPU(INTEL_FAM6_BROADWELL_XEON_D, core_params), 1371 + ICPU(INTEL_FAM6_XEON_PHI_KNL, knl_params), 1373 1372 {} 1374 1373 }; 1375 1374 MODULE_DEVICE_TABLE(x86cpu, intel_pstate_cpu_ids); 1376 1375 1377 1376 static const struct x86_cpu_id intel_pstate_cpu_oob_ids[] = { 1378 - ICPU(0x56, core_params), 1377 + ICPU(INTEL_FAM6_BROADWELL_XEON_D, core_params), 1379 1378 {} 1380 1379 }; 1381 1380
+36 -35
drivers/idle/intel_idle.c
··· 62 62 #include <linux/cpu.h> 63 63 #include <linux/module.h> 64 64 #include <asm/cpu_device_id.h> 65 + #include <asm/intel-family.h> 65 66 #include <asm/mwait.h> 66 67 #include <asm/msr.h> 67 68 ··· 1021 1020 { X86_VENDOR_INTEL, 6, model, X86_FEATURE_MWAIT, (unsigned long)&cpu } 1022 1021 1023 1022 static const struct x86_cpu_id intel_idle_ids[] __initconst = { 1024 - ICPU(0x1a, idle_cpu_nehalem), 1025 - ICPU(0x1e, idle_cpu_nehalem), 1026 - ICPU(0x1f, idle_cpu_nehalem), 1027 - ICPU(0x25, idle_cpu_nehalem), 1028 - ICPU(0x2c, idle_cpu_nehalem), 1029 - ICPU(0x2e, idle_cpu_nehalem), 1030 - ICPU(0x1c, idle_cpu_atom), 1031 - ICPU(0x26, idle_cpu_lincroft), 1032 - ICPU(0x2f, idle_cpu_nehalem), 1033 - ICPU(0x2a, idle_cpu_snb), 1034 - ICPU(0x2d, idle_cpu_snb), 1035 - ICPU(0x36, idle_cpu_atom), 1036 - ICPU(0x37, idle_cpu_byt), 1037 - ICPU(0x4c, idle_cpu_cht), 1038 - ICPU(0x3a, idle_cpu_ivb), 1039 - ICPU(0x3e, idle_cpu_ivt), 1040 - ICPU(0x3c, idle_cpu_hsw), 1041 - ICPU(0x3f, idle_cpu_hsw), 1042 - ICPU(0x45, idle_cpu_hsw), 1043 - ICPU(0x46, idle_cpu_hsw), 1044 - ICPU(0x4d, idle_cpu_avn), 1045 - ICPU(0x3d, idle_cpu_bdw), 1046 - ICPU(0x47, idle_cpu_bdw), 1047 - ICPU(0x4f, idle_cpu_bdw), 1048 - ICPU(0x56, idle_cpu_bdw), 1049 - ICPU(0x4e, idle_cpu_skl), 1050 - ICPU(0x5e, idle_cpu_skl), 1051 - ICPU(0x8e, idle_cpu_skl), 1052 - ICPU(0x9e, idle_cpu_skl), 1053 - ICPU(0x55, idle_cpu_skx), 1054 - ICPU(0x57, idle_cpu_knl), 1055 - ICPU(0x5c, idle_cpu_bxt), 1023 + ICPU(INTEL_FAM6_NEHALEM_EP, idle_cpu_nehalem), 1024 + ICPU(INTEL_FAM6_NEHALEM, idle_cpu_nehalem), 1025 + ICPU(INTEL_FAM6_WESTMERE2, idle_cpu_nehalem), 1026 + ICPU(INTEL_FAM6_WESTMERE, idle_cpu_nehalem), 1027 + ICPU(INTEL_FAM6_WESTMERE_EP, idle_cpu_nehalem), 1028 + ICPU(INTEL_FAM6_NEHALEM_EX, idle_cpu_nehalem), 1029 + ICPU(INTEL_FAM6_ATOM_PINEVIEW, idle_cpu_atom), 1030 + ICPU(INTEL_FAM6_ATOM_LINCROFT, idle_cpu_lincroft), 1031 + ICPU(INTEL_FAM6_WESTMERE_EX, idle_cpu_nehalem), 1032 + ICPU(INTEL_FAM6_SANDYBRIDGE, idle_cpu_snb), 1033 + ICPU(INTEL_FAM6_SANDYBRIDGE_X, idle_cpu_snb), 1034 + ICPU(INTEL_FAM6_ATOM_CEDARVIEW, idle_cpu_atom), 1035 + ICPU(INTEL_FAM6_ATOM_SILVERMONT1, idle_cpu_byt), 1036 + ICPU(INTEL_FAM6_ATOM_AIRMONT, idle_cpu_cht), 1037 + ICPU(INTEL_FAM6_IVYBRIDGE, idle_cpu_ivb), 1038 + ICPU(INTEL_FAM6_IVYBRIDGE_X, idle_cpu_ivt), 1039 + ICPU(INTEL_FAM6_HASWELL_CORE, idle_cpu_hsw), 1040 + ICPU(INTEL_FAM6_HASWELL_X, idle_cpu_hsw), 1041 + ICPU(INTEL_FAM6_HASWELL_ULT, idle_cpu_hsw), 1042 + ICPU(INTEL_FAM6_HASWELL_GT3E, idle_cpu_hsw), 1043 + ICPU(INTEL_FAM6_ATOM_SILVERMONT2, idle_cpu_avn), 1044 + ICPU(INTEL_FAM6_BROADWELL_CORE, idle_cpu_bdw), 1045 + ICPU(INTEL_FAM6_BROADWELL_GT3E, idle_cpu_bdw), 1046 + ICPU(INTEL_FAM6_BROADWELL_X, idle_cpu_bdw), 1047 + ICPU(INTEL_FAM6_BROADWELL_XEON_D, idle_cpu_bdw), 1048 + ICPU(INTEL_FAM6_SKYLAKE_MOBILE, idle_cpu_skl), 1049 + ICPU(INTEL_FAM6_SKYLAKE_DESKTOP, idle_cpu_skl), 1050 + ICPU(INTEL_FAM6_KABYLAKE_MOBILE, idle_cpu_skl), 1051 + ICPU(INTEL_FAM6_KABYLAKE_DESKTOP, idle_cpu_skl), 1052 + ICPU(INTEL_FAM6_SKYLAKE_X, idle_cpu_skx), 1053 + ICPU(INTEL_FAM6_XEON_PHI_KNL, idle_cpu_knl), 1054 + ICPU(INTEL_FAM6_ATOM_GOLDMONT, idle_cpu_bxt), 1056 1055 {} 1057 1056 }; 1058 1057 MODULE_DEVICE_TABLE(x86cpu, intel_idle_ids); ··· 1262 1261 { 1263 1262 switch (boot_cpu_data.x86_model) { 1264 1263 1265 - case 0x3e: /* IVT */ 1264 + case INTEL_FAM6_IVYBRIDGE_X: 1266 1265 ivt_idle_state_table_update(); 1267 1266 break; 1268 - case 0x5c: /* BXT */ 1267 + case INTEL_FAM6_ATOM_GOLDMONT: 1269 1268 bxt_idle_state_table_update(); 1270 1269 break; 1271 - case 0x5e: /* SKL-H */ 1270 + case INTEL_FAM6_SKYLAKE_DESKTOP: 1272 1271 sklh_idle_state_table_update(); 1273 1272 break; 1274 1273 }
+2 -1
drivers/mmc/host/sdhci-acpi.c
··· 43 43 44 44 #ifdef CONFIG_X86 45 45 #include <asm/cpu_device_id.h> 46 + #include <asm/intel-family.h> 46 47 #include <asm/iosf_mbi.h> 47 48 #endif 48 49 ··· 127 126 static bool sdhci_acpi_byt(void) 128 127 { 129 128 static const struct x86_cpu_id byt[] = { 130 - { X86_VENDOR_INTEL, 6, 0x37 }, 129 + { X86_VENDOR_INTEL, 6, INTEL_FAM6_ATOM_SILVERMONT1 }, 131 130 {} 132 131 }; 133 132
+2 -1
drivers/platform/x86/intel_telemetry_debugfs.c
··· 32 32 #include <linux/suspend.h> 33 33 34 34 #include <asm/cpu_device_id.h> 35 + #include <asm/intel-family.h> 35 36 #include <asm/intel_pmc_ipc.h> 36 37 #include <asm/intel_punit_ipc.h> 37 38 #include <asm/intel_telemetry.h> ··· 332 331 }; 333 332 334 333 static const struct x86_cpu_id telemetry_debugfs_cpu_ids[] = { 335 - TELEM_DEBUGFS_CPU(0x5c, telem_apl_debugfs_conf), 334 + TELEM_DEBUGFS_CPU(INTEL_FAM6_ATOM_GOLDMONT, telem_apl_debugfs_conf), 336 335 {} 337 336 }; 338 337
+2 -1
drivers/platform/x86/intel_telemetry_pltdrv.c
··· 28 28 #include <linux/platform_device.h> 29 29 30 30 #include <asm/cpu_device_id.h> 31 + #include <asm/intel-family.h> 31 32 #include <asm/intel_pmc_ipc.h> 32 33 #include <asm/intel_punit_ipc.h> 33 34 #include <asm/intel_telemetry.h> ··· 164 163 }; 165 164 166 165 static const struct x86_cpu_id telemetry_cpu_ids[] = { 167 - TELEM_CPU(0x5c, telem_apl_config), 166 + TELEM_CPU(INTEL_FAM6_ATOM_GOLDMONT, telem_apl_config), 168 167 {} 169 168 }; 170 169
+29 -21
drivers/powercap/intel_rapl.c
··· 33 33 34 34 #include <asm/processor.h> 35 35 #include <asm/cpu_device_id.h> 36 + #include <asm/intel-family.h> 36 37 37 38 /* Local defines */ 38 39 #define MSR_PLATFORM_POWER_LIMIT 0x0000065C ··· 1097 1096 } 1098 1097 1099 1098 static const struct x86_cpu_id rapl_ids[] __initconst = { 1100 - RAPL_CPU(0x2a, rapl_defaults_core),/* Sandy Bridge */ 1101 - RAPL_CPU(0x2d, rapl_defaults_core),/* Sandy Bridge EP */ 1102 - RAPL_CPU(0x37, rapl_defaults_byt),/* Valleyview */ 1103 - RAPL_CPU(0x3a, rapl_defaults_core),/* Ivy Bridge */ 1104 - RAPL_CPU(0x3c, rapl_defaults_core),/* Haswell */ 1105 - RAPL_CPU(0x3d, rapl_defaults_core),/* Broadwell */ 1106 - RAPL_CPU(0x3f, rapl_defaults_hsw_server),/* Haswell servers */ 1107 - RAPL_CPU(0x4f, rapl_defaults_hsw_server),/* Broadwell servers */ 1108 - RAPL_CPU(0x45, rapl_defaults_core),/* Haswell ULT */ 1109 - RAPL_CPU(0x46, rapl_defaults_core),/* Haswell */ 1110 - RAPL_CPU(0x47, rapl_defaults_core),/* Broadwell-H */ 1111 - RAPL_CPU(0x4E, rapl_defaults_core),/* Skylake */ 1112 - RAPL_CPU(0x4C, rapl_defaults_cht),/* Braswell/Cherryview */ 1113 - RAPL_CPU(0x4A, rapl_defaults_tng),/* Tangier */ 1114 - RAPL_CPU(0x56, rapl_defaults_core),/* Future Xeon */ 1115 - RAPL_CPU(0x5A, rapl_defaults_ann),/* Annidale */ 1116 - RAPL_CPU(0X5C, rapl_defaults_core),/* Broxton */ 1117 - RAPL_CPU(0x5E, rapl_defaults_core),/* Skylake-H/S */ 1118 - RAPL_CPU(0x57, rapl_defaults_hsw_server),/* Knights Landing */ 1119 - RAPL_CPU(0x8E, rapl_defaults_core),/* Kabylake */ 1120 - RAPL_CPU(0x9E, rapl_defaults_core),/* Kabylake */ 1099 + RAPL_CPU(INTEL_FAM6_SANDYBRIDGE, rapl_defaults_core), 1100 + RAPL_CPU(INTEL_FAM6_SANDYBRIDGE_X, rapl_defaults_core), 1101 + 1102 + RAPL_CPU(INTEL_FAM6_IVYBRIDGE, rapl_defaults_core), 1103 + 1104 + RAPL_CPU(INTEL_FAM6_HASWELL_CORE, rapl_defaults_core), 1105 + RAPL_CPU(INTEL_FAM6_HASWELL_ULT, rapl_defaults_core), 1106 + RAPL_CPU(INTEL_FAM6_HASWELL_GT3E, rapl_defaults_core), 1107 + RAPL_CPU(INTEL_FAM6_HASWELL_X, rapl_defaults_hsw_server), 1108 + 1109 + RAPL_CPU(INTEL_FAM6_BROADWELL_CORE, rapl_defaults_core), 1110 + RAPL_CPU(INTEL_FAM6_BROADWELL_GT3E, rapl_defaults_core), 1111 + RAPL_CPU(INTEL_FAM6_BROADWELL_XEON_D, rapl_defaults_core), 1112 + RAPL_CPU(INTEL_FAM6_BROADWELL_X, rapl_defaults_hsw_server), 1113 + 1114 + RAPL_CPU(INTEL_FAM6_SKYLAKE_DESKTOP, rapl_defaults_core), 1115 + RAPL_CPU(INTEL_FAM6_SKYLAKE_MOBILE, rapl_defaults_core), 1116 + RAPL_CPU(INTEL_FAM6_SKYLAKE_X, rapl_defaults_hsw_server), 1117 + RAPL_CPU(INTEL_FAM6_KABYLAKE_MOBILE, rapl_defaults_core), 1118 + RAPL_CPU(INTEL_FAM6_KABYLAKE_DESKTOP, rapl_defaults_core), 1119 + 1120 + RAPL_CPU(INTEL_FAM6_ATOM_SILVERMONT1, rapl_defaults_byt), 1121 + RAPL_CPU(INTEL_FAM6_ATOM_AIRMONT, rapl_defaults_cht), 1122 + RAPL_CPU(INTEL_FAM6_ATOM_MERRIFIELD1, rapl_defaults_tng), 1123 + RAPL_CPU(INTEL_FAM6_ATOM_MERRIFIELD2, rapl_defaults_ann), 1124 + RAPL_CPU(INTEL_FAM6_ATOM_GOLDMONT, rapl_defaults_core), 1125 + 1126 + RAPL_CPU(INTEL_FAM6_XEON_PHI_KNL, rapl_defaults_hsw_server), 1121 1127 {} 1122 1128 }; 1123 1129 MODULE_DEVICE_TABLE(x86cpu, rapl_ids);
+3 -1
drivers/thermal/intel_soc_dts_thermal.c
··· 18 18 #include <linux/module.h> 19 19 #include <linux/interrupt.h> 20 20 #include <asm/cpu_device_id.h> 21 + #include <asm/intel-family.h> 21 22 #include "intel_soc_dts_iosf.h" 22 23 23 24 #define CRITICAL_OFFSET_FROM_TJ_MAX 5000 ··· 43 42 } 44 43 45 44 static const struct x86_cpu_id soc_thermal_ids[] = { 46 - { X86_VENDOR_INTEL, X86_FAMILY_ANY, 0x37, 0, BYT_SOC_DTS_APIC_IRQ}, 45 + { X86_VENDOR_INTEL, 6, INTEL_FAM6_ATOM_SILVERMONT1, 0, 46 + BYT_SOC_DTS_APIC_IRQ}, 47 47 {} 48 48 }; 49 49 MODULE_DEVICE_TABLE(x86cpu, soc_thermal_ids);