aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c64xx
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-05-26 16:14:01 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-05-26 16:14:01 -0400
commitf465d145d76803fe6332092775d891c8c509aa44 (patch)
tree45889e2eee7e8288ef269e9b661111364a71c25f /arch/arm/mach-s3c64xx
parent30b842889eea1bea02dff55b13d2ddf07a46ce78 (diff)
parent80b9abf973462499c1a0110df47f62cc90361e2c (diff)
Merge tag 'cleanup-initcall' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull sweeping late_initcall cleanup for arm-soc from Olof Johansson: "This is a patch series from Shawn Guo that moves from individual late_initcalls() to using a member in the machine structure to invoke a platform's late initcalls. This cleanup is a step in the move towards multiplatform kernels since it would reduce the need to check for compatible platforms in each and every initcall." Fix up trivial conflicts in arch/arm/mach-{exynos/mach-universal_c210.c, imx/mach-cpuimx51.c, omap2/board-generic.c} due to changes nearby (and, in the case of cpuimx51.c the board support being deleted) * tag 'cleanup-initcall' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: ARM: ux500: use machine specific hook for late init ARM: tegra: use machine specific hook for late init ARM: shmobile: use machine specific hook for late init ARM: sa1100: use machine specific hook for late init ARM: s3c64xx: use machine specific hook for late init ARM: prima2: use machine specific hook for late init ARM: pnx4008: use machine specific hook for late init ARM: omap2: use machine specific hook for late init ARM: omap1: use machine specific hook for late init ARM: msm: use machine specific hook for late init ARM: imx: use machine specific hook for late init ARM: exynos: use machine specific hook for late init ARM: ep93xx: use machine specific hook for late init ARM: davinci: use machine specific hook for late init ARM: provide a late_initcall hook for platform initialization
Diffstat (limited to 'arch/arm/mach-s3c64xx')
-rw-r--r--arch/arm/mach-s3c64xx/common.c5
-rw-r--r--arch/arm/mach-s3c64xx/common.h7
-rw-r--r--arch/arm/mach-s3c64xx/mach-anw6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-hmt.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-mini6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-ncp.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-real6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq5.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smartq7.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6400.c1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6410.c1
-rw-r--r--arch/arm/mach-s3c64xx/pm.c3
13 files changed, 23 insertions, 2 deletions
diff --git a/arch/arm/mach-s3c64xx/common.c b/arch/arm/mach-s3c64xx/common.c
index b313380342a5..be746e33e86c 100644
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@ -384,3 +384,8 @@ void s3c64xx_restart(char mode, const char *cmd)
384 /* if all else fails, or mode was for soft, jump to 0 */ 384 /* if all else fails, or mode was for soft, jump to 0 */
385 soft_restart(0); 385 soft_restart(0);
386} 386}
387
388void __init s3c64xx_init_late(void)
389{
390 s3c64xx_pm_late_initcall();
391}
diff --git a/arch/arm/mach-s3c64xx/common.h b/arch/arm/mach-s3c64xx/common.h
index 7a10be629aba..6cfc99bdfb37 100644
--- a/arch/arm/mach-s3c64xx/common.h
+++ b/arch/arm/mach-s3c64xx/common.h
@@ -24,6 +24,7 @@ void s3c64xx_register_clocks(unsigned long xtal, unsigned armclk_limit);
24void s3c64xx_setup_clocks(void); 24void s3c64xx_setup_clocks(void);
25 25
26void s3c64xx_restart(char mode, const char *cmd); 26void s3c64xx_restart(char mode, const char *cmd);
27void s3c64xx_init_late(void);
27 28
28#ifdef CONFIG_CPU_S3C6400 29#ifdef CONFIG_CPU_S3C6400
29 30
@@ -51,4 +52,10 @@ extern void s3c6410_init_clocks(int xtal);
51#define s3c6410_init NULL 52#define s3c6410_init NULL
52#endif 53#endif
53 54
55#ifdef CONFIG_PM
56int __init s3c64xx_pm_late_initcall(void);
57#else
58static inline int s3c64xx_pm_late_initcall(void) { return 0; }
59#endif
60
54#endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */ 61#endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */
diff --git a/arch/arm/mach-s3c64xx/mach-anw6410.c b/arch/arm/mach-s3c64xx/mach-anw6410.c
index f252691fb209..314df0518afd 100644
--- a/arch/arm/mach-s3c64xx/mach-anw6410.c
+++ b/arch/arm/mach-s3c64xx/mach-anw6410.c
@@ -230,6 +230,7 @@ MACHINE_START(ANW6410, "A&W6410")
230 .handle_irq = vic_handle_irq, 230 .handle_irq = vic_handle_irq,
231 .map_io = anw6410_map_io, 231 .map_io = anw6410_map_io,
232 .init_machine = anw6410_machine_init, 232 .init_machine = anw6410_machine_init,
233 .init_late = s3c64xx_init_late,
233 .timer = &s3c24xx_timer, 234 .timer = &s3c24xx_timer,
234 .restart = s3c64xx_restart, 235 .restart = s3c64xx_restart,
235MACHINE_END 236MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index aa1137fb47e6..eda5e027b109 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -813,6 +813,7 @@ MACHINE_START(WLF_CRAGG_6410, "Wolfson Cragganmore 6410")
813 .handle_irq = vic_handle_irq, 813 .handle_irq = vic_handle_irq,
814 .map_io = crag6410_map_io, 814 .map_io = crag6410_map_io,
815 .init_machine = crag6410_machine_init, 815 .init_machine = crag6410_machine_init,
816 .init_late = s3c64xx_init_late,
816 .timer = &s3c24xx_timer, 817 .timer = &s3c24xx_timer,
817 .restart = s3c64xx_restart, 818 .restart = s3c64xx_restart,
818MACHINE_END 819MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-hmt.c b/arch/arm/mach-s3c64xx/mach-hmt.c
index 521e07b8501b..1bf6b9da20fc 100644
--- a/arch/arm/mach-s3c64xx/mach-hmt.c
+++ b/arch/arm/mach-s3c64xx/mach-hmt.c
@@ -272,6 +272,7 @@ MACHINE_START(HMT, "Airgoo-HMT")
272 .handle_irq = vic_handle_irq, 272 .handle_irq = vic_handle_irq,
273 .map_io = hmt_map_io, 273 .map_io = hmt_map_io,
274 .init_machine = hmt_machine_init, 274 .init_machine = hmt_machine_init,
275 .init_late = s3c64xx_init_late,
275 .timer = &s3c24xx_timer, 276 .timer = &s3c24xx_timer,
276 .restart = s3c64xx_restart, 277 .restart = s3c64xx_restart,
277MACHINE_END 278MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-mini6410.c b/arch/arm/mach-s3c64xx/mach-mini6410.c
index b2166d4a5538..f8ea61ea3b33 100644
--- a/arch/arm/mach-s3c64xx/mach-mini6410.c
+++ b/arch/arm/mach-s3c64xx/mach-mini6410.c
@@ -339,6 +339,7 @@ MACHINE_START(MINI6410, "MINI6410")
339 .handle_irq = vic_handle_irq, 339 .handle_irq = vic_handle_irq,
340 .map_io = mini6410_map_io, 340 .map_io = mini6410_map_io,
341 .init_machine = mini6410_machine_init, 341 .init_machine = mini6410_machine_init,
342 .init_late = s3c64xx_init_late,
342 .timer = &s3c24xx_timer, 343 .timer = &s3c24xx_timer,
343 .restart = s3c64xx_restart, 344 .restart = s3c64xx_restart,
344MACHINE_END 345MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-ncp.c b/arch/arm/mach-s3c64xx/mach-ncp.c
index 0efa2ba783b2..cad2e05eddf7 100644
--- a/arch/arm/mach-s3c64xx/mach-ncp.c
+++ b/arch/arm/mach-s3c64xx/mach-ncp.c
@@ -104,6 +104,7 @@ MACHINE_START(NCP, "NCP")
104 .handle_irq = vic_handle_irq, 104 .handle_irq = vic_handle_irq,
105 .map_io = ncp_map_io, 105 .map_io = ncp_map_io,
106 .init_machine = ncp_machine_init, 106 .init_machine = ncp_machine_init,
107 .init_late = s3c64xx_init_late,
107 .timer = &s3c24xx_timer, 108 .timer = &s3c24xx_timer,
108 .restart = s3c64xx_restart, 109 .restart = s3c64xx_restart,
109MACHINE_END 110MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-real6410.c b/arch/arm/mach-s3c64xx/mach-real6410.c
index 5c08266cea21..b92d8e17d502 100644
--- a/arch/arm/mach-s3c64xx/mach-real6410.c
+++ b/arch/arm/mach-s3c64xx/mach-real6410.c
@@ -320,6 +320,7 @@ MACHINE_START(REAL6410, "REAL6410")
320 .handle_irq = vic_handle_irq, 320 .handle_irq = vic_handle_irq,
321 .map_io = real6410_map_io, 321 .map_io = real6410_map_io,
322 .init_machine = real6410_machine_init, 322 .init_machine = real6410_machine_init,
323 .init_late = s3c64xx_init_late,
323 .timer = &s3c24xx_timer, 324 .timer = &s3c24xx_timer,
324 .restart = s3c64xx_restart, 325 .restart = s3c64xx_restart,
325MACHINE_END 326MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq5.c b/arch/arm/mach-s3c64xx/mach-smartq5.c
index 3f42431d4dda..c5021d0335c6 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq5.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq5.c
@@ -152,6 +152,7 @@ MACHINE_START(SMARTQ5, "SmartQ 5")
152 .handle_irq = vic_handle_irq, 152 .handle_irq = vic_handle_irq,
153 .map_io = smartq_map_io, 153 .map_io = smartq_map_io,
154 .init_machine = smartq5_machine_init, 154 .init_machine = smartq5_machine_init,
155 .init_late = s3c64xx_init_late,
155 .timer = &s3c24xx_timer, 156 .timer = &s3c24xx_timer,
156 .restart = s3c64xx_restart, 157 .restart = s3c64xx_restart,
157MACHINE_END 158MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq7.c b/arch/arm/mach-s3c64xx/mach-smartq7.c
index e5c09b6db967..aa9072a4cbef 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq7.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq7.c
@@ -168,6 +168,7 @@ MACHINE_START(SMARTQ7, "SmartQ 7")
168 .handle_irq = vic_handle_irq, 168 .handle_irq = vic_handle_irq,
169 .map_io = smartq_map_io, 169 .map_io = smartq_map_io,
170 .init_machine = smartq7_machine_init, 170 .init_machine = smartq7_machine_init,
171 .init_late = s3c64xx_init_late,
171 .timer = &s3c24xx_timer, 172 .timer = &s3c24xx_timer,
172 .restart = s3c64xx_restart, 173 .restart = s3c64xx_restart,
173MACHINE_END 174MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6400.c b/arch/arm/mach-s3c64xx/mach-smdk6400.c
index 5f096534f4c4..b0f4525c66bd 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6400.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6400.c
@@ -93,6 +93,7 @@ MACHINE_START(SMDK6400, "SMDK6400")
93 .handle_irq = vic_handle_irq, 93 .handle_irq = vic_handle_irq,
94 .map_io = smdk6400_map_io, 94 .map_io = smdk6400_map_io,
95 .init_machine = smdk6400_machine_init, 95 .init_machine = smdk6400_machine_init,
96 .init_late = s3c64xx_init_late,
96 .timer = &s3c24xx_timer, 97 .timer = &s3c24xx_timer,
97 .restart = s3c64xx_restart, 98 .restart = s3c64xx_restart,
98MACHINE_END 99MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6410.c b/arch/arm/mach-s3c64xx/mach-smdk6410.c
index 7da044f738ac..d44319b09412 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6410.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c
@@ -702,6 +702,7 @@ MACHINE_START(SMDK6410, "SMDK6410")
702 .handle_irq = vic_handle_irq, 702 .handle_irq = vic_handle_irq,
703 .map_io = smdk6410_map_io, 703 .map_io = smdk6410_map_io,
704 .init_machine = smdk6410_machine_init, 704 .init_machine = smdk6410_machine_init,
705 .init_late = s3c64xx_init_late,
705 .timer = &s3c24xx_timer, 706 .timer = &s3c24xx_timer,
706 .restart = s3c64xx_restart, 707 .restart = s3c64xx_restart,
707MACHINE_END 708MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/pm.c b/arch/arm/mach-s3c64xx/pm.c
index 7d3e81b9dd06..7feb426fc202 100644
--- a/arch/arm/mach-s3c64xx/pm.c
+++ b/arch/arm/mach-s3c64xx/pm.c
@@ -365,10 +365,9 @@ static __init int s3c64xx_pm_initcall(void)
365} 365}
366arch_initcall(s3c64xx_pm_initcall); 366arch_initcall(s3c64xx_pm_initcall);
367 367
368static __init int s3c64xx_pm_late_initcall(void) 368int __init s3c64xx_pm_late_initcall(void)
369{ 369{
370 pm_genpd_poweroff_unused(); 370 pm_genpd_poweroff_unused();
371 371
372 return 0; 372 return 0;
373} 373}
374late_initcall(s3c64xx_pm_late_initcall);