]> git.karo-electronics.de Git - linux-beck.git/commitdiff
ARM: shmobile: Use names of power domains for adding devices to them
authorRafael J. Wysocki <rjw@sisk.pl>
Mon, 6 Aug 2012 23:07:01 +0000 (01:07 +0200)
committerRafael J. Wysocki <rjw@sisk.pl>
Mon, 3 Sep 2012 23:44:55 +0000 (01:44 +0200)
Make the power management code under arch/arm/mach-shmobile/ use
names of power domains instead of pointers to domain objects for
adding devices to the domains.  This will allow us to put the
domain objects into tables and register them all in one shot
going forward.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
arch/arm/mach-shmobile/board-ap4evb.c
arch/arm/mach-shmobile/board-armadillo800eva.c
arch/arm/mach-shmobile/board-mackerel.c
arch/arm/mach-shmobile/include/mach/pm-rmobile.h
arch/arm/mach-shmobile/pm-rmobile.c
arch/arm/mach-shmobile/setup-r8a7740.c
arch/arm/mach-shmobile/setup-sh7372.c

index f172ca85905cdf68d114d046ea987e43b0570af9..b85957ad948b0b6c4ed67a1c8fbe8403d6204a34 100644 (file)
@@ -1461,14 +1461,14 @@ static void __init ap4evb_init(void)
 
        platform_add_devices(ap4evb_devices, ARRAY_SIZE(ap4evb_devices));
 
-       rmobile_add_device_to_domain(&sh7372_pd_a4lc, &lcdc1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4lc, &lcdc_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4mp, &fsi_device);
-
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sh_mmcif_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sdhi0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sdhi1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &ceu_device);
+       rmobile_add_device_to_domain("A4LC", &lcdc1_device);
+       rmobile_add_device_to_domain("A4LC", &lcdc_device);
+       rmobile_add_device_to_domain("A4MP", &fsi_device);
+
+       rmobile_add_device_to_domain("A3SP", &sh_mmcif_device);
+       rmobile_add_device_to_domain("A3SP", &sdhi0_device);
+       rmobile_add_device_to_domain("A3SP", &sdhi1_device);
+       rmobile_add_device_to_domain("A4R", &ceu_device);
 
        hdmi_init_pm_clock();
        fsi_init_pm_clock();
index cf10f92856dcbb905712024b1d6a00e55c77cf51..28e6e1d0d51152c685b40e2e0acbac6f3a8f5eb0 100644 (file)
@@ -1181,10 +1181,10 @@ static void __init eva_init(void)
 
        eva_clock_init();
 
-       rmobile_add_device_to_domain(&r8a7740_pd_a4lc, &lcdc0_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a4lc, &hdmi_lcdc_device);
+       rmobile_add_device_to_domain("A4LC", &lcdc0_device);
+       rmobile_add_device_to_domain("A4LC", &hdmi_lcdc_device);
        if (usb)
-               rmobile_add_device_to_domain(&r8a7740_pd_a3sp, usb);
+               rmobile_add_device_to_domain("A3SP", usb);
 }
 
 static void __init eva_earlytimer_init(void)
index 7ea2b31e31991355cb9304dfcafcc4ab6db6f628..954b02e3bb18b286e0adc866b94b143e98305754 100644 (file)
@@ -1623,20 +1623,20 @@ static void __init mackerel_init(void)
 
        platform_add_devices(mackerel_devices, ARRAY_SIZE(mackerel_devices));
 
-       rmobile_add_device_to_domain(&sh7372_pd_a4lc, &lcdc_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4lc, &hdmi_lcdc_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4lc, &meram_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4mp, &fsi_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &usbhs0_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &usbhs1_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &nand_flash_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sh_mmcif_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sdhi0_device);
+       rmobile_add_device_to_domain("A4LC", &lcdc_device);
+       rmobile_add_device_to_domain("A4LC", &hdmi_lcdc_device);
+       rmobile_add_device_to_domain("A4LC", &meram_device);
+       rmobile_add_device_to_domain("A4MP", &fsi_device);
+       rmobile_add_device_to_domain("A3SP", &usbhs0_device);
+       rmobile_add_device_to_domain("A3SP", &usbhs1_device);
+       rmobile_add_device_to_domain("A3SP", &nand_flash_device);
+       rmobile_add_device_to_domain("A3SP", &sh_mmcif_device);
+       rmobile_add_device_to_domain("A3SP", &sdhi0_device);
 #if !defined(CONFIG_MMC_SH_MMCIF) && !defined(CONFIG_MMC_SH_MMCIF_MODULE)
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sdhi1_device);
+       rmobile_add_device_to_domain("A3SP", &sdhi1_device);
 #endif
-       rmobile_add_device_to_domain(&sh7372_pd_a3sp, &sdhi2_device);
-       rmobile_add_device_to_domain(&sh7372_pd_a4r, &ceu_device);
+       rmobile_add_device_to_domain("A3SP", &sdhi2_device);
+       rmobile_add_device_to_domain("A4R", &ceu_device);
 
        hdmi_init_pm_clock();
        sh7372_pm_init();
index 5a402840fe28afe2d630e8496d1edb6a69b0a9d8..0c25fc9826864dda2f9757d366b6f7cc02ea9636 100644 (file)
@@ -31,13 +31,13 @@ struct rmobile_pm_domain *to_rmobile_pd(struct generic_pm_domain *d)
 
 #ifdef CONFIG_PM
 extern void rmobile_init_pm_domain(struct rmobile_pm_domain *rmobile_pd);
-extern void rmobile_add_device_to_domain(struct rmobile_pm_domain *rmobile_pd,
+extern void rmobile_add_device_to_domain(const char *domain_name,
                                        struct platform_device *pdev);
 extern void rmobile_pm_add_subdomain(struct rmobile_pm_domain *rmobile_pd,
                                    struct rmobile_pm_domain *rmobile_sd);
 #else
 #define rmobile_init_pm_domain(pd) do { } while (0)
-#define rmobile_add_device_to_domain(pd, pdev) do { } while (0)
+#define rmobile_add_device_to_domain(name, pdev) do { } while (0)
 #define rmobile_pm_add_subdomain(pd, sd) do { } while (0)
 #endif /* CONFIG_PM */
 
index a8562540f1d64f44cd87d12960e2f82d4440a69d..c94056d6a029c7f152966db271b369616db6fa92 100644 (file)
@@ -149,12 +149,12 @@ void rmobile_init_pm_domain(struct rmobile_pm_domain *rmobile_pd)
        __rmobile_pd_power_up(rmobile_pd, false);
 }
 
-void rmobile_add_device_to_domain(struct rmobile_pm_domain *rmobile_pd,
+void rmobile_add_device_to_domain(const char *domain_name,
                                 struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
 
-       pm_genpd_add_device(&rmobile_pd->genpd, dev);
+       pm_genpd_name_add_device(domain_name, dev);
        if (pm_clk_no_clocks(dev))
                pm_clk_add(dev, NULL);
 }
index 78948a9dba0ec47547f5fca10b7aa71452600d7b..db7af56855403fac9cda833886ed4fc3667b8873 100644 (file)
@@ -688,16 +688,16 @@ void __init r8a7740_add_standard_devices(void)
 
        /* add devices to PM domain  */
 
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif0_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif1_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif2_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif3_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif4_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif5_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif6_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scif7_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &scifb_device);
-       rmobile_add_device_to_domain(&r8a7740_pd_a3sp,  &i2c1_device);
+       rmobile_add_device_to_domain("A3SP",    &scif0_device);
+       rmobile_add_device_to_domain("A3SP",    &scif1_device);
+       rmobile_add_device_to_domain("A3SP",    &scif2_device);
+       rmobile_add_device_to_domain("A3SP",    &scif3_device);
+       rmobile_add_device_to_domain("A3SP",    &scif4_device);
+       rmobile_add_device_to_domain("A3SP",    &scif5_device);
+       rmobile_add_device_to_domain("A3SP",    &scif6_device);
+       rmobile_add_device_to_domain("A3SP",    &scif7_device);
+       rmobile_add_device_to_domain("A3SP",    &scifb_device);
+       rmobile_add_device_to_domain("A3SP",    &i2c1_device);
 }
 
 static void __init r8a7740_earlytimer_init(void)
index 838a87be1d5c31cc46a932d58f27a73f00066ca9..95f06c8fb855ae70195e2b4326f23152a2b556e8 100644 (file)
@@ -1023,30 +1023,30 @@ 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_device_to_domain("A3RV", &vpu_device);
+       rmobile_add_device_to_domain("A4MP", &spu0_device);
+       rmobile_add_device_to_domain("A4MP", &spu1_device);
+       rmobile_add_device_to_domain("A3SP", &scif0_device);
+       rmobile_add_device_to_domain("A3SP", &scif1_device);
+       rmobile_add_device_to_domain("A3SP", &scif2_device);
+       rmobile_add_device_to_domain("A3SP", &scif3_device);
+       rmobile_add_device_to_domain("A3SP", &scif4_device);
+       rmobile_add_device_to_domain("A3SP", &scif5_device);
+       rmobile_add_device_to_domain("A3SP", &scif6_device);
+       rmobile_add_device_to_domain("A3SP", &iic1_device);
+       rmobile_add_device_to_domain("A3SP", &dma0_device);
+       rmobile_add_device_to_domain("A3SP", &dma1_device);
+       rmobile_add_device_to_domain("A3SP", &dma2_device);
+       rmobile_add_device_to_domain("A3SP", &usb_dma0_device);
+       rmobile_add_device_to_domain("A3SP", &usb_dma1_device);
+       rmobile_add_device_to_domain("A4R", &iic0_device);
+       rmobile_add_device_to_domain("A4R", &veu0_device);
+       rmobile_add_device_to_domain("A4R", &veu1_device);
+       rmobile_add_device_to_domain("A4R", &veu2_device);
+       rmobile_add_device_to_domain("A4R", &veu3_device);
+       rmobile_add_device_to_domain("A4R", &jpu_device);
+       rmobile_add_device_to_domain("A4R", &tmu00_device);
+       rmobile_add_device_to_domain("A4R", &tmu01_device);
 }
 
 static void __init sh7372_earlytimer_init(void)