diff options
author | Magnus Damm <damm@opensource.se> | 2011-07-01 16:14:45 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rjw@sisk.pl> | 2011-07-02 08:29:58 -0400 |
commit | 33afebf3da2e8c26faebb1b271c810f937e35788 (patch) | |
tree | 136a01972e49e3905cf7afbbafd8ebef4b00a316 /arch | |
parent | 96f7934e448fd52644b8862ea12761e1524f3bf3 (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')
-rw-r--r-- | arch/arm/mach-shmobile/include/mach/sh7372.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/pm-sh7372.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/setup-sh7372.c | 3 |
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) | |||
485 | 485 | ||
486 | #ifdef CONFIG_PM | 486 | #ifdef CONFIG_PM |
487 | extern struct sh7372_pm_domain sh7372_a4lc; | 487 | extern struct sh7372_pm_domain sh7372_a4lc; |
488 | extern struct sh7372_pm_domain sh7372_a3rv; | ||
488 | 489 | ||
489 | extern void sh7372_init_pm_domain(struct sh7372_pm_domain *sh7372_pd); | 490 | extern void sh7372_init_pm_domain(struct sh7372_pm_domain *sh7372_pd); |
490 | extern void sh7372_add_device_to_domain(struct sh7372_pm_domain *sh7372_pd, | 491 | 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 = { | |||
125 | .bit_shift = 1, | 125 | .bit_shift = 1, |
126 | }; | 126 | }; |
127 | 127 | ||
128 | struct sh7372_pm_domain sh7372_a3rv = { | ||
129 | .bit_shift = 6, | ||
130 | }; | ||
131 | |||
128 | #endif /* CONFIG_PM */ | 132 | #endif /* CONFIG_PM */ |
129 | 133 | ||
130 | static void sh7372_enter_core_standby(void) | 134 | 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 = { | |||
842 | void __init sh7372_add_standard_devices(void) | 842 | void __init sh7372_add_standard_devices(void) |
843 | { | 843 | { |
844 | sh7372_init_pm_domain(&sh7372_a4lc); | 844 | sh7372_init_pm_domain(&sh7372_a4lc); |
845 | sh7372_init_pm_domain(&sh7372_a3rv); | ||
845 | 846 | ||
846 | platform_add_devices(sh7372_early_devices, | 847 | platform_add_devices(sh7372_early_devices, |
847 | ARRAY_SIZE(sh7372_early_devices)); | 848 | ARRAY_SIZE(sh7372_early_devices)); |
848 | 849 | ||
849 | platform_add_devices(sh7372_late_devices, | 850 | platform_add_devices(sh7372_late_devices, |
850 | ARRAY_SIZE(sh7372_late_devices)); | 851 | ARRAY_SIZE(sh7372_late_devices)); |
852 | |||
853 | sh7372_add_device_to_domain(&sh7372_a3rv, &vpu_device); | ||
851 | } | 854 | } |
852 | 855 | ||
853 | void __init sh7372_add_early_devices(void) | 856 | void __init sh7372_add_early_devices(void) |