aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/setup-r8a7779.c
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2012-01-10 01:50:01 -0500
committerPaul Mundt <lethal@linux-sh.org>2012-01-10 02:44:19 -0500
commita662c08260fac126059a148cbd1061e71e806b4a (patch)
tree214ebef2b4a7ec04e17b4897baffbd3e963470bf /arch/arm/mach-shmobile/setup-r8a7779.c
parent77761b63d94bcd04bb3f02b1b52716698202276a (diff)
ARM: mach-shmobile: r8a7779 power domain support V2
Add power domain control support for the r8a7779 SoC V2. This adds support for 4 power domains for I/O Devices together with code that can be used for CPU cores as well. The only out of the ordinary experience is the need for ioremap() of SYSC registers. Because of that we need to execute some init function before setting up the domains. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/arm/mach-shmobile/setup-r8a7779.c')
-rw-r--r--arch/arm/mach-shmobile/setup-r8a7779.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c
index b48a4b049c32..4725663bd032 100644
--- a/arch/arm/mach-shmobile/setup-r8a7779.c
+++ b/arch/arm/mach-shmobile/setup-r8a7779.c
@@ -30,6 +30,7 @@
30#include <linux/sh_timer.h> 30#include <linux/sh_timer.h>
31#include <mach/hardware.h> 31#include <mach/hardware.h>
32#include <mach/r8a7779.h> 32#include <mach/r8a7779.h>
33#include <mach/common.h>
33#include <asm/mach-types.h> 34#include <asm/mach-types.h>
34#include <asm/mach/arch.h> 35#include <asm/mach/arch.h>
35 36
@@ -218,6 +219,13 @@ static struct platform_device *r8a7779_late_devices[] __initdata = {
218 219
219void __init r8a7779_add_standard_devices(void) 220void __init r8a7779_add_standard_devices(void)
220{ 221{
222 r8a7779_pm_init();
223
224 r8a7779_init_pm_domain(&r8a7779_sh4a);
225 r8a7779_init_pm_domain(&r8a7779_sgx);
226 r8a7779_init_pm_domain(&r8a7779_vdp1);
227 r8a7779_init_pm_domain(&r8a7779_impx3);
228
221 platform_add_devices(r8a7779_early_devices, 229 platform_add_devices(r8a7779_early_devices,
222 ARRAY_SIZE(r8a7779_early_devices)); 230 ARRAY_SIZE(r8a7779_early_devices));
223 platform_add_devices(r8a7779_late_devices, 231 platform_add_devices(r8a7779_late_devices,