aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/cpufreq/cpufreq.c15
-rw-r--r--include/linux/cpufreq.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 24bf76fba141..058d6e084a6d 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -1731,6 +1731,21 @@ const char *cpufreq_get_current_driver(void)
1731} 1731}
1732EXPORT_SYMBOL_GPL(cpufreq_get_current_driver); 1732EXPORT_SYMBOL_GPL(cpufreq_get_current_driver);
1733 1733
1734/**
1735 * cpufreq_get_driver_data - return current driver data
1736 *
1737 * Return the private data of the currently loaded cpufreq
1738 * driver, or NULL if no cpufreq driver is loaded.
1739 */
1740void *cpufreq_get_driver_data(void)
1741{
1742 if (cpufreq_driver)
1743 return cpufreq_driver->driver_data;
1744
1745 return NULL;
1746}
1747EXPORT_SYMBOL_GPL(cpufreq_get_driver_data);
1748
1734/********************************************************************* 1749/*********************************************************************
1735 * NOTIFIER LISTS INTERFACE * 1750 * NOTIFIER LISTS INTERFACE *
1736 *********************************************************************/ 1751 *********************************************************************/
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
index 138336b6bb04..503b085b7832 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
@@ -219,6 +219,7 @@ __ATTR(_name, 0644, show_##_name, store_##_name)
219struct cpufreq_driver { 219struct cpufreq_driver {
220 char name[CPUFREQ_NAME_LEN]; 220 char name[CPUFREQ_NAME_LEN];
221 u8 flags; 221 u8 flags;
222 void *driver_data;
222 223
223 /* needed by all drivers */ 224 /* needed by all drivers */
224 int (*init) (struct cpufreq_policy *policy); 225 int (*init) (struct cpufreq_policy *policy);
@@ -312,6 +313,7 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data);
312int cpufreq_unregister_driver(struct cpufreq_driver *driver_data); 313int cpufreq_unregister_driver(struct cpufreq_driver *driver_data);
313 314
314const char *cpufreq_get_current_driver(void); 315const char *cpufreq_get_current_driver(void);
316void *cpufreq_get_driver_data(void);
315 317
316static inline void cpufreq_verify_within_limits(struct cpufreq_policy *policy, 318static inline void cpufreq_verify_within_limits(struct cpufreq_policy *policy,
317 unsigned int min, unsigned int max) 319 unsigned int min, unsigned int max)