mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-01 11:21:51 +00:00
intel_pstate: Correct calculation of min pstate value
The minimum pstate is supposed to be a percentage of the maximum P state available. Calculate min using max pstate and not the current max which may have been limited by the user Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
d253d2a526
commit
7244cb62d9
1 changed files with 3 additions and 2 deletions
|
@ -366,12 +366,13 @@ static int intel_pstate_turbo_pstate(void)
|
||||||
static void intel_pstate_get_min_max(struct cpudata *cpu, int *min, int *max)
|
static void intel_pstate_get_min_max(struct cpudata *cpu, int *min, int *max)
|
||||||
{
|
{
|
||||||
int max_perf = cpu->pstate.turbo_pstate;
|
int max_perf = cpu->pstate.turbo_pstate;
|
||||||
|
int max_perf_adj;
|
||||||
int min_perf;
|
int min_perf;
|
||||||
if (limits.no_turbo)
|
if (limits.no_turbo)
|
||||||
max_perf = cpu->pstate.max_pstate;
|
max_perf = cpu->pstate.max_pstate;
|
||||||
|
|
||||||
max_perf = fp_toint(mul_fp(int_tofp(max_perf), limits.max_perf));
|
max_perf_adj = fp_toint(mul_fp(int_tofp(max_perf), limits.max_perf));
|
||||||
*max = clamp_t(int, max_perf,
|
*max = clamp_t(int, max_perf_adj,
|
||||||
cpu->pstate.min_pstate, cpu->pstate.turbo_pstate);
|
cpu->pstate.min_pstate, cpu->pstate.turbo_pstate);
|
||||||
|
|
||||||
min_perf = fp_toint(mul_fp(int_tofp(max_perf), limits.min_perf));
|
min_perf = fp_toint(mul_fp(int_tofp(max_perf), limits.min_perf));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue