Re: [PATCH v2 1/1] acpi-cpufreq: Honor _PSD table setting in CPU frequency control
On Mon, Oct 19, 2020 at 5:57 AM Wei Huang wrote: > > acpi-cpufreq has a old quirk that overrides the _PSD table supplied by > BIOS on AMD CPUs. However the _PSD table of new AMD CPUs (Family 19h+) > now accurately reports the P-state dependency of CPU cores. Hence this > quirk needs to be fixed in order to support new CPUs' frequency control. > > Fixes: acd316248205 ("acpi-cpufreq: Add quirk to disable _PSD usage on all > AMD CPUs") > Signed-off-by: Wei Huang > --- > drivers/cpufreq/acpi-cpufreq.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c > index e4ff681f..1e4fbb002a31 100644 > --- a/drivers/cpufreq/acpi-cpufreq.c > +++ b/drivers/cpufreq/acpi-cpufreq.c > @@ -691,7 +691,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy > *policy) > cpumask_copy(policy->cpus, topology_core_cpumask(cpu)); > } > > - if (check_amd_hwpstate_cpu(cpu) && !acpi_pstate_strict) { > + if (check_amd_hwpstate_cpu(cpu) && boot_cpu_data.x86 < 0x19 && > + !acpi_pstate_strict) { > cpumask_clear(policy->cpus); > cpumask_set_cpu(cpu, policy->cpus); > cpumask_copy(data->freqdomain_cpus, > -- Applied as 5.10-rc material under edited subject, thanks!
[PATCH v2 1/1] acpi-cpufreq: Honor _PSD table setting in CPU frequency control
acpi-cpufreq has a old quirk that overrides the _PSD table supplied by BIOS on AMD CPUs. However the _PSD table of new AMD CPUs (Family 19h+) now accurately reports the P-state dependency of CPU cores. Hence this quirk needs to be fixed in order to support new CPUs' frequency control. Fixes: acd316248205 ("acpi-cpufreq: Add quirk to disable _PSD usage on all AMD CPUs") Signed-off-by: Wei Huang --- drivers/cpufreq/acpi-cpufreq.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c index e4ff681f..1e4fbb002a31 100644 --- a/drivers/cpufreq/acpi-cpufreq.c +++ b/drivers/cpufreq/acpi-cpufreq.c @@ -691,7 +691,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy) cpumask_copy(policy->cpus, topology_core_cpumask(cpu)); } - if (check_amd_hwpstate_cpu(cpu) && !acpi_pstate_strict) { + if (check_amd_hwpstate_cpu(cpu) && boot_cpu_data.x86 < 0x19 && + !acpi_pstate_strict) { cpumask_clear(policy->cpus); cpumask_set_cpu(cpu, policy->cpus); cpumask_copy(data->freqdomain_cpus, -- 2.24.1