rk: cpufreq: interactive: touch boost all cpus
authorHuang, Tao <huangtao@rock-chips.com>
Sat, 21 Mar 2015 08:44:11 +0000 (16:44 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Sat, 21 Mar 2015 08:44:11 +0000 (16:44 +0800)
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
drivers/cpufreq/cpufreq_interactive.c

index f77778e9e463eabe8b7e0d3e69ffac281674b9f1..3b4d68546f5650fd9c1002dcdca1483985e374c9 100644 (file)
@@ -1170,11 +1170,16 @@ static void cpufreq_interactive_input_event(struct input_handle *handle, unsigne
        now = ktime_to_us(ktime_get());
        for_each_online_cpu(i) {
                pcpu = &per_cpu(cpuinfo, i);
-               tunables = pcpu->policy->governor_data;
+               if (have_governor_per_policy())
+                       tunables = pcpu->policy->governor_data;
+               else
+                       tunables = common_tunables;
+               if (!tunables)
+                       continue;
 
                endtime = now + tunables->touchboostpulse_duration_val;
                if (endtime < (tunables->touchboostpulse_endtime + 10 * USEC_PER_MSEC))
-                       break;
+                       continue;
                tunables->touchboostpulse_endtime = endtime;
 
                spin_lock_irqsave(&pcpu->target_freq_lock, flags[1]);