Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

PM / devfreq: Export devfreq_get_freq_range symbol within devfreq

In order to get frequency range within devfreq governors,
export devfreq_get_freq_range symbol within devfreq.

Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Tested-by: Chen-Yu Tsai <wenst@chromium.org>
Tested-by: Johnson Wang <johnson.wang@mediatek.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>

+14 -8
+12 -8
drivers/devfreq/devfreq.c
··· 112 112 } 113 113 114 114 /** 115 - * get_freq_range() - Get the current freq range 115 + * devfreq_get_freq_range() - Get the current freq range 116 116 * @devfreq: the devfreq instance 117 117 * @min_freq: the min frequency 118 118 * @max_freq: the max frequency 119 119 * 120 120 * This takes into consideration all constraints. 121 121 */ 122 - static void get_freq_range(struct devfreq *devfreq, 123 - unsigned long *min_freq, 124 - unsigned long *max_freq) 122 + void devfreq_get_freq_range(struct devfreq *devfreq, 123 + unsigned long *min_freq, 124 + unsigned long *max_freq) 125 125 { 126 126 unsigned long *freq_table = devfreq->profile->freq_table; 127 127 s32 qos_min_freq, qos_max_freq; ··· 158 158 if (*min_freq > *max_freq) 159 159 *min_freq = *max_freq; 160 160 } 161 + EXPORT_SYMBOL(devfreq_get_freq_range); 161 162 162 163 /** 163 164 * devfreq_get_freq_level() - Lookup freq_table for the frequency ··· 419 418 err = devfreq->governor->get_target_freq(devfreq, &freq); 420 419 if (err) 421 420 return err; 422 - get_freq_range(devfreq, &min_freq, &max_freq); 421 + devfreq_get_freq_range(devfreq, &min_freq, &max_freq); 423 422 424 423 if (freq < min_freq) { 425 424 freq = min_freq; ··· 786 785 { 787 786 struct devfreq *devfreq; 788 787 struct devfreq_governor *governor; 788 + unsigned long min_freq, max_freq; 789 789 int err = 0; 790 790 791 791 if (!dev || !profile || !governor_name) { ··· 850 848 err = -EINVAL; 851 849 goto err_dev; 852 850 } 851 + 852 + devfreq_get_freq_range(devfreq, &min_freq, &max_freq); 853 853 854 854 devfreq->suspend_freq = dev_pm_opp_get_suspend_opp_freq(dev); 855 855 devfreq->opp_table = dev_pm_opp_get_opp_table(dev); ··· 1591 1587 unsigned long min_freq, max_freq; 1592 1588 1593 1589 mutex_lock(&df->lock); 1594 - get_freq_range(df, &min_freq, &max_freq); 1590 + devfreq_get_freq_range(df, &min_freq, &max_freq); 1595 1591 mutex_unlock(&df->lock); 1596 1592 1597 1593 return sprintf(buf, "%lu\n", min_freq); ··· 1645 1641 unsigned long min_freq, max_freq; 1646 1642 1647 1643 mutex_lock(&df->lock); 1648 - get_freq_range(df, &min_freq, &max_freq); 1644 + devfreq_get_freq_range(df, &min_freq, &max_freq); 1649 1645 mutex_unlock(&df->lock); 1650 1646 1651 1647 return sprintf(buf, "%lu\n", max_freq); ··· 1959 1955 1960 1956 mutex_lock(&devfreq->lock); 1961 1957 cur_freq = devfreq->previous_freq; 1962 - get_freq_range(devfreq, &min_freq, &max_freq); 1958 + devfreq_get_freq_range(devfreq, &min_freq, &max_freq); 1963 1959 timer = devfreq->profile->timer; 1964 1960 1965 1961 if (IS_SUPPORTED_ATTR(devfreq->governor->attrs, POLLING_INTERVAL))
+2
drivers/devfreq/governor.h
··· 89 89 90 90 int devfreq_update_status(struct devfreq *devfreq, unsigned long freq); 91 91 int devfreq_update_target(struct devfreq *devfreq, unsigned long freq); 92 + void devfreq_get_freq_range(struct devfreq *devfreq, unsigned long *min_freq, 93 + unsigned long *max_freq); 92 94 93 95 static inline int devfreq_update_stats(struct devfreq *df) 94 96 {