diff options
author | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2013-08-09 08:04:55 -0400 |
---|---|---|
committer | Viresh Kumar <viresh.kumar@linaro.org> | 2013-08-12 02:30:21 -0400 |
commit | 45e12086263a53f16b489fc7f4f8f6348a688661 (patch) | |
tree | 7f5d34487d8c7b5cdc49dc6f946e591260bfab34 /drivers/cpufreq/Kconfig.arm | |
parent | c721d15a5cc1dade16f068123070c570378c5cc0 (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/Kconfig.arm')
-rw-r--r-- | drivers/cpufreq/Kconfig.arm | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm index de4d5d93c3fd..0fa204b244bd 100644 --- a/drivers/cpufreq/Kconfig.arm +++ b/drivers/cpufreq/Kconfig.arm | |||
@@ -17,37 +17,47 @@ config ARM_DT_BL_CPUFREQ | |||
17 | big.LITTLE platform. This gets frequency tables from DT. | 17 | big.LITTLE platform. This gets frequency tables from DT. |
18 | 18 | ||
19 | config ARM_EXYNOS_CPUFREQ | 19 | config ARM_EXYNOS_CPUFREQ |
20 | bool "SAMSUNG EXYNOS SoCs" | 20 | bool |
21 | depends on ARCH_EXYNOS | ||
22 | select CPU_FREQ_TABLE | 21 | select CPU_FREQ_TABLE |
23 | default y | ||
24 | help | ||
25 | This adds the CPUFreq driver common part for Samsung | ||
26 | EXYNOS SoCs. | ||
27 | |||
28 | If in doubt, say N. | ||
29 | 22 | ||
30 | config ARM_EXYNOS4210_CPUFREQ | 23 | config ARM_EXYNOS4210_CPUFREQ |
31 | def_bool CPU_EXYNOS4210 | 24 | bool "SAMSUNG EXYNOS4210" |
25 | depends on CPU_EXYNOS4210 | ||
26 | default y | ||
27 | select ARM_EXYNOS_CPUFREQ | ||
32 | help | 28 | help |
33 | This adds the CPUFreq driver for Samsung EXYNOS4210 | 29 | This adds the CPUFreq driver for Samsung EXYNOS4210 |
34 | SoC (S5PV310 or S5PC210). | 30 | SoC (S5PV310 or S5PC210). |
35 | 31 | ||
32 | If in doubt, say N. | ||
33 | |||
36 | config ARM_EXYNOS4X12_CPUFREQ | 34 | config ARM_EXYNOS4X12_CPUFREQ |
37 | def_bool (SOC_EXYNOS4212 || SOC_EXYNOS4412) | 35 | bool "SAMSUNG EXYNOS4x12" |
36 | depends on (SOC_EXYNOS4212 || SOC_EXYNOS4412) | ||
37 | default y | ||
38 | select ARM_EXYNOS_CPUFREQ | ||
38 | help | 39 | help |
39 | This adds the CPUFreq driver for Samsung EXYNOS4X12 | 40 | This adds the CPUFreq driver for Samsung EXYNOS4X12 |
40 | SoC (EXYNOS4212 or EXYNOS4412). | 41 | SoC (EXYNOS4212 or EXYNOS4412). |
41 | 42 | ||
43 | If in doubt, say N. | ||
44 | |||
42 | config ARM_EXYNOS5250_CPUFREQ | 45 | config ARM_EXYNOS5250_CPUFREQ |
43 | def_bool SOC_EXYNOS5250 | 46 | bool "SAMSUNG EXYNOS5250" |
47 | depends on SOC_EXYNOS5250 | ||
48 | default y | ||
49 | select ARM_EXYNOS_CPUFREQ | ||
44 | help | 50 | help |
45 | This adds the CPUFreq driver for Samsung EXYNOS5250 | 51 | This adds the CPUFreq driver for Samsung EXYNOS5250 |
46 | SoC. | 52 | SoC. |
47 | 53 | ||
54 | If in doubt, say N. | ||
55 | |||
48 | config ARM_EXYNOS5440_CPUFREQ | 56 | config ARM_EXYNOS5440_CPUFREQ |
49 | def_bool SOC_EXYNOS5440 | 57 | bool "SAMSUNG EXYNOS5440" |
58 | depends on SOC_EXYNOS5440 | ||
50 | depends on HAVE_CLK && PM_OPP && OF | 59 | depends on HAVE_CLK && PM_OPP && OF |
60 | default y | ||
51 | select CPU_FREQ_TABLE | 61 | select CPU_FREQ_TABLE |
52 | help | 62 | help |
53 | This adds the CPUFreq driver for Samsung EXYNOS5440 | 63 | This adds the CPUFreq driver for Samsung EXYNOS5440 |
@@ -55,6 +65,8 @@ config ARM_EXYNOS5440_CPUFREQ | |||
55 | different than previous exynos controllers so not using | 65 | different than previous exynos controllers so not using |
56 | the common exynos framework. | 66 | the common exynos framework. |
57 | 67 | ||
68 | If in doubt, say N. | ||
69 | |||
58 | config ARM_HIGHBANK_CPUFREQ | 70 | config ARM_HIGHBANK_CPUFREQ |
59 | tristate "Calxeda Highbank-based" | 71 | tristate "Calxeda Highbank-based" |
60 | depends on ARCH_HIGHBANK | 72 | depends on ARCH_HIGHBANK |