ARM: s3c64xx: use machine specific hook for late init
authorShawn Guo <shawn.guo@linaro.org>
Thu, 26 Apr 2012 13:08:52 +0000 (21:08 +0800)
committerShawn Guo <shawn.guo@linaro.org>
Tue, 8 May 2012 12:36:24 +0000 (20:36 +0800)
Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
13 files changed:
arch/arm/mach-s3c64xx/common.c
arch/arm/mach-s3c64xx/common.h
arch/arm/mach-s3c64xx/mach-anw6410.c
arch/arm/mach-s3c64xx/mach-crag6410.c
arch/arm/mach-s3c64xx/mach-hmt.c
arch/arm/mach-s3c64xx/mach-mini6410.c
arch/arm/mach-s3c64xx/mach-ncp.c
arch/arm/mach-s3c64xx/mach-real6410.c
arch/arm/mach-s3c64xx/mach-smartq5.c
arch/arm/mach-s3c64xx/mach-smartq7.c
arch/arm/mach-s3c64xx/mach-smdk6400.c
arch/arm/mach-s3c64xx/mach-smdk6410.c
arch/arm/mach-s3c64xx/pm.c

index b313380342a5790efbcb62104353e54f44672dbd..be746e33e86c08a6d91fdb371c9cae2f27c8a91d 100644 (file)
@@ -384,3 +384,8 @@ void s3c64xx_restart(char mode, const char *cmd)
        /* if all else fails, or mode was for soft, jump to 0 */
        soft_restart(0);
 }
+
+void __init s3c64xx_init_late(void)
+{
+       s3c64xx_pm_late_initcall();
+}
index 7a10be629aba26723cb51bc28d460a0a5dc4ef53..6cfc99bdfb3733e3e311c0872a4d3df82558f9b0 100644 (file)
@@ -24,6 +24,7 @@ void s3c64xx_register_clocks(unsigned long xtal, unsigned armclk_limit);
 void s3c64xx_setup_clocks(void);
 
 void s3c64xx_restart(char mode, const char *cmd);
+void s3c64xx_init_late(void);
 
 #ifdef CONFIG_CPU_S3C6400
 
@@ -51,4 +52,10 @@ extern void s3c6410_init_clocks(int xtal);
 #define s3c6410_init NULL
 #endif
 
+#ifdef CONFIG_PM
+int __init s3c64xx_pm_late_initcall(void);
+#else
+static inline int s3c64xx_pm_late_initcall(void) { return 0; }
+#endif
+
 #endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */
index b86f2779e4e693204509bf53e8ee7184046a29f8..8808aa5e00154929244a513050fa4683b0c69bd0 100644 (file)
@@ -241,6 +241,7 @@ MACHINE_START(ANW6410, "A&W6410")
        .handle_irq     = vic_handle_irq,
        .map_io         = anw6410_map_io,
        .init_machine   = anw6410_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index e20bf58353652fdc6d39d852c696f85e206ad68f..607d3f1bb98eef1ea8336d912ac9c14c992e3343 100644 (file)
@@ -811,6 +811,7 @@ MACHINE_START(WLF_CRAGG_6410, "Wolfson Cragganmore 6410")
        .handle_irq     = vic_handle_irq,
        .map_io         = crag6410_map_io,
        .init_machine   = crag6410_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index 521e07b8501b18780d335f0162bac4cd140fdb03..1bf6b9da20fc487aaf78086ad715bb50f5351023 100644 (file)
@@ -272,6 +272,7 @@ MACHINE_START(HMT, "Airgoo-HMT")
        .handle_irq     = vic_handle_irq,
        .map_io         = hmt_map_io,
        .init_machine   = hmt_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index c34c2ab22ead67f2258b457a479d8be3f7dfa59b..5aef599ed9123904e33e03d6c9a551a0f0b42ad7 100644 (file)
@@ -350,6 +350,7 @@ MACHINE_START(MINI6410, "MINI6410")
        .handle_irq     = vic_handle_irq,
        .map_io         = mini6410_map_io,
        .init_machine   = mini6410_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index 0efa2ba783b269f2c8824974f34c2e33ae7935dd..cad2e05eddf781e2429c2afc143626ce563d7f59 100644 (file)
@@ -104,6 +104,7 @@ MACHINE_START(NCP, "NCP")
        .handle_irq     = vic_handle_irq,
        .map_io         = ncp_map_io,
        .init_machine   = ncp_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index be2a9a22ab74631dc46f066ac73aa707f8600fc2..a88b60feaba911ded8de42aa79911ad29e82e4e6 100644 (file)
@@ -331,6 +331,7 @@ MACHINE_START(REAL6410, "REAL6410")
        .handle_irq     = vic_handle_irq,
        .map_io         = real6410_map_io,
        .init_machine   = real6410_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index 3f42431d4ddaf5ce47c186fd977d59e1d4f87623..c5021d0335c6a3c57036b86e010e1a926b96e6b1 100644 (file)
@@ -152,6 +152,7 @@ MACHINE_START(SMARTQ5, "SmartQ 5")
        .handle_irq     = vic_handle_irq,
        .map_io         = smartq_map_io,
        .init_machine   = smartq5_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index e5c09b6db9677c06f625fba604e8b19fe1662a49..aa9072a4cbef4b72d4652887a819fc7a882bfeb8 100644 (file)
@@ -168,6 +168,7 @@ MACHINE_START(SMARTQ7, "SmartQ 7")
        .handle_irq     = vic_handle_irq,
        .map_io         = smartq_map_io,
        .init_machine   = smartq7_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index 5f096534f4c4daf02c337a1371ba9d0393bac6e4..b0f4525c66bdf4549f0276bc4b085c9c7b1c898c 100644 (file)
@@ -93,6 +93,7 @@ MACHINE_START(SMDK6400, "SMDK6400")
        .handle_irq     = vic_handle_irq,
        .map_io         = smdk6400_map_io,
        .init_machine   = smdk6400_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index d55bc96d9582f9d24301da64e64d90984c7c585a..315a8b4834affcb46cb4ba2d7b35f862315977a6 100644 (file)
@@ -709,6 +709,7 @@ MACHINE_START(SMDK6410, "SMDK6410")
        .handle_irq     = vic_handle_irq,
        .map_io         = smdk6410_map_io,
        .init_machine   = smdk6410_machine_init,
+       .init_late      = s3c64xx_init_late,
        .timer          = &s3c24xx_timer,
        .restart        = s3c64xx_restart,
 MACHINE_END
index 7d3e81b9dd06229034603aa260064384d8d44a5d..7feb426fc202d10be8f74a8992b5de212b6e4ba0 100644 (file)
@@ -365,10 +365,9 @@ static __init int s3c64xx_pm_initcall(void)
 }
 arch_initcall(s3c64xx_pm_initcall);
 
-static __init int s3c64xx_pm_late_initcall(void)
+int __init s3c64xx_pm_late_initcall(void)
 {
        pm_genpd_poweroff_unused();
 
        return 0;
 }
-late_initcall(s3c64xx_pm_late_initcall);
This page took 0.029002 seconds and 5 git commands to generate.