aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpufreq/exynos-cpufreq.h
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>2013-08-09 08:04:55 -0400
committerViresh Kumar <viresh.kumar@linaro.org>2013-08-12 02:30:21 -0400
commit45e12086263a53f16b489fc7f4f8f6348a688661 (patch)
tree7f5d34487d8c7b5cdc49dc6f946e591260bfab34 /drivers/cpufreq/exynos-cpufreq.h
parentc721d15a5cc1dade16f068123070c570378c5cc0 (diff)
cpufreq: fix EXYNOS drivers selection
* remove superfluous pr_debug() call from exynos_cpufreq_init() (init errors are always logged anyway) * add dummy per-SoC type init functions to exynos-cpufreq.h * make per-SoC type cpufreq config options selectable * make CONFIG_ARM_EXYNOS_CPUFREQ config option invisible to user and automatically enable it when needed This patch fixes following issues: * EXYNOS per-SoC type cpufreq support (i.e. exynos4210-cpufreq.c) being always built if given SoC support was enabled (i.e. CPU_EXYNOS4210), even if common EXYNOS cpufreq support was disabled * inability to select cpufreq for each SoC type separately (it could be only enabled/disabled for all SoCs for which support was enabled) * EXYNOS5440 cpufreq support was always enabled when EXYNOS5440 support was enabled and couldn't be disabled Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Reviewed-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Diffstat (limited to 'drivers/cpufreq/exynos-cpufreq.h')
-rw-r--r--drivers/cpufreq/exynos-cpufreq.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/cpufreq/exynos-cpufreq.h b/drivers/cpufreq/exynos-cpufreq.h
index 92b852ee5ddc..7f25cee8cec2 100644
--- a/drivers/cpufreq/exynos-cpufreq.h
+++ b/drivers/cpufreq/exynos-cpufreq.h
@@ -43,6 +43,27 @@ struct exynos_dvfs_info {
43 bool (*need_apll_change)(unsigned int, unsigned int); 43 bool (*need_apll_change)(unsigned int, unsigned int);
44}; 44};
45 45
46#ifdef CONFIG_ARM_EXYNOS4210_CPUFREQ
46extern int exynos4210_cpufreq_init(struct exynos_dvfs_info *); 47extern int exynos4210_cpufreq_init(struct exynos_dvfs_info *);
48#else
49static inline int exynos4210_cpufreq_init(struct exynos_dvfs_info *info)
50{
51 return -EOPNOTSUPP;
52}
53#endif
54#ifdef CONFIG_ARM_EXYNOS4X12_CPUFREQ
47extern int exynos4x12_cpufreq_init(struct exynos_dvfs_info *); 55extern int exynos4x12_cpufreq_init(struct exynos_dvfs_info *);
56#else
57static inline int exynos4x12_cpufreq_init(struct exynos_dvfs_info *info)
58{
59 return -EOPNOTSUPP;
60}
61#endif
62#ifdef CONFIG_ARM_EXYNOS5250_CPUFREQ
48extern int exynos5250_cpufreq_init(struct exynos_dvfs_info *); 63extern int exynos5250_cpufreq_init(struct exynos_dvfs_info *);
64#else
65static inline int exynos5250_cpufreq_init(struct exynos_dvfs_info *info)
66{
67 return -EOPNOTSUPP;
68}
69#endif