public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] cpufreq/amd-pstate: Move max_perf limiting in amd_pstate_update
@ 2025-04-15  8:23 Dhananjay Ugwekar
  2025-04-15 20:46 ` Mario Limonciello
  0 siblings, 1 reply; 2+ messages in thread
From: Dhananjay Ugwekar @ 2025-04-15  8:23 UTC (permalink / raw)
  To: gautham.shenoy, mario.limonciello
  Cc: linux-pm, linux-kernel, Dhananjay Ugwekar

Move up the max_perf limiting, so that we clamp the des_perf with the
updated max_perf.

Signed-off-by: Dhananjay Ugwekar <dhananjay.ugwekar@amd.com>
---
 drivers/cpufreq/amd-pstate.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
index c54c031939c8..c29840ba3b30 100644
--- a/drivers/cpufreq/amd-pstate.c
+++ b/drivers/cpufreq/amd-pstate.c
@@ -554,6 +554,10 @@ static void amd_pstate_update(struct amd_cpudata *cpudata, u8 min_perf,
 	if (!policy)
 		return;
 
+	/* limit the max perf when core performance boost feature is disabled */
+	if (!cpudata->boost_supported)
+		max_perf = min_t(u8, perf.nominal_perf, max_perf);
+
 	des_perf = clamp_t(u8, des_perf, min_perf, max_perf);
 
 	policy->cur = perf_to_freq(perf, cpudata->nominal_freq, des_perf);
@@ -563,10 +567,6 @@ static void amd_pstate_update(struct amd_cpudata *cpudata, u8 min_perf,
 		des_perf = 0;
 	}
 
-	/* limit the max perf when core performance boost feature is disabled */
-	if (!cpudata->boost_supported)
-		max_perf = min_t(u8, perf.nominal_perf, max_perf);
-
 	if (trace_amd_pstate_perf_enabled() && amd_pstate_sample(cpudata)) {
 		trace_amd_pstate_perf(min_perf, des_perf, max_perf, cpudata->freq,
 			cpudata->cur.mperf, cpudata->cur.aperf, cpudata->cur.tsc,
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] cpufreq/amd-pstate: Move max_perf limiting in amd_pstate_update
  2025-04-15  8:23 [PATCH] cpufreq/amd-pstate: Move max_perf limiting in amd_pstate_update Dhananjay Ugwekar
@ 2025-04-15 20:46 ` Mario Limonciello
  0 siblings, 0 replies; 2+ messages in thread
From: Mario Limonciello @ 2025-04-15 20:46 UTC (permalink / raw)
  To: Dhananjay Ugwekar, gautham.shenoy; +Cc: linux-pm, linux-kernel

On 4/15/2025 3:23 AM, Dhananjay Ugwekar wrote:
> Move up the max_perf limiting, so that we clamp the des_perf with the
> updated max_perf.
> 
> Signed-off-by: Dhananjay Ugwekar <dhananjay.ugwekar@amd.com>
Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
> ---
>   drivers/cpufreq/amd-pstate.c | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index c54c031939c8..c29840ba3b30 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -554,6 +554,10 @@ static void amd_pstate_update(struct amd_cpudata *cpudata, u8 min_perf,
>   	if (!policy)
>   		return;
>   
> +	/* limit the max perf when core performance boost feature is disabled */
> +	if (!cpudata->boost_supported)
> +		max_perf = min_t(u8, perf.nominal_perf, max_perf);
> +
>   	des_perf = clamp_t(u8, des_perf, min_perf, max_perf);
>   
>   	policy->cur = perf_to_freq(perf, cpudata->nominal_freq, des_perf);
> @@ -563,10 +567,6 @@ static void amd_pstate_update(struct amd_cpudata *cpudata, u8 min_perf,
>   		des_perf = 0;
>   	}
>   
> -	/* limit the max perf when core performance boost feature is disabled */
> -	if (!cpudata->boost_supported)
> -		max_perf = min_t(u8, perf.nominal_perf, max_perf);
> -
>   	if (trace_amd_pstate_perf_enabled() && amd_pstate_sample(cpudata)) {
>   		trace_amd_pstate_perf(min_perf, des_perf, max_perf, cpudata->freq,
>   			cpudata->cur.mperf, cpudata->cur.aperf, cpudata->cur.tsc,


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-04-15 20:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-15  8:23 [PATCH] cpufreq/amd-pstate: Move max_perf limiting in amd_pstate_update Dhananjay Ugwekar
2025-04-15 20:46 ` Mario Limonciello

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox