2024-01-31 08:57:13

by Yuan, Perry

[permalink] [raw]
Subject: [PATCH 1/6] ACPI: CPPC: enable AMD CPPC V2 support for family 17h processors

As there are some AMD processors which only support CPPC V2 firmware and
BIOS implementation, the amd_pstate driver will be failed to load when
system booting with below kernel warning message:

[ 0.477523] amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled

To make the amd_pstate driver can be loaded on those TR40 processors, it
needs to match x86_model from 0x30 to 0x7F for family 17H.
With the change, the system can load amd_pstate driver as expected.

Reported-by: Gino Badouri <[email protected]>
Issue: https://bugzilla.kernel.org/show_bug.cgi?id=218171
Fixes: fbd74d1689 ("ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory")
Signed-off-by: Perry Yuan <[email protected]>
---
arch/x86/kernel/acpi/cppc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/kernel/acpi/cppc.c b/arch/x86/kernel/acpi/cppc.c
index 8d8752b44f11..ff8f25faca3d 100644
--- a/arch/x86/kernel/acpi/cppc.c
+++ b/arch/x86/kernel/acpi/cppc.c
@@ -20,7 +20,7 @@ bool cpc_supported_by_cpu(void)
(boot_cpu_data.x86_model >= 0x20 && boot_cpu_data.x86_model <= 0x2f)))
return true;
else if (boot_cpu_data.x86 == 0x17 &&
- boot_cpu_data.x86_model >= 0x70 && boot_cpu_data.x86_model <= 0x7f)
+ boot_cpu_data.x86_model >= 0x30 && boot_cpu_data.x86_model <= 0x7f)
return true;
return boot_cpu_has(X86_FEATURE_CPPC);
}
--
2.34.1



2024-01-31 21:47:22

by Mario Limonciello

[permalink] [raw]
Subject: Re: [PATCH 1/6] ACPI: CPPC: enable AMD CPPC V2 support for family 17h processors

On 1/31/2024 02:50, Perry Yuan wrote:
> As there are some AMD processors which only support CPPC V2 firmware and
> BIOS implementation, the amd_pstate driver will be failed to load when
> system booting with below kernel warning message:
>
> [ 0.477523] amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled
>
> To make the amd_pstate driver can be loaded on those TR40 processors, it
> needs to match x86_model from 0x30 to 0x7F for family 17H.
> With the change, the system can load amd_pstate driver as expected.
>
> Reported-by: Gino Badouri <[email protected]>
> Issue: https://bugzilla.kernel.org/show_bug.cgi?id=218171
s/Issue/Closes/
> Fixes: fbd74d1689 ("ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory")
> Signed-off-by: Perry Yuan <[email protected]>

One minor change above.

Reviewed-by: Mario Limonciello <[email protected]>

> ---
> arch/x86/kernel/acpi/cppc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/kernel/acpi/cppc.c b/arch/x86/kernel/acpi/cppc.c
> index 8d8752b44f11..ff8f25faca3d 100644
> --- a/arch/x86/kernel/acpi/cppc.c
> +++ b/arch/x86/kernel/acpi/cppc.c
> @@ -20,7 +20,7 @@ bool cpc_supported_by_cpu(void)
> (boot_cpu_data.x86_model >= 0x20 && boot_cpu_data.x86_model <= 0x2f)))
> return true;
> else if (boot_cpu_data.x86 == 0x17 &&
> - boot_cpu_data.x86_model >= 0x70 && boot_cpu_data.x86_model <= 0x7f)
> + boot_cpu_data.x86_model >= 0x30 && boot_cpu_data.x86_model <= 0x7f)
> return true;
> return boot_cpu_has(X86_FEATURE_CPPC);
> }