aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ep93xx
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-11-05 05:54:14 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-05 07:57:10 -0500
commit3275166e0355131aa2349bf614a32591cfe1e118 (patch)
tree0d33648897ce20c0f0a73317ea94e8f86d00091f /arch/arm/mach-ep93xx
parentda908260f21225d6f19ab29cfa401e550000eeae (diff)
ARM: restart: ep93xx: use new restart hook
Hook these platforms restart code into the new restart hook rather than using arch_reset(). Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ep93xx')
-rw-r--r--arch/arm/mach-ep93xx/adssphere.c1
-rw-r--r--arch/arm/mach-ep93xx/core.c12
-rw-r--r--arch/arm/mach-ep93xx/edb93xx.c8
-rw-r--r--arch/arm/mach-ep93xx/gesbc9312.c1
-rw-r--r--arch/arm/mach-ep93xx/include/mach/platform.h2
-rw-r--r--arch/arm/mach-ep93xx/include/mach/system.h11
-rw-r--r--arch/arm/mach-ep93xx/micro9.c4
-rw-r--r--arch/arm/mach-ep93xx/simone.c1
-rw-r--r--arch/arm/mach-ep93xx/snappercl15.c1
-rw-r--r--arch/arm/mach-ep93xx/ts72xx.c1
-rw-r--r--arch/arm/mach-ep93xx/vision_ep9307.c1
11 files changed, 32 insertions, 11 deletions
diff --git a/arch/arm/mach-ep93xx/adssphere.c b/arch/arm/mach-ep93xx/adssphere.c
index 0713448206a5..7b41651728cd 100644
--- a/arch/arm/mach-ep93xx/adssphere.c
+++ b/arch/arm/mach-ep93xx/adssphere.c
@@ -38,4 +38,5 @@ MACHINE_START(ADSSPHERE, "ADS Sphere board")
38 .init_irq = ep93xx_init_irq, 38 .init_irq = ep93xx_init_irq,
39 .timer = &ep93xx_timer, 39 .timer = &ep93xx_timer,
40 .init_machine = adssphere_init_machine, 40 .init_machine = adssphere_init_machine,
41 .restart = ep93xx_restart,
41MACHINE_END 42MACHINE_END
diff --git a/arch/arm/mach-ep93xx/core.c b/arch/arm/mach-ep93xx/core.c
index 2432a6b7dcac..24203f9a6796 100644
--- a/arch/arm/mach-ep93xx/core.c
+++ b/arch/arm/mach-ep93xx/core.c
@@ -906,3 +906,15 @@ void __init ep93xx_init_devices(void)
906 platform_device_register(&ep93xx_ohci_device); 906 platform_device_register(&ep93xx_ohci_device);
907 platform_device_register(&ep93xx_leds); 907 platform_device_register(&ep93xx_leds);
908} 908}
909
910void ep93xx_restart(char mode, const char *cmd)
911{
912 /*
913 * Set then clear the SWRST bit to initiate a software reset
914 */
915 ep93xx_devcfg_set_bits(EP93XX_SYSCON_DEVCFG_SWRST);
916 ep93xx_devcfg_clear_bits(EP93XX_SYSCON_DEVCFG_SWRST);
917
918 while (1)
919 ;
920}
diff --git a/arch/arm/mach-ep93xx/edb93xx.c b/arch/arm/mach-ep93xx/edb93xx.c
index 70ef8c527d27..c5731c68acc0 100644
--- a/arch/arm/mach-ep93xx/edb93xx.c
+++ b/arch/arm/mach-ep93xx/edb93xx.c
@@ -252,6 +252,7 @@ MACHINE_START(EDB9301, "Cirrus Logic EDB9301 Evaluation Board")
252 .init_irq = ep93xx_init_irq, 252 .init_irq = ep93xx_init_irq,
253 .timer = &ep93xx_timer, 253 .timer = &ep93xx_timer,
254 .init_machine = edb93xx_init_machine, 254 .init_machine = edb93xx_init_machine,
255 .restart = ep93xx_restart,
255MACHINE_END 256MACHINE_END
256#endif 257#endif
257 258
@@ -263,6 +264,7 @@ MACHINE_START(EDB9302, "Cirrus Logic EDB9302 Evaluation Board")
263 .init_irq = ep93xx_init_irq, 264 .init_irq = ep93xx_init_irq,
264 .timer = &ep93xx_timer, 265 .timer = &ep93xx_timer,
265 .init_machine = edb93xx_init_machine, 266 .init_machine = edb93xx_init_machine,
267 .restart = ep93xx_restart,
266MACHINE_END 268MACHINE_END
267#endif 269#endif
268 270
@@ -274,6 +276,7 @@ MACHINE_START(EDB9302A, "Cirrus Logic EDB9302A Evaluation Board")
274 .init_irq = ep93xx_init_irq, 276 .init_irq = ep93xx_init_irq,
275 .timer = &ep93xx_timer, 277 .timer = &ep93xx_timer,
276 .init_machine = edb93xx_init_machine, 278 .init_machine = edb93xx_init_machine,
279 .restart = ep93xx_restart,
277MACHINE_END 280MACHINE_END
278#endif 281#endif
279 282
@@ -285,6 +288,7 @@ MACHINE_START(EDB9307, "Cirrus Logic EDB9307 Evaluation Board")
285 .init_irq = ep93xx_init_irq, 288 .init_irq = ep93xx_init_irq,
286 .timer = &ep93xx_timer, 289 .timer = &ep93xx_timer,
287 .init_machine = edb93xx_init_machine, 290 .init_machine = edb93xx_init_machine,
291 .restart = ep93xx_restart,
288MACHINE_END 292MACHINE_END
289#endif 293#endif
290 294
@@ -296,6 +300,7 @@ MACHINE_START(EDB9307A, "Cirrus Logic EDB9307A Evaluation Board")
296 .init_irq = ep93xx_init_irq, 300 .init_irq = ep93xx_init_irq,
297 .timer = &ep93xx_timer, 301 .timer = &ep93xx_timer,
298 .init_machine = edb93xx_init_machine, 302 .init_machine = edb93xx_init_machine,
303 .restart = ep93xx_restart,
299MACHINE_END 304MACHINE_END
300#endif 305#endif
301 306
@@ -307,6 +312,7 @@ MACHINE_START(EDB9312, "Cirrus Logic EDB9312 Evaluation Board")
307 .init_irq = ep93xx_init_irq, 312 .init_irq = ep93xx_init_irq,
308 .timer = &ep93xx_timer, 313 .timer = &ep93xx_timer,
309 .init_machine = edb93xx_init_machine, 314 .init_machine = edb93xx_init_machine,
315 .restart = ep93xx_restart,
310MACHINE_END 316MACHINE_END
311#endif 317#endif
312 318
@@ -318,6 +324,7 @@ MACHINE_START(EDB9315, "Cirrus Logic EDB9315 Evaluation Board")
318 .init_irq = ep93xx_init_irq, 324 .init_irq = ep93xx_init_irq,
319 .timer = &ep93xx_timer, 325 .timer = &ep93xx_timer,
320 .init_machine = edb93xx_init_machine, 326 .init_machine = edb93xx_init_machine,
327 .restart = ep93xx_restart,
321MACHINE_END 328MACHINE_END
322#endif 329#endif
323 330
@@ -329,5 +336,6 @@ MACHINE_START(EDB9315A, "Cirrus Logic EDB9315A Evaluation Board")
329 .init_irq = ep93xx_init_irq, 336 .init_irq = ep93xx_init_irq,
330 .timer = &ep93xx_timer, 337 .timer = &ep93xx_timer,
331 .init_machine = edb93xx_init_machine, 338 .init_machine = edb93xx_init_machine,
339 .restart = ep93xx_restart,
332MACHINE_END 340MACHINE_END
333#endif 341#endif
diff --git a/arch/arm/mach-ep93xx/gesbc9312.c b/arch/arm/mach-ep93xx/gesbc9312.c
index 45ee205856f8..7b89e8a1bb7b 100644
--- a/arch/arm/mach-ep93xx/gesbc9312.c
+++ b/arch/arm/mach-ep93xx/gesbc9312.c
@@ -38,4 +38,5 @@ MACHINE_START(GESBC9312, "Glomation GESBC-9312-sx")
38 .init_irq = ep93xx_init_irq, 38 .init_irq = ep93xx_init_irq,
39 .timer = &ep93xx_timer, 39 .timer = &ep93xx_timer,
40 .init_machine = gesbc9312_init_machine, 40 .init_machine = gesbc9312_init_machine,
41 .restart = ep93xx_restart,
41MACHINE_END 42MACHINE_END
diff --git a/arch/arm/mach-ep93xx/include/mach/platform.h b/arch/arm/mach-ep93xx/include/mach/platform.h
index 50660455b1d8..d4c934931f9d 100644
--- a/arch/arm/mach-ep93xx/include/mach/platform.h
+++ b/arch/arm/mach-ep93xx/include/mach/platform.h
@@ -66,4 +66,6 @@ void ep93xx_register_ac97(void);
66void ep93xx_init_devices(void); 66void ep93xx_init_devices(void);
67extern struct sys_timer ep93xx_timer; 67extern struct sys_timer ep93xx_timer;
68 68
69void ep93xx_restart(char, const char *);
70
69#endif 71#endif
diff --git a/arch/arm/mach-ep93xx/include/mach/system.h b/arch/arm/mach-ep93xx/include/mach/system.h
index bdf6c4f1feef..b27a6546eb41 100644
--- a/arch/arm/mach-ep93xx/include/mach/system.h
+++ b/arch/arm/mach-ep93xx/include/mach/system.h
@@ -1,9 +1,6 @@
1/* 1/*
2 * arch/arm/mach-ep93xx/include/mach/system.h 2 * arch/arm/mach-ep93xx/include/mach/system.h
3 */ 3 */
4
5#include <mach/hardware.h>
6
7static inline void arch_idle(void) 4static inline void arch_idle(void)
8{ 5{
9 cpu_do_idle(); 6 cpu_do_idle();
@@ -11,12 +8,4 @@ static inline void arch_idle(void)
11 8
12static inline void arch_reset(char mode, const char *cmd) 9static inline void arch_reset(char mode, const char *cmd)
13{ 10{
14 /*
15 * Set then clear the SWRST bit to initiate a software reset
16 */
17 ep93xx_devcfg_set_bits(EP93XX_SYSCON_DEVCFG_SWRST);
18 ep93xx_devcfg_clear_bits(EP93XX_SYSCON_DEVCFG_SWRST);
19
20 while (1)
21 ;
22} 11}
diff --git a/arch/arm/mach-ep93xx/micro9.c b/arch/arm/mach-ep93xx/micro9.c
index e72f7368876e..050ce9216d7c 100644
--- a/arch/arm/mach-ep93xx/micro9.c
+++ b/arch/arm/mach-ep93xx/micro9.c
@@ -82,6 +82,7 @@ MACHINE_START(MICRO9, "Contec Micro9-High")
82 .init_irq = ep93xx_init_irq, 82 .init_irq = ep93xx_init_irq,
83 .timer = &ep93xx_timer, 83 .timer = &ep93xx_timer,
84 .init_machine = micro9_init_machine, 84 .init_machine = micro9_init_machine,
85 .restart = ep93xx_restart,
85MACHINE_END 86MACHINE_END
86#endif 87#endif
87 88
@@ -93,6 +94,7 @@ MACHINE_START(MICRO9M, "Contec Micro9-Mid")
93 .init_irq = ep93xx_init_irq, 94 .init_irq = ep93xx_init_irq,
94 .timer = &ep93xx_timer, 95 .timer = &ep93xx_timer,
95 .init_machine = micro9_init_machine, 96 .init_machine = micro9_init_machine,
97 .restart = ep93xx_restart,
96MACHINE_END 98MACHINE_END
97#endif 99#endif
98 100
@@ -104,6 +106,7 @@ MACHINE_START(MICRO9L, "Contec Micro9-Lite")
104 .init_irq = ep93xx_init_irq, 106 .init_irq = ep93xx_init_irq,
105 .timer = &ep93xx_timer, 107 .timer = &ep93xx_timer,
106 .init_machine = micro9_init_machine, 108 .init_machine = micro9_init_machine,
109 .restart = ep93xx_restart,
107MACHINE_END 110MACHINE_END
108#endif 111#endif
109 112
@@ -115,5 +118,6 @@ MACHINE_START(MICRO9S, "Contec Micro9-Slim")
115 .init_irq = ep93xx_init_irq, 118 .init_irq = ep93xx_init_irq,
116 .timer = &ep93xx_timer, 119 .timer = &ep93xx_timer,
117 .init_machine = micro9_init_machine, 120 .init_machine = micro9_init_machine,
121 .restart = ep93xx_restart,
118MACHINE_END 122MACHINE_END
119#endif 123#endif
diff --git a/arch/arm/mach-ep93xx/simone.c b/arch/arm/mach-ep93xx/simone.c
index 52e090dc9d27..188cbdb4dbda 100644
--- a/arch/arm/mach-ep93xx/simone.c
+++ b/arch/arm/mach-ep93xx/simone.c
@@ -82,4 +82,5 @@ MACHINE_START(SIM_ONE, "Simplemachines Sim.One Board")
82 .init_irq = ep93xx_init_irq, 82 .init_irq = ep93xx_init_irq,
83 .timer = &ep93xx_timer, 83 .timer = &ep93xx_timer,
84 .init_machine = simone_init_machine, 84 .init_machine = simone_init_machine,
85 .restart = ep93xx_restart,
85MACHINE_END 86MACHINE_END
diff --git a/arch/arm/mach-ep93xx/snappercl15.c b/arch/arm/mach-ep93xx/snappercl15.c
index 8121e3aedc0a..797afdee80ab 100644
--- a/arch/arm/mach-ep93xx/snappercl15.c
+++ b/arch/arm/mach-ep93xx/snappercl15.c
@@ -179,4 +179,5 @@ MACHINE_START(SNAPPER_CL15, "Bluewater Systems Snapper CL15")
179 .init_irq = ep93xx_init_irq, 179 .init_irq = ep93xx_init_irq,
180 .timer = &ep93xx_timer, 180 .timer = &ep93xx_timer,
181 .init_machine = snappercl15_init_machine, 181 .init_machine = snappercl15_init_machine,
182 .restart = ep93xx_restart,
182MACHINE_END 183MACHINE_END
diff --git a/arch/arm/mach-ep93xx/ts72xx.c b/arch/arm/mach-ep93xx/ts72xx.c
index 8b2f1435bcac..de9bb541b550 100644
--- a/arch/arm/mach-ep93xx/ts72xx.c
+++ b/arch/arm/mach-ep93xx/ts72xx.c
@@ -249,4 +249,5 @@ MACHINE_START(TS72XX, "Technologic Systems TS-72xx SBC")
249 .init_irq = ep93xx_init_irq, 249 .init_irq = ep93xx_init_irq,
250 .timer = &ep93xx_timer, 250 .timer = &ep93xx_timer,
251 .init_machine = ts72xx_init_machine, 251 .init_machine = ts72xx_init_machine,
252 .restart = ep93xx_restart,
252MACHINE_END 253MACHINE_END
diff --git a/arch/arm/mach-ep93xx/vision_ep9307.c b/arch/arm/mach-ep93xx/vision_ep9307.c
index d96e4dbec6a8..03dd4012043e 100644
--- a/arch/arm/mach-ep93xx/vision_ep9307.c
+++ b/arch/arm/mach-ep93xx/vision_ep9307.c
@@ -361,4 +361,5 @@ MACHINE_START(VISION_EP9307, "Vision Engraving Systems EP9307")
361 .init_irq = ep93xx_init_irq, 361 .init_irq = ep93xx_init_irq,
362 .timer = &ep93xx_timer, 362 .timer = &ep93xx_timer,
363 .init_machine = vision_init_machine, 363 .init_machine = vision_init_machine,
364 .restart = ep93xx_restart,
364MACHINE_END 365MACHINE_END