diff options
Diffstat (limited to 'drivers/acpi/processor_perflib.c')
| -rw-r--r-- | drivers/acpi/processor_perflib.c | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/acpi/processor_perflib.c b/drivers/acpi/processor_perflib.c index 836bfe06904..53e7ac9403a 100644 --- a/drivers/acpi/processor_perflib.c +++ b/drivers/acpi/processor_perflib.c @@ -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)  	    || boot_cpu_data.x86 == 0x11) {  		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;  		did = (lo >> 6) & 7;  		if (boot_cpu_data.x86 == 0x10)  |