]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/arm/mach-shmobile/setup-sh7372.c
Merge remote-tracking branch 'renesas/next'
[karo-tx-linux.git] / arch / arm / mach-shmobile / setup-sh7372.c
index 64af6ea6d632cacdcde9573826f7c99c059ae0d8..a36011184c16c05d432de1cb0fbd678749a9ade8 100644 (file)
@@ -1021,21 +1021,34 @@ static struct platform_device *sh7372_late_devices[] __initdata = {
 
 void __init sh7372_add_standard_devices(void)
 {
-       rmobile_init_pm_domain(&sh7372_pd_a4lc);
-       rmobile_init_pm_domain(&sh7372_pd_a4mp);
-       rmobile_init_pm_domain(&sh7372_pd_d4);
-       rmobile_init_pm_domain(&sh7372_pd_a4r);
-       rmobile_init_pm_domain(&sh7372_pd_a3rv);
-       rmobile_init_pm_domain(&sh7372_pd_a3ri);
-       rmobile_init_pm_domain(&sh7372_pd_a4s);
-       rmobile_init_pm_domain(&sh7372_pd_a3sp);
-       rmobile_init_pm_domain(&sh7372_pd_a3sg);
-
-       rmobile_pm_add_subdomain(&sh7372_pd_a4lc, &sh7372_pd_a3rv);
-       rmobile_pm_add_subdomain(&sh7372_pd_a4r, &sh7372_pd_a4lc);
-
-       rmobile_pm_add_subdomain(&sh7372_pd_a4s, &sh7372_pd_a3sg);
-       rmobile_pm_add_subdomain(&sh7372_pd_a4s, &sh7372_pd_a3sp);
+       struct pm_domain_device domain_devices[] = {
+               { "A3RV", &vpu_device, },
+               { "A4MP", &spu0_device, },
+               { "A4MP", &spu1_device, },
+               { "A3SP", &scif0_device, },
+               { "A3SP", &scif1_device, },
+               { "A3SP", &scif2_device, },
+               { "A3SP", &scif3_device, },
+               { "A3SP", &scif4_device, },
+               { "A3SP", &scif5_device, },
+               { "A3SP", &scif6_device, },
+               { "A3SP", &iic1_device, },
+               { "A3SP", &dma0_device, },
+               { "A3SP", &dma1_device, },
+               { "A3SP", &dma2_device, },
+               { "A3SP", &usb_dma0_device, },
+               { "A3SP", &usb_dma1_device, },
+               { "A4R", &iic0_device, },
+               { "A4R", &veu0_device, },
+               { "A4R", &veu1_device, },
+               { "A4R", &veu2_device, },
+               { "A4R", &veu3_device, },
+               { "A4R", &jpu_device, },
+               { "A4R", &tmu00_device, },
+               { "A4R", &tmu01_device, },
+       };
+
+       sh7372_init_pm_domains();
 
        platform_add_devices(sh7372_early_devices,
                            ARRAY_SIZE(sh7372_early_devices));
@@ -1043,30 +1056,8 @@ void __init sh7372_add_standard_devices(void)
        platform_add_devices(sh7372_late_devices,
                            ARRAY_SIZE(sh7372_late_devices));
 
-       rmobile_add_device_to_domain(&sh7372_pd_a3rv, &vpu_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4mp, &spu0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4mp, &spu1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif2_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif3_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif4_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif5_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &scif6_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &iic1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &dma0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &dma1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &dma2_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &usb_dma0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &usb_dma1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &iic0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &veu0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &veu1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &veu2_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &veu3_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &jpu_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &tmu00_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &tmu01_device);
+       rmobile_add_devices_to_domains(domain_devices,
+                                      ARRAY_SIZE(domain_devices));
 }
 
 static void __init sh7372_earlytimer_init(void)