aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorViresh Kumar <viresh.kumar@linaro.org>2013-05-16 01:09:57 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-05-27 07:20:56 -0400
commit944e9a0316e60bc5bc122e46c1fde36e5f6e9f56 (patch)
treeccec2b2a4dd1c5de8f8db9b81d68b034380734a8
parent3f869d6d41d032392abafe17ea5257a2514a24a7 (diff)
cpufreq: governors: Move get_governor_parent_kobj() to cpufreq.c
get_governor_parent_kobj() can be used by any governor, generic cpufreq governors or platform specific ones and so must be present in cpufreq.c instead of cpufreq_governor.c. This patch moves it to cpufreq.c. This also adds EXPORT_SYMBOL_GPL(get_governor_parent_kobj) so that modules can use this function too. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r--drivers/cpufreq/cpufreq.c9
-rw-r--r--drivers/cpufreq/cpufreq_governor.c8
-rw-r--r--include/linux/cpufreq.h1
3 files changed, 10 insertions, 8 deletions
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 2f254691ed1f..3faf62bdbad0 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -134,6 +134,15 @@ bool have_governor_per_policy(void)
134} 134}
135EXPORT_SYMBOL_GPL(have_governor_per_policy); 135EXPORT_SYMBOL_GPL(have_governor_per_policy);
136 136
137struct kobject *get_governor_parent_kobj(struct cpufreq_policy *policy)
138{
139 if (have_governor_per_policy())
140 return &policy->kobj;
141 else
142 return cpufreq_global_kobject;
143}
144EXPORT_SYMBOL_GPL(get_governor_parent_kobj);
145
137static struct cpufreq_policy *__cpufreq_cpu_get(unsigned int cpu, bool sysfs) 146static struct cpufreq_policy *__cpufreq_cpu_get(unsigned int cpu, bool sysfs)
138{ 147{
139 struct cpufreq_policy *data; 148 struct cpufreq_policy *data;
diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
index 5af40ad82d23..d1421b498c76 100644
--- a/drivers/cpufreq/cpufreq_governor.c
+++ b/drivers/cpufreq/cpufreq_governor.c
@@ -29,14 +29,6 @@
29 29
30#include "cpufreq_governor.h" 30#include "cpufreq_governor.h"
31 31
32static struct kobject *get_governor_parent_kobj(struct cpufreq_policy *policy)
33{
34 if (have_governor_per_policy())
35 return &policy->kobj;
36 else
37 return cpufreq_global_kobject;
38}
39
40static struct attribute_group *get_sysfs_attr(struct dbs_data *dbs_data) 32static struct attribute_group *get_sysfs_attr(struct dbs_data *dbs_data)
41{ 33{
42 if (have_governor_per_policy()) 34 if (have_governor_per_policy())
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
index 037d36ae63e5..dd1a5d41357b 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
@@ -340,6 +340,7 @@ const char *cpufreq_get_current_driver(void);
340int cpufreq_get_policy(struct cpufreq_policy *policy, unsigned int cpu); 340int cpufreq_get_policy(struct cpufreq_policy *policy, unsigned int cpu);
341int cpufreq_update_policy(unsigned int cpu); 341int cpufreq_update_policy(unsigned int cpu);
342bool have_governor_per_policy(void); 342bool have_governor_per_policy(void);
343struct kobject *get_governor_parent_kobj(struct cpufreq_policy *policy);
343 344
344#ifdef CONFIG_CPU_FREQ 345#ifdef CONFIG_CPU_FREQ
345/* query the current CPU frequency (in kHz). If zero, cpufreq couldn't detect it */ 346/* query the current CPU frequency (in kHz). If zero, cpufreq couldn't detect it */