cpufreq: intel_pstate: Ignore turbo active ratio in HWP
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Thu, 2 Aug 2018 00:26:06 +0000 (17:26 -0700)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 6 Aug 2018 08:22:27 +0000 (10:22 +0200)
When HWP is active turbo active ratio is not used, so we should allow
policy max frequency above turbo activation ratio to be set. When HWP is
not active, then any policy max frequency above turbo activation ratio
can result upto max one-core turbo frequency.

This fix helps better thermal control in turbo region when other methods
like "Running Average Power Limit" is not available to use.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/intel_pstate.c

index 7bfb983..b6a1aad 100644 (file)
@@ -2008,7 +2008,8 @@ static int intel_pstate_set_policy(struct cpufreq_policy *policy)
 static void intel_pstate_adjust_policy_max(struct cpufreq_policy *policy,
                                         struct cpudata *cpu)
 {
-       if (cpu->pstate.max_pstate_physical > cpu->pstate.max_pstate &&
+       if (!hwp_active &&
+           cpu->pstate.max_pstate_physical > cpu->pstate.max_pstate &&
            policy->max < policy->cpuinfo.max_freq &&
            policy->max > cpu->pstate.max_freq) {
                pr_debug("policy->max > max non turbo frequency\n");