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

Commit fbc48224 authored by Minsung Kim's avatar Minsung Kim Committed by Ruchi Kandoi
Browse files

cpufreq: interactive: don't skip waking up speedchange_task if target_freq > policy->cur



When __cpufreq_driver_target() in speedchange_task failed for some reason, the
policy->cur could be lower than the target_freq. The governor misses to change
the target_freq if the target_freq is equal to the next_freq at the next sample
time.

Added a check to prevent the CPU to stay at the speed that is lower than the
target_freq for long duration.

Change-Id: Ibfdcd193b8280390b8f8374a63218aa31267f310
Signed-off-by: default avatarMinsung Kim <ms925.kim@samsung.com>
parent a11623da
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -432,7 +432,8 @@ static void cpufreq_interactive_timer(unsigned long data)
		pcpu->floor_validate_time = now;
	}

	if (pcpu->target_freq == new_freq) {
	if (pcpu->target_freq == new_freq &&
			pcpu->target_freq <= pcpu->policy->cur) {
		trace_cpufreq_interactive_already(
			data, cpu_load, pcpu->target_freq,
			pcpu->policy->cur, new_freq);