|
@@ -340,6 +340,13 @@ static void amd_fixup_frequency(struct acpi_processor_px *px, int i)
|
|
if ((boot_cpu_data.x86 == 0x10 && boot_cpu_data.x86_model < 10)
|
|
if ((boot_cpu_data.x86 == 0x10 && boot_cpu_data.x86_model < 10)
|
|
|| boot_cpu_data.x86 == 0x11) {
|
|
|| boot_cpu_data.x86 == 0x11) {
|
|
rdmsr(MSR_AMD_PSTATE_DEF_BASE + index, lo, hi);
|
|
rdmsr(MSR_AMD_PSTATE_DEF_BASE + index, lo, hi);
|
|
|
|
+ /*
|
|
|
|
+ * MSR C001_0064+:
|
|
|
|
+ * Bit 63: PstateEn. Read-write. If set, the P-state is valid.
|
|
|
|
+ */
|
|
|
|
+ if (!(hi & BIT(31)))
|
|
|
|
+ return;
|
|
|
|
+
|
|
fid = lo & 0x3f;
|
|
fid = lo & 0x3f;
|
|
did = (lo >> 6) & 7;
|
|
did = (lo >> 6) & 7;
|
|
if (boot_cpu_data.x86 == 0x10)
|
|
if (boot_cpu_data.x86 == 0x10)
|