]> git.baikalelectronics.ru Git - kernel.git/commit
cpufreq: governor: Implement per policy instances of governors
authorViresh Kumar <viresh.kumar@linaro.org>
Wed, 27 Mar 2013 15:58:58 +0000 (15:58 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sun, 31 Mar 2013 23:11:34 +0000 (01:11 +0200)
commit9a80772fd6962516da84627b061cd0e35f3b58a1
tree7f3c725675ce3042d2d2eb86b0b40f93cef73de3
parentf199dcab9da6f8d3d8898ffd02597b3d044e2c82
cpufreq: governor: Implement per policy instances of governors

Currently, there can't be multiple instances of single governor_type.
If we have a multi-package system, where we have multiple instances
of struct policy (per package), we can't have multiple instances of
same governor. i.e. We can't have multiple instances of ondemand
governor for multiple packages.

Governors directory in sysfs is created at /sys/devices/system/cpu/cpufreq/
governor-name/. Which again reflects that there can be only one
instance of a governor_type in the system.

This is a bottleneck for multicluster system, where we want different
packages to use same governor type, but with different tunables.

This patch uses the infrastructure provided by earlier patch and
implements init/exit routines for ondemand and conservative
governors.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/cpufreq.c
drivers/cpufreq/cpufreq_conservative.c
drivers/cpufreq/cpufreq_governor.c
drivers/cpufreq/cpufreq_governor.h
drivers/cpufreq/cpufreq_ondemand.c
include/linux/cpufreq.h