Commit 7d985858 authored by Dilip Kota's avatar Dilip Kota Committed by Ingo Molnar
Browse files

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: 0cc5359d ("x86/cpu: Update init data for new Airmont CPU model")
Fixes: 812c2d75 ("x86/tsc_msr: Use named struct initializers")
Signed-off-by: default avatarDilip Kota <eswara.kota@linux.intel.com>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Link: https://lore.kernel.org/r/211c643ae217604b46cbec43a2c0423946dc7d2d.1596440057.git.eswara.kota@linux.intel.com
parent 475f63ae
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -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,
};