From: srinivas pandruvada <srinivas.pandruvada@linux.intel.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>, linux-pm@vger.kernel.org
Cc: Doug Smythies <dsmythies@telus.net>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] cpufreq: intel_pstate: Avoid using DESIRED_PERF when DEC is enabled
Date: Tue, 04 Aug 2026 10:58:57 -0700 [thread overview]
Message-ID: <98deef347e027ad29431973f6c4e68772effce00.camel@linux.intel.com> (raw)
In-Reply-To: <5091298.GXAFRqVoOG@rafael.j.wysocki>
On Mon, 2026-08-03 at 20:15 +0200, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> In principle, the desired performance level can be set in
> MSR_HWP_REQUEST
> to indicate to the processor what performance level the OS would like
> the given CPU to run at, but if the Dynamic Efficiency Control (DEC)
> feature is enabled in the processor, doing so may result in confusing
> the processor firmware. It is then better to let the processor
> firmware
> figure out the most suitable performance level by itself.
>
> Accordingly, make intel_pstate always set the desired performance
> level
> to zero (which means "no preference") when running on a platform with
> DEC enabled.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> ---
>
> Applies on top of linux-next.
>
> ---
> drivers/cpufreq/intel_pstate.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> --- a/drivers/cpufreq/intel_pstate.c
> +++ b/drivers/cpufreq/intel_pstate.c
> @@ -303,6 +303,7 @@ static bool per_cpu_limits __ro_after_in
> static bool hwp_forced __ro_after_init;
> static bool hwp_boost __read_mostly;
> static bool hwp_is_hybrid;
> +static u32 hwp_desired_mask __read_mostly = ~0U;
>
> static struct cpufreq_driver *intel_pstate_driver __read_mostly;
>
> @@ -3150,7 +3151,7 @@ static void intel_cpufreq_hwp_update(str
> value |= HWP_MAX_PERF(max);
>
> value &= ~HWP_DESIRED_PERF(~0L);
> - value |= HWP_DESIRED_PERF(desired);
> + value |= HWP_DESIRED_PERF(desired & hwp_desired_mask);
>
> if (value == prev)
> return;
> @@ -3787,6 +3788,7 @@ static int __init intel_pstate_init(void
> id = x86_match_cpu(hwp_support_ids);
> if (id) {
> bool epp_present = hwp_check_epp();
> + bool dec_present = hwp_check_dec();
>
> /*
> * If HWP is enabled already, there is no choice but
> to deal
> @@ -3798,7 +3800,7 @@ static int __init intel_pstate_init(void
> no_hwp = 0;
> } else if (no_load) {
> return -ENODEV;
> - } else if (!epp_present && !hwp_check_dec()) {
> + } else if (!epp_present && !dec_present) {
> /*
> * Avoid enabling HWP for processors without
> EPP support
> * unless the Dynamic Efficiency Control
> (DEC) enable
> @@ -3820,6 +3822,9 @@ static int __init intel_pstate_init(void
> if (!default_driver)
> default_driver = &intel_pstate;
>
> + if (dec_present)
> + hwp_desired_mask = 0;
> +
> if (!id->driver_data)
> pstate_funcs.get_cpu_scaling =
> hwp_get_cpu_scaling;
>
>
>
prev parent reply other threads:[~2026-08-04 17:58 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-29 8:59 [PATCH] cpufreq: intel_pstate: Sync policy->cur to the pinned pstate Jing Wu
2026-07-29 18:40 ` [PATCH v1] cpufreq: intel_pstate: Adjust policy->cur in active mode to policy Rafael J. Wysocki
2026-07-29 23:29 ` Doug Smythies
2026-07-30 15:01 ` Doug Smythies
2026-07-31 17:05 ` Rafael J. Wysocki (Intel)
2026-07-31 17:20 ` srinivas pandruvada
2026-08-03 18:15 ` [PATCH v1] cpufreq: intel_pstate: Avoid using DESIRED_PERF when DEC is enabled Rafael J. Wysocki
2026-08-04 17:58 ` srinivas pandruvada [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=98deef347e027ad29431973f6c4e68772effce00.camel@linux.intel.com \
--to=srinivas.pandruvada@linux.intel.com \
--cc=dsmythies@telus.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rafael@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.