diff options
author | Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> | 2013-10-29 08:18:37 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-10-29 19:48:25 -0400 |
commit | f7cd2d835e0f17cde2e5cead92be0099d7e92a7c (patch) | |
tree | 99fdd746006029a5683c4e671ea134ad01cdba3a /arch/arm/mach-vexpress/Kconfig | |
parent | ad7722dab7292dbc1c4586d701ac226b68122d39 (diff) |
ARM: vexpress/TC2: add support for CPU DVFS
SPC(Serial Power Controller) on TC2 also controls the CPU performance
operating points which is essential to provide CPU DVFS. The M3
microcontroller provides two sets of eight performance values, one set
for each cluster (CA15 or CA7). Each of this value contains the
frequency(kHz) and voltage(mV) at that performance level. It expects
these performance level to be passed through the SPC PERF_LVL registers.
This patch adds support to populate these performance levels from M3,
build the mapping to CPU OPPs at the boot and then use it to get and
set the CPU performance level runtime.
Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Pawel Moll <Pawel.Moll@arm.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'arch/arm/mach-vexpress/Kconfig')
-rw-r--r-- | arch/arm/mach-vexpress/Kconfig | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig index 365795447804..c77170c04fd0 100644 --- a/arch/arm/mach-vexpress/Kconfig +++ b/arch/arm/mach-vexpress/Kconfig | |||
@@ -66,10 +66,22 @@ config ARCH_VEXPRESS_DCSCB | |||
66 | This is needed to provide CPU and cluster power management | 66 | This is needed to provide CPU and cluster power management |
67 | on RTSM implementing big.LITTLE. | 67 | on RTSM implementing big.LITTLE. |
68 | 68 | ||
69 | config ARCH_VEXPRESS_SPC | ||
70 | bool "Versatile Express Serial Power Controller (SPC)" | ||
71 | select ARCH_HAS_CPUFREQ | ||
72 | select ARCH_HAS_OPP | ||
73 | select PM_OPP | ||
74 | help | ||
75 | The TC2 (A15x2 A7x3) versatile express core tile integrates a logic | ||
76 | block called Serial Power Controller (SPC) that provides the interface | ||
77 | between the dual cluster test-chip and the M3 microcontroller that | ||
78 | carries out power management. | ||
79 | |||
69 | config ARCH_VEXPRESS_TC2_PM | 80 | config ARCH_VEXPRESS_TC2_PM |
70 | bool "Versatile Express TC2 power management" | 81 | bool "Versatile Express TC2 power management" |
71 | depends on MCPM | 82 | depends on MCPM |
72 | select ARM_CCI | 83 | select ARM_CCI |
84 | select ARCH_VEXPRESS_SPC | ||
73 | help | 85 | help |
74 | Support for CPU and cluster power management on Versatile Express | 86 | Support for CPU and cluster power management on Versatile Express |
75 | with a TC2 (A15x2 A7x3) big.LITTLE core tile. | 87 | with a TC2 (A15x2 A7x3) big.LITTLE core tile. |