2024-06-14 19:33:18

by Mario Limonciello

[permalink] [raw]
Subject: [PATCH] ACPI: Only evaluate the Intel _OSC and _PDC on platforms with HWP

The UUID 4077A616-290C-47BE-9EBD-D87058713953 and _PDC methods are
only used on Intel platforms with HWP support.

Attempting to evaluate them and showing messages on hardware without
HWP is pointless needlessly noisy.

Gate the code on X86_FEATURE_HWP.

Cc: PradeepVineshReddy (Pradeep Vinesh Reddy) Kodamati <[email protected]>
Suggested-by: CL Lin <[email protected]>
Signed-off-by: Mario Limonciello <[email protected]>
---
drivers/acpi/acpi_processor.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/acpi/acpi_processor.c b/drivers/acpi/acpi_processor.c
index 7a0dd35d62c9..84848b5e65d6 100644
--- a/drivers/acpi/acpi_processor.c
+++ b/drivers/acpi/acpi_processor.c
@@ -597,6 +597,8 @@ static bool __init acpi_early_processor_osc(void)

void __init acpi_early_processor_control_setup(void)
{
+ if (!boot_cpu_has(X86_FEATURE_HWP))
+ return;
if (acpi_early_processor_osc()) {
pr_info("_OSC evaluated successfully for all CPUs\n");
} else {
--
2.43.0



2024-06-15 10:38:24

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH] ACPI: Only evaluate the Intel _OSC and _PDC on platforms with HWP

On Fri, Jun 14, 2024 at 9:33 PM Mario Limonciello
<[email protected]> wrote:
>
> The UUID 4077A616-290C-47BE-9EBD-D87058713953 and _PDC methods are
> only used on Intel platforms with HWP support.

I beg to differ. See arch_acpi_set_proc_cap_bits() definition.

> Attempting to evaluate them and showing messages on hardware without
> HWP is pointless needlessly noisy.
>
> Gate the code on X86_FEATURE_HWP.

Not really.

> Cc: PradeepVineshReddy (Pradeep Vinesh Reddy) Kodamati <[email protected]>
> Suggested-by: CL Lin <[email protected]>
> Signed-off-by: Mario Limonciello <[email protected]>
> ---
> drivers/acpi/acpi_processor.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/acpi/acpi_processor.c b/drivers/acpi/acpi_processor.c
> index 7a0dd35d62c9..84848b5e65d6 100644
> --- a/drivers/acpi/acpi_processor.c
> +++ b/drivers/acpi/acpi_processor.c
> @@ -597,6 +597,8 @@ static bool __init acpi_early_processor_osc(void)
>
> void __init acpi_early_processor_control_setup(void)
> {
> + if (!boot_cpu_has(X86_FEATURE_HWP))
> + return;
> if (acpi_early_processor_osc()) {
> pr_info("_OSC evaluated successfully for all CPUs\n");
> } else {
> --
> 2.43.0
>