[AMD Official Use Only - AMD Internal Distribution Only]

The term "invalid" in the dmesg log may cause ambiguity for customers.
The software-defined performance levels shall be properly handled by all pm 
swsmu/powerplay backends.
In addition, the kgd interface should provide a consistent set of APIs to 
ensure that user-space programs (e.g., amd-smi) can invoke these interfaces 
without issues.

Best Regards,
Kevin

-----Original Message-----
From: Lazar, Lijo <[email protected]>
Sent: Wednesday, February 4, 2026 11:52 AM
To: Wang, Yang(Kevin) <[email protected]>; [email protected]
Cc: Deucher, Alexander <[email protected]>; Zhang, Hawking 
<[email protected]>; Feng, Kenneth <[email protected]>
Subject: Re: [PATCH] drm/amd/pm: fix missing handle PERF_DETERMINISM level in 
smu13 & 14 & 15



On 04-Feb-26 9:17 AM, Yang Wang wrote:
> add missing performance level AMD_DPM_FORCED_LEVEL_PERF_DETERMINISM in 
> smu13,14,15.
>
> kernel dmesg log:
> [1217924.810528] amdgpu 0000:44:00.0: amdgpu: Invalid performance
> level 512 [1217924.810537] amdgpu 0000:44:00.0: amdgpu: Failed to set
> performance level 512
>
> Fixes: 6be6424684cb ("drm/amd/pm: Enable performance determinism on
> aldebaran")
>

Determinism level is only available for specific SOCs, so the the error message 
is still valid.

Thanks,
Lijo

> Signed-off-by: Yang Wang <[email protected]>
> ---
>   drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c | 1 +
>   drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c | 1 +
>   drivers/gpu/drm/amd/pm/swsmu/smu15/smu_v15_0.c | 1 +
>   3 files changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> index 63a65ea802fd..d17d6cd71028 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> @@ -1659,6 +1659,7 @@ int smu_v13_0_set_performance_level(struct smu_context 
> *smu,
>               break;
>       case AMD_DPM_FORCED_LEVEL_MANUAL:
>       case AMD_DPM_FORCED_LEVEL_PROFILE_EXIT:
> +     case AMD_DPM_FORCED_LEVEL_PERF_DETERMINISM:
>               return 0;
>       default:
>               dev_err(adev->dev, "Invalid performance level %d\n", level); 
> diff
> --git a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c
> index 7dc6687c3693..68ecba0d5e0b 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c
> @@ -1321,6 +1321,7 @@ int smu_v14_0_set_performance_level(struct smu_context 
> *smu,
>               break;
>       case AMD_DPM_FORCED_LEVEL_MANUAL:
>       case AMD_DPM_FORCED_LEVEL_PROFILE_EXIT:
> +     case AMD_DPM_FORCED_LEVEL_PERF_DETERMINISM:
>               return 0;
>       default:
>               dev_err(adev->dev, "Invalid performance level %d\n", level); 
> diff
> --git a/drivers/gpu/drm/amd/pm/swsmu/smu15/smu_v15_0.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu15/smu_v15_0.c
> index a2854d528bab..1860bd0f1091 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu15/smu_v15_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu15/smu_v15_0.c
> @@ -1210,6 +1210,7 @@ int smu_v15_0_set_performance_level(struct smu_context 
> *smu,
>               break;
>       case AMD_DPM_FORCED_LEVEL_MANUAL:
>       case AMD_DPM_FORCED_LEVEL_PROFILE_EXIT:
> +     case AMD_DPM_FORCED_LEVEL_PERF_DETERMINISM:
>               return 0;
>       default:
>               dev_err(adev->dev, "Invalid performance level %d\n", level);

Reply via email to