aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPrarit Bhargava <prarit@redhat.com>2016-09-19 08:51:41 -0400
committerThomas Gleixner <tglx@linutronix.de>2016-09-19 19:00:32 -0400
commit6baf3d61821f5b38f27b4e9f044ad4d1e8f3d14f (patch)
tree9c54711c91b8c93fb10242a6637a4c3fb334730b
parent655e52d2b62458032fc67ff7daaa664af6f36fb5 (diff)
x86/tsc: Add additional Intel CPU models to the crystal quirk list
commit aa297292d708 ("x86/tsc: Enumerate SKL cpu_khz and tsc_khz via CPUID") added code to retrieve the crystal and TSC frequency from CPUID leaves. If the crystal freqency is enumerated as 0,the resulting TSC frequency is 0 as well. For CPUs with a known fixed crystal frequency a quirk list is available to set the frequency, Kabylake and SkylakeX CPUs are missing in the list of CPUs which need this quirk. Add them so the TSC frequency can be calculated correctly. [ tglx: Removed the silly default case as the switch() is only invoked when cpu_khz is 0. Massaged changelog. ] Signed-off-by: Prarit Bhargava <prarit@redhat.com> Cc: Len Brown <len.brown@intel.com> Cc: Rafael Aquini <aquini@redhat.com> Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org> Cc: Andy Lutomirski <luto@kernel.org> Link: http://lkml.kernel.org/r/1474289501-31717-3-git-send-email-prarit@redhat.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/kernel/tsc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
index 2344758ba8a3..46b2f41f8b05 100644
--- a/arch/x86/kernel/tsc.c
+++ b/arch/x86/kernel/tsc.c
@@ -689,8 +689,13 @@ unsigned long native_calibrate_tsc(void)
689 switch (boot_cpu_data.x86_model) { 689 switch (boot_cpu_data.x86_model) {
690 case INTEL_FAM6_SKYLAKE_MOBILE: 690 case INTEL_FAM6_SKYLAKE_MOBILE:
691 case INTEL_FAM6_SKYLAKE_DESKTOP: 691 case INTEL_FAM6_SKYLAKE_DESKTOP:
692 case INTEL_FAM6_KABYLAKE_MOBILE:
693 case INTEL_FAM6_KABYLAKE_DESKTOP:
692 crystal_khz = 24000; /* 24.0 MHz */ 694 crystal_khz = 24000; /* 24.0 MHz */
693 break; 695 break;
696 case INTEL_FAM6_SKYLAKE_X:
697 crystal_khz = 25000; /* 25.0 MHz */
698 break;
694 case INTEL_FAM6_ATOM_GOLDMONT: 699 case INTEL_FAM6_ATOM_GOLDMONT:
695 crystal_khz = 19200; /* 19.2 MHz */ 700 crystal_khz = 19200; /* 19.2 MHz */
696 break; 701 break;