diff options
author | Geert Uytterhoeven <geert+renesas@glider.be> | 2014-10-23 13:19:01 +0200 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2014-10-28 08:40:18 +0900 |
commit | dc4470e177973feedd82596969d86468a1695b1e (patch) | |
tree | 3647c986ffa9626169447f2665234c810d172a55 /arch/arm/mach-shmobile | |
parent | 4ee7830c3ef9224bd078abe41a33c7396f827078 (diff) |
ARM: shmobile: r8a7740: Add A3SM pm domain support
Add support for the A3SM power domain, and hook it up as a subdomain of
A4S.
This domain contains the System CPU (Cortex-A9) hardware block. Hence
move the special CPU handling from A4S to A3SM.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r-- | arch/arm/mach-shmobile/pm-r8a7740.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/arch/arm/mach-shmobile/pm-r8a7740.c b/arch/arm/mach-shmobile/pm-r8a7740.c index 27117a8a49a..ac2eecd6f5e 100644 --- a/arch/arm/mach-shmobile/pm-r8a7740.c +++ b/arch/arm/mach-shmobile/pm-r8a7740.c @@ -14,10 +14,10 @@ #include "pm-rmobile.h" #if defined(CONFIG_PM) && !defined(CONFIG_ARCH_MULTIPLATFORM) -static int r8a7740_pd_a4s_suspend(void) +static int r8a7740_pd_a3sm_suspend(void) { /* - * The A4S domain contains the CPU core and therefore it should + * The A3SM domain contains the CPU core and therefore it should * only be turned off if the CPU is not in use. */ return -EBUSY; @@ -63,9 +63,7 @@ static struct rmobile_pm_domain r8a7740_pm_domains[] = { }, { .genpd.name = "A4S", .bit_shift = 10, - .gov = &pm_domain_always_on_gov, .no_debug = true, - .suspend = r8a7740_pd_a4s_suspend, }, { .genpd.name = "A3SP", .bit_shift = 11, @@ -73,6 +71,11 @@ static struct rmobile_pm_domain r8a7740_pm_domains[] = { .no_debug = true, .suspend = r8a7740_pd_a3sp_suspend, }, { + .genpd.name = "A3SM", + .bit_shift = 12, + .gov = &pm_domain_always_on_gov, + .suspend = r8a7740_pd_a3sm_suspend, + }, { .genpd.name = "A3SG", .bit_shift = 13, }, { @@ -86,6 +89,7 @@ void __init r8a7740_init_pm_domains(void) rmobile_init_domains(r8a7740_pm_domains, ARRAY_SIZE(r8a7740_pm_domains)); pm_genpd_add_subdomain_names("A4R", "A3RV"); pm_genpd_add_subdomain_names("A4S", "A3SP"); + pm_genpd_add_subdomain_names("A4S", "A3SM"); pm_genpd_add_subdomain_names("A4S", "A3SG"); } #endif /* CONFIG_PM && !CONFIG_ARCH_MULTIPLATFORM */ |