ARM: sa1100: use machine specific hook for late init
authorShawn Guo <shawn.guo@linaro.org>
Thu, 26 Apr 2012 13:22:45 +0000 (21:22 +0800)
committerShawn Guo <shawn.guo@linaro.org>
Tue, 8 May 2012 12:36:34 +0000 (20:36 +0800)
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
16 files changed:
arch/arm/mach-sa1100/assabet.c
arch/arm/mach-sa1100/badge4.c
arch/arm/mach-sa1100/cerf.c
arch/arm/mach-sa1100/collie.c
arch/arm/mach-sa1100/generic.c
arch/arm/mach-sa1100/generic.h
arch/arm/mach-sa1100/h3100.c
arch/arm/mach-sa1100/h3600.c
arch/arm/mach-sa1100/hackkit.c
arch/arm/mach-sa1100/jornada720.c
arch/arm/mach-sa1100/lart.c
arch/arm/mach-sa1100/nanoengine.c
arch/arm/mach-sa1100/pleb.c
arch/arm/mach-sa1100/pm.c
arch/arm/mach-sa1100/shannon.c
arch/arm/mach-sa1100/simpad.c

index 375d3f779a88a6f213aa296fd12aef7fd0631d0f..d1dc7f1a239ca057a5264eef71e05df77e885eda 100644 (file)
@@ -538,6 +538,7 @@ MACHINE_START(ASSABET, "Intel-Assabet")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = assabet_init,
+       .init_late      = sa11x0_init_late,
 #ifdef CONFIG_SA1111
        .dma_zone_size  = SZ_1M,
 #endif
index e0f0c030258c5614bedf2abc8bd5d05e946e4233..b30fb99b587c9fe1025def432f7c7c0a6eb9bbf2 100644 (file)
@@ -305,6 +305,7 @@ MACHINE_START(BADGE4, "Hewlett-Packard Laboratories BadgePAD 4")
        .map_io         = badge4_map_io,
        .nr_irqs        = SA1100_NR_IRQS,
        .init_irq       = sa1100_init_irq,
+       .init_late      = sa11x0_init_late,
        .timer          = &sa1100_timer,
 #ifdef CONFIG_SA1111
        .dma_zone_size  = SZ_1M,
index 4a61f60e0502dc595dd54dc0a0a2e46a149227da..09d7f4b4b35487509840fe72ad0dd2d313c0e285 100644 (file)
@@ -134,5 +134,6 @@ MACHINE_START(CERF, "Intrinsyc CerfBoard/CerfCube")
        .init_irq       = cerf_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = cerf_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index c7f418b0cde9bde3ba23c8d1ea73533fa775b700..ea5cff38745c63ab666051695b5299497ae9b580 100644 (file)
@@ -401,5 +401,6 @@ MACHINE_START(COLLIE, "Sharp-Collie")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = collie_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index 7c524b4e415d7ec7843dcbd7987c663d2f447bd9..49468e69b1791a68472889afdfa79b778784c2bc 100644 (file)
@@ -359,6 +359,10 @@ static int __init sa1100_init(void)
 
 arch_initcall(sa1100_init);
 
+void __init sa11x0_init_late(void)
+{
+       sa11x0_pm_init();
+}
 
 /*
  * Common I/O mapping:
index 9eb3b3cd5a63501f18297676fc8c32dbdca21b57..a5b7c13da3e31bc7d331068f72c32420f95759b5 100644 (file)
@@ -11,6 +11,7 @@ extern void __init sa1100_map_io(void);
 extern void __init sa1100_init_irq(void);
 extern void __init sa1100_init_gpio(void);
 extern void sa11x0_restart(char, const char *);
+extern void sa11x0_init_late(void);
 
 #define SET_BANK(__nr,__start,__size) \
        mi->bank[__nr].start = (__start), \
@@ -41,3 +42,9 @@ void sa11x0_register_mcp(struct mcp_plat_data *data);
 
 struct sa1100fb_mach_info;
 void sa11x0_register_lcd(struct sa1100fb_mach_info *inf);
+
+#ifdef CONFIG_PM
+int sa11x0_pm_init(void);
+#else
+static inline int sa11x0_pm_init(void) { return 0; }
+#endif
index b2e8d0f418e09ef08ce2529d25defc7f9ef6aa9e..e1571eab08aeb3b5f5d48d5c62b2b7cea206c0cf 100644 (file)
@@ -110,6 +110,7 @@ MACHINE_START(H3100, "Compaq iPAQ H3100")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = h3100_mach_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
 
index cb6659f294fe37b35687fefd448d5d572a3ed274..ba7a2901ab88232da9bea4df8abc38266cc4544d 100644 (file)
@@ -160,6 +160,7 @@ MACHINE_START(H3600, "Compaq iPAQ H3600")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = h3600_mach_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
 
index 5535475bf58334b222733bd5fd6d16b76360aa66..7f86bd911826a4327462d577d43c53031c2fe185 100644 (file)
@@ -199,5 +199,6 @@ MACHINE_START(HACKKIT, "HackKit Cpu Board")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = hackkit_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index ca7a7e834720a1cb3ef692f35f1d1b09ec2cf5f0..e3084f47027d8bf32c90af399825617cc4b62fa3 100644 (file)
@@ -348,6 +348,7 @@ MACHINE_START(JORNADA720, "HP Jornada 720")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = jornada720_mach_init,
+       .init_late      = sa11x0_init_late,
 #ifdef CONFIG_SA1111
        .dma_zone_size  = SZ_1M,
 #endif
index eb6534e0b0d01c64e1ee88fa65bd23fbadaea99d..b775a0abec0af7575dafebe8673eef8758c14300 100644 (file)
@@ -147,6 +147,7 @@ MACHINE_START(LART, "LART")
        .nr_irqs        = SA1100_NR_IRQS,
        .init_irq       = sa1100_init_irq,
        .init_machine   = lart_init,
+       .init_late      = sa11x0_init_late,
        .timer          = &sa1100_timer,
        .restart        = sa11x0_restart,
 MACHINE_END
index 8f6446b9f025231669c19aa84ad2fed17d057e62..41f69d97066f5c0a5e1783d42b6be9dfaf3bbd9d 100644 (file)
@@ -112,5 +112,6 @@ MACHINE_START(NANOENGINE, "BSE nanoEngine")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = nanoengine_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index 1602575a0d5c47f8c3be09387f1fff63c737e41e..37fe0a0a53692951db7335c05eb5249419e1d010 100644 (file)
@@ -135,5 +135,6 @@ MACHINE_START(PLEB, "PLEB")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = pleb_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index 2fa499ec6afebf52cad16e2641192029a1cf44ef..690cf0ce5c0caa8f06ca8b10d0b31d0a36cc3032 100644 (file)
@@ -117,10 +117,8 @@ static const struct platform_suspend_ops sa11x0_pm_ops = {
        .valid          = suspend_valid_only_mem,
 };
 
-static int __init sa11x0_pm_init(void)
+int __init sa11x0_pm_init(void)
 {
        suspend_set_ops(&sa11x0_pm_ops);
        return 0;
 }
-
-late_initcall(sa11x0_pm_init);
index ca8bf59b9047d0fe07a31d4fc9dda277271c4b07..5d33fc3108ef7c3d4c291f00b2199b429c90ef21 100644 (file)
@@ -104,5 +104,6 @@ MACHINE_START(SHANNON, "Shannon (AKA: Tuxscreen)")
        .init_irq       = sa1100_init_irq,
        .timer          = &sa1100_timer,
        .init_machine   = shannon_init,
+       .init_late      = sa11x0_init_late,
        .restart        = sa11x0_restart,
 MACHINE_END
index 3efae03cb3d7defef1f3f88e7112b09addb3a1cf..fbd53593be54ff37e409c9909c684682e5ce7dd0 100644 (file)
@@ -395,6 +395,7 @@ MACHINE_START(SIMPAD, "Simpad")
        .map_io         = simpad_map_io,
        .nr_irqs        = SA1100_NR_IRQS,
        .init_irq       = sa1100_init_irq,
+       .init_late      = sa11x0_init_late,
        .timer          = &sa1100_timer,
        .restart        = sa11x0_restart,
 MACHINE_END
This page took 0.030379 seconds and 5 git commands to generate.