Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7349ec04 authored by Philippe Longepe's avatar Philippe Longepe Committed by Rafael J. Wysocki
Browse files

intel_pstate: Move intel_pstate_calc_busy() into get_target_pstate_use_performance()



The cpu_load algorithm doesn't need to invoke intel_pstate_calc_busy(),
so move that call from intel_pstate_sample() to
get_target_pstate_use_performance().

Signed-off-by: default avatarPhilippe Longepe <philippe.longepe@linux.intel.com>
Acked-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent a158bed5
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -915,8 +915,6 @@ static inline void intel_pstate_sample(struct cpudata *cpu, u64 time)
	cpu->sample.mperf -= cpu->prev_mperf;
	cpu->sample.tsc -= cpu->prev_tsc;

	intel_pstate_calc_busy(cpu);

	cpu->prev_aperf = aperf;
	cpu->prev_mperf = mperf;
	cpu->prev_tsc = tsc;
@@ -945,7 +943,6 @@ static inline int32_t get_target_pstate_use_cpu_load(struct cpudata *cpu)
	mperf = cpu->sample.mperf + delta_iowait_mperf;
	cpu->prev_cummulative_iowait = cummulative_iowait;


	/*
	 * The load can be estimated as the ratio of the mperf counter
	 * running at a constant frequency during active periods
@@ -963,6 +960,8 @@ static inline int32_t get_target_pstate_use_performance(struct cpudata *cpu)
	int32_t core_busy, max_pstate, current_pstate, sample_ratio;
	u64 duration_ns;

	intel_pstate_calc_busy(cpu);

	/*
	 * core_busy is the ratio of actual performance to max
	 * max_pstate is the max non turbo pstate available