Fix cpu MHz reporting for AMD family 0x11 when powernow-k8 is
disabled.
Just adhere to the CONSTANT_TSC feature bit for AMD CPUs when deciding
whether cpu_khz needs calibration. The additional check for CPU family
is not needed and prevents calibration for future CPUs.
Signed-off-by: Andreas Herrmann <[email protected]>
---
diff --git a/arch/x86/kernel/time_64.c b/arch/x86/kernel/time_64.c
index 61b17f5..0380795 100644
--- a/arch/x86/kernel/time_64.c
+++ b/arch/x86/kernel/time_64.c
@@ -120,8 +120,7 @@ void __init time_init(void)
cpu_khz = tsc_khz;
if (cpu_has(&boot_cpu_data, X86_FEATURE_CONSTANT_TSC) &&
- boot_cpu_data.x86_vendor == X86_VENDOR_AMD &&
- boot_cpu_data.x86 == 16)
+ (boot_cpu_data.x86_vendor == X86_VENDOR_AMD))
cpu_khz = calculate_cpu_khz();
if (unsynchronized_tsc())
* Andreas Herrmann3 <[email protected]> wrote:
> Fix cpu MHz reporting for AMD family 0x11 when powernow-k8 is
> disabled.
>
> Just adhere to the CONSTANT_TSC feature bit for AMD CPUs when deciding
> whether cpu_khz needs calibration. The additional check for CPU family
> is not needed and prevents calibration for future CPUs.
> cpu_khz = tsc_khz;
> if (cpu_has(&boot_cpu_data, X86_FEATURE_CONSTANT_TSC) &&
> - boot_cpu_data.x86_vendor == X86_VENDOR_AMD &&
> - boot_cpu_data.x86 == 16)
> + (boot_cpu_data.x86_vendor == X86_VENDOR_AMD))
> cpu_khz = calculate_cpu_khz();
thanks Andreas, applied!
Ingo