[tip: x86/urgent] x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC

2020-08-06 Thread tip-bot2 for Dilip Kota
The following commit has been merged into the x86/urgent branch of tip:

Commit-ID: 7d98585860d845e36ee612832a5ff021f201dbaf
Gitweb:
https://git.kernel.org/tip/7d98585860d845e36ee612832a5ff021f201dbaf
Author:Dilip Kota 
AuthorDate:Mon, 03 Aug 2020 15:56:36 +08:00
Committer: Ingo Molnar 
CommitterDate: Fri, 07 Aug 2020 01:32:00 +02:00

x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC

Frequency descriptor of Lightning Mountain SoC doesn't have all the
frequency entries so resulting in the below failure causing a kernel hang:

Error MSR_FSB_FREQ index 15 is unknown
tsc: Fast TSC calibration failed

So, add all the frequency entries in the Lightning Mountain SoC frequency
descriptor.

Fixes: 0cc5359d8fd45 ("x86/cpu: Update init data for new Airmont CPU model")
Fixes: 812c2d7506fd ("x86/tsc_msr: Use named struct initializers")
Signed-off-by: Dilip Kota 
Signed-off-by: Ingo Molnar 
Reviewed-by: Andy Shevchenko 
Link: 
https://lore.kernel.org/r/211c643ae217604b46cbec43a2c0423946dc7d2d.1596440057.git.eswara.k...@linux.intel.com
---
 arch/x86/kernel/tsc_msr.c |  9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/tsc_msr.c b/arch/x86/kernel/tsc_msr.c
index 4fec6f3..a654a9b 100644
--- a/arch/x86/kernel/tsc_msr.c
+++ b/arch/x86/kernel/tsc_msr.c
@@ -133,10 +133,15 @@ static const struct freq_desc freq_desc_ann = {
.mask = 0x0f,
 };
 
-/* 24 MHz crystal? : 24 * 13 / 4 = 78 MHz */
+/*
+ * 24 MHz crystal? : 24 * 13 / 4 = 78 MHz
+ * Frequency step for Lightning Mountain SoC is fixed to 78 MHz,
+ * so all the frequency entries are 78000.
+ */
 static const struct freq_desc freq_desc_lgm = {
.use_msr_plat = true,
-   .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 },
+   .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000,
+  78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 },
.mask = 0x0f,
 };
 


[tip: x86/urgent] x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC

2020-08-06 Thread tip-bot2 for Dilip Kota
The following commit has been merged into the x86/urgent branch of tip:

Commit-ID: 287bad1f2b30253443e61ff6d5597a76787f736a
Gitweb:
https://git.kernel.org/tip/287bad1f2b30253443e61ff6d5597a76787f736a
Author:Dilip Kota 
AuthorDate:Mon, 03 Aug 2020 15:56:36 +08:00
Committer: Ingo Molnar 
CommitterDate: Thu, 06 Aug 2020 15:27:31 +02:00

x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC

Frequency descriptor of Lightning Mountain SoC doesn't have all the
frequency entries so resulting in the below failure causing a kernel hang:

Error MSR_FSB_FREQ index 15 is unknown
tsc: Fast TSC calibration failed

So, add all the frequency entries in the Lightning Mountain SoC frequency
descriptor.

Fixes: 0cc5359d8fd45 ("x86/cpu: Update init data for new Airmont CPU model")
Fixes: 812c2d7506fd ("x86/tsc_msr: Use named struct initializers")
Signed-off-by: Dilip Kota 
Signed-off-by: Ingo Molnar 
Reviewed-by: Andy Shevchenko 
Link: 
https://lore.kernel.org/r/211c643ae217604b46cbec43a2c0423946dc7d2d.1596440057.git.eswara.k...@linux.intel.com
---
 arch/x86/kernel/tsc_msr.c |  9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/tsc_msr.c b/arch/x86/kernel/tsc_msr.c
index 4fec6f3..a654a9b 100644
--- a/arch/x86/kernel/tsc_msr.c
+++ b/arch/x86/kernel/tsc_msr.c
@@ -133,10 +133,15 @@ static const struct freq_desc freq_desc_ann = {
.mask = 0x0f,
 };
 
-/* 24 MHz crystal? : 24 * 13 / 4 = 78 MHz */
+/*
+ * 24 MHz crystal? : 24 * 13 / 4 = 78 MHz
+ * Frequency step for Lightning Mountain SoC is fixed to 78 MHz,
+ * so all the frequency entries are 78000.
+ */
 static const struct freq_desc freq_desc_lgm = {
.use_msr_plat = true,
-   .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 },
+   .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000,
+  78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 },
.mask = 0x0f,
 };