summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2011-07-01 22:14:45 +0200
committerRafael J. Wysocki <rjw@sisk.pl>2011-07-02 14:29:58 +0200
commit33afebf3da2e8c26faebb1b271c810f937e35788 (patch)
tree136a01972e49e3905cf7afbbafd8ebef4b00a316 /arch/arm
parent96f7934e448fd52644b8862ea12761e1524f3bf3 (diff)
ARM: mach-shmobile: sh7372 A3RV support
Add support for the sh7372 A3RV power domain and hook up the VPU device. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-shmobile/include/mach/sh7372.h1
-rw-r--r--arch/arm/mach-shmobile/pm-sh7372.c4
-rw-r--r--arch/arm/mach-shmobile/setup-sh7372.c3
3 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/include/mach/sh7372.h b/arch/arm/mach-shmobile/include/mach/sh7372.h
index 495013c75c6b..e935b5e2e5d0 100644
--- a/arch/arm/mach-shmobile/include/mach/sh7372.h
+++ b/arch/arm/mach-shmobile/include/mach/sh7372.h
@@ -485,6 +485,7 @@ static inline struct sh7372_pm_domain *to_sh7372_pd(struct generic_pm_domain *d)
#ifdef CONFIG_PM
extern struct sh7372_pm_domain sh7372_a4lc;
+extern struct sh7372_pm_domain sh7372_a3rv;
extern void sh7372_init_pm_domain(struct sh7372_pm_domain *sh7372_pd);
extern void sh7372_add_device_to_domain(struct sh7372_pm_domain *sh7372_pd,
diff --git a/arch/arm/mach-shmobile/pm-sh7372.c b/arch/arm/mach-shmobile/pm-sh7372.c
index e17f12424ec7..d467c8668d79 100644
--- a/arch/arm/mach-shmobile/pm-sh7372.c
+++ b/arch/arm/mach-shmobile/pm-sh7372.c
@@ -125,6 +125,10 @@ struct sh7372_pm_domain sh7372_a4lc = {
.bit_shift = 1,
};
+struct sh7372_pm_domain sh7372_a3rv = {
+ .bit_shift = 6,
+};
+
#endif /* CONFIG_PM */
static void sh7372_enter_core_standby(void)
diff --git a/arch/arm/mach-shmobile/setup-sh7372.c b/arch/arm/mach-shmobile/setup-sh7372.c
index ec1ae8cc9caa..14a497fedba0 100644
--- a/arch/arm/mach-shmobile/setup-sh7372.c
+++ b/arch/arm/mach-shmobile/setup-sh7372.c
@@ -842,12 +842,15 @@ static struct platform_device *sh7372_late_devices[] __initdata = {
void __init sh7372_add_standard_devices(void)
{
sh7372_init_pm_domain(&sh7372_a4lc);
+ sh7372_init_pm_domain(&sh7372_a3rv);
platform_add_devices(sh7372_early_devices,
ARRAY_SIZE(sh7372_early_devices));
platform_add_devices(sh7372_late_devices,
ARRAY_SIZE(sh7372_late_devices));
+
+ sh7372_add_device_to_domain(&sh7372_a3rv, &vpu_device);
}
void __init sh7372_add_early_devices(void)