1. 08 Jun, 2016 2 commits
    • Srinivas Pandruvada's avatar
      cpufreq: intel_pstate: Fix ->set_policy() interface for no_turbo · 983e600e
      Srinivas Pandruvada authored
      When turbo is disabled, the ->set_policy() interface is broken.
      
      For example, when turbo is disabled and cpuinfo.max = 2900000 (full
      max turbo frequency), setting the limits results in frequency less
      than the requested one:
      Set 1000000 KHz results in 0700000 KHz
      Set 1500000 KHz results in 1100000 KHz
      Set 2000000 KHz results in  1500000 KHz
      
      This is because the limits->max_perf fraction is calculated using
      the max turbo frequency as the reference, but when the max P-State is
      capped in intel_pstate_get_min_max(), the reference is not the max
      turbo P-State. This results in reducing max P-State.
      
      One option is to always use max turbo as reference for calculating
      limits. But this will not be correct. By definition the intel_pstate
      sysfs limits, shows percentage of available performance. So when
      BIOS has disabled turbo, the available performance is max non turbo.
      So the max_perf_pct should still show 100%.
      Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      [ rjw : Subject & changelog, rewrite in fewer lines of code ]
      Cc: All applicable <stable@vger.kernel.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      983e600e
    • Srinivas Pandruvada's avatar
      cpufreq: intel_pstate: Fix code ordering in intel_pstate_set_policy() · 2c2c1af4
      Srinivas Pandruvada authored
      The limits->max_perf is rounded_up but immediately overwritten by
      another assignment to limits->max_perf.
      
      Move that operation to the correct location.
      
      While here also added a pr_debug() call in ->set_policy to aid in
      debugging.
      
      Fixes: 785ee278 (cpufreq: intel_pstate: Fix limits->max_perf rounding error)
      Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      [ rjw : Subject & changelog ]
      Cc: 4.4+ <stable@vger.kernel.org> # 4.4+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      2c2c1af4
  2. 01 Jun, 2016 1 commit
  3. 30 May, 2016 1 commit
  4. 18 May, 2016 5 commits
  5. 11 May, 2016 8 commits
  6. 09 May, 2016 2 commits
  7. 06 May, 2016 3 commits
  8. 04 May, 2016 8 commits
  9. 02 May, 2016 1 commit
  10. 28 Apr, 2016 9 commits