diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c index cacff90ecbd875864620dc34287a2d8d55611c03..44e2c125b3ee7fcf0fb7162a2c2283f435ab9859 100644 --- a/arch/arm64/kernel/cpuinfo.c +++ b/arch/arm64/kernel/cpuinfo.c @@ -240,7 +240,9 @@ static int c_show(struct seq_file *m, void *v) id_aa64mmfr0_pa_range_bits(cpuinfo->reg_id_aa64mmfr0), id_aa64mmfr2_va_range_bits(cpuinfo->reg_id_aa64mmfr2)); - freq = arch_cpufreq_get_khz(cpu); + /*Do not retrieve CPU frequency in the Ampere CPU environment.*/ + if (MIDR_IMPLEMENTOR(midr) != ARM_CPU_IMP_AMPERE) + freq = arch_cpufreq_get_khz(cpu); if (freq) seq_printf(m, "CPU MHz\t\t: %u.%03u\n", freq / 1000, freq % 1000); seq_puts(m, "\n");