summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukasz Majewski <l.majewski@samsung.com>2014-04-02 10:31:57 (GMT)
committerSylwester Nawrocki <s.nawrocki@samsung.com>2014-04-03 13:36:15 (GMT)
commit4ea8f83d3139c7ccba21a5ac908b6f37f367f876 (patch)
tree5d78dd24425125b56e2109dbb1c3026e49abc469
parent3d81c12c6e9fe3cd92ce911f4e64386e9cbbe751 (diff)
downloadlinux-3.10-4ea8f83d3139c7ccba21a5ac908b6f37f367f876.zip
linux-3.10-4ea8f83d3139c7ccba21a5ac908b6f37f367f876.tar.gz
linux-3.10-4ea8f83d3139c7ccba21a5ac908b6f37f367f876.tar.bz2
cpufreq:LAB: Change method of boost state preservingrefs/changes/01/18901/2
It is not necessary to change the boost state when LAB governor is entered, since LAB will change it according to its own politics. Only enter state is preserved. When leaving the LAB, only when required, work is scheduled to restore boost initial state. Change-Id: I6323f3c0011fe54a33d70c9ad0f9da5360b4a735 Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
-rw-r--r--drivers/cpufreq/cpufreq_lab.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/cpufreq/cpufreq_lab.c b/drivers/cpufreq/cpufreq_lab.c
index 1738a7a..17f9701 100644
--- a/drivers/cpufreq/cpufreq_lab.c
+++ b/drivers/cpufreq/cpufreq_lab.c
@@ -388,8 +388,6 @@ static int lb_init(struct dbs_data *dbs_data)
goto err_idle_hist;
boost_init_state = cpufreq_boost_enabled();
- if (boost_init_state)
- cpufreq_boost_trigger_state(false);
od_init(dbs_data);
@@ -412,10 +410,13 @@ void lb_exit(struct dbs_data *dbs_data)
kfree(lb_ctrl_table);
lb_ctrl_table = NULL;
- cpufreq_boost_trigger_state(boost_init_state);
-
kfree(idle_avg);
kfree(idle_hist);
+
+ if (cpufreq_boost_enabled() != boost_init_state) {
+ lb_boost_data.state = boost_init_state;
+ schedule_work(&lb_boost_data.work);
+ }
}
define_get_cpu_dbs_routines(od_cpu_dbs_info);