ARM: mach-shmobile: sh7372 A4MP support
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Sun, 10 Jul 2011 08:12:08 +0000 (10:12 +0200)
committerRafael J. Wysocki <rjw@sisk.pl>
Sun, 10 Jul 2011 08:12:08 +0000 (10:12 +0200)
Add support for the sh7372 A4MP power domain
and hook up the FSI/SPU2 device.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
arch/arm/mach-shmobile/board-ap4evb.c
arch/arm/mach-shmobile/board-mackerel.c
arch/arm/mach-shmobile/include/mach/sh7372.h
arch/arm/mach-shmobile/pm-sh7372.c
arch/arm/mach-shmobile/setup-sh7372.c

index 4226db6a0b8beac568870ea2d5f2327babd840e4..b473b8efac68dce3a80d6613d55ad243215de691 100644 (file)
@@ -1410,6 +1410,7 @@ static void __init ap4evb_init(void)
 
        sh7372_add_device_to_domain(&sh7372_a4lc, &lcdc1_device);
        sh7372_add_device_to_domain(&sh7372_a4lc, &lcdc_device);
+       sh7372_add_device_to_domain(&sh7372_a4mp, &fsi_device);
 
        hdmi_init_pm_clock();
        fsi_init_pm_clock();
index 362b88308741d864fa6f6525c21c21604a05fcf8..5b36b6c5b448714d044fe1eb7fd8c9c2827cd95b 100644 (file)
@@ -1584,6 +1584,7 @@ static void __init mackerel_init(void)
 
        sh7372_add_device_to_domain(&sh7372_a4lc, &lcdc_device);
        sh7372_add_device_to_domain(&sh7372_a4lc, &hdmi_lcdc_device);
+       sh7372_add_device_to_domain(&sh7372_a4mp, &fsi_device);
 
        hdmi_init_pm_clock();
        sh7372_pm_init();
index 1aed9da9291877cb41f7ee0790ecf09b3f0784d2..f3ceced6ebe98c156c00962efd27f87b06caa278 100644 (file)
@@ -485,6 +485,7 @@ static inline struct sh7372_pm_domain *to_sh7372_pd(struct generic_pm_domain *d)
 
 #ifdef CONFIG_PM
 extern struct sh7372_pm_domain sh7372_a4lc;
+extern struct sh7372_pm_domain sh7372_a4mp;
 extern struct sh7372_pm_domain sh7372_a3rv;
 extern struct sh7372_pm_domain sh7372_a3ri;
 extern struct sh7372_pm_domain sh7372_a3sg;
index 474a15a29dec2c663437fc0bff6623465b4eb837..f3bd95f1a4a09823e24c1e96f233ba925555eb0d 100644 (file)
@@ -125,6 +125,10 @@ struct sh7372_pm_domain sh7372_a4lc = {
        .bit_shift = 1,
 };
 
+struct sh7372_pm_domain sh7372_a4mp = {
+       .bit_shift = 2,
+};
+
 struct sh7372_pm_domain sh7372_a3rv = {
        .bit_shift = 6,
 };
index b219ceaf85bf0398a06868942bd05d6072cf2c33..9b0cd436f8cdae74c1d633765165694aef088b30 100644 (file)
@@ -842,6 +842,7 @@ static struct platform_device *sh7372_late_devices[] __initdata = {
 void __init sh7372_add_standard_devices(void)
 {
        sh7372_init_pm_domain(&sh7372_a4lc);
+       sh7372_init_pm_domain(&sh7372_a4mp);
        sh7372_init_pm_domain(&sh7372_a3rv);
        sh7372_init_pm_domain(&sh7372_a3ri);
        sh7372_init_pm_domain(&sh7372_a3sg);
@@ -853,6 +854,8 @@ void __init sh7372_add_standard_devices(void)
                            ARRAY_SIZE(sh7372_late_devices));
 
        sh7372_add_device_to_domain(&sh7372_a3rv, &vpu_device);
+       sh7372_add_device_to_domain(&sh7372_a4mp, &spu0_device);
+       sh7372_add_device_to_domain(&sh7372_a4mp, &spu1_device);
 }
 
 void __init sh7372_add_early_devices(void)