ARM: shmobile: r8a7740/armadillo legacy: Add A4R pm domain support
authorGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 23 Oct 2014 11:18:59 +0000 (13:18 +0200)
committerSimon Horman <horms+renesas@verge.net.au>
Mon, 27 Oct 2014 23:40:18 +0000 (08:40 +0900)
Add support for the A4R power domain, and hook up the A3RV subdomain,
and the CEU0, TMU0, and IIC0 hardware blocks.
This domain also contains the Realtime CPU (SH-4A), Realtime CPU debug
modules, H-UDI, RT-SHwy, INTCS, RT-HPB, VIO6C, JPU, RTDMAC1/2, SSP,
MSIOF0, CMT0, ICB, DREQPAK (RT), 2DDMAC, IPMMUI, and 2DG hardware
blocks, but these are currently not used by any driver.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/mach-shmobile/board-armadillo800eva.c
arch/arm/mach-shmobile/pm-r8a7740.c
arch/arm/mach-shmobile/setup-r8a7740.c

index e064443..25813da 100644 (file)
@@ -1236,6 +1236,7 @@ static void __init eva_init(void)
                { "A4LC", &hdmi_lcdc_device },
                { "A4MP", &hdmi_device },
                { "A4MP", &fsi_device },
+               { "A4R",  &ceu0_device },
                { "A4S",  &sh_eth_device },
                { "A3SP", &pwm_device },
                { "A3SP", &sdhi0_device },
index 8b1af2a..74e6a67 100644 (file)
@@ -54,6 +54,9 @@ static struct rmobile_pm_domain r8a7740_pm_domains[] = {
                .bit_shift      = 3,
                .gov            = &pm_domain_always_on_gov,
                .suspend        = r8a7740_pd_d4_suspend,
+       }, {
+               .genpd.name     = "A4R",
+               .bit_shift      = 5,
        }, {
                .genpd.name     = "A3RV",
                .bit_shift      = 6,
@@ -78,6 +81,7 @@ static struct rmobile_pm_domain r8a7740_pm_domains[] = {
 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", "A3SG");
 }
index dbf8a93..b77c226 100644 (file)
@@ -746,6 +746,8 @@ static void r8a7740_i2c_workaround(struct platform_device *pdev)
 void __init r8a7740_add_standard_devices(void)
 {
        static struct pm_domain_device domain_devices[] __initdata = {
+               { "A4R",  &tmu0_device },
+               { "A4R",  &i2c0_device },
                { "A4S",  &irqpin0_device },
                { "A4S",  &irqpin1_device },
                { "A4S",  &irqpin2_device },