ARM: restart: pxa: use new restart hook
authorRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 4 Nov 2011 14:15:53 +0000 (14:15 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 5 Jan 2012 12:57:17 +0000 (12:57 +0000)
Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Acked-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
52 files changed:
arch/arm/mach-pxa/balloon3.c
arch/arm/mach-pxa/capc7117.c
arch/arm/mach-pxa/cm-x2xx.c
arch/arm/mach-pxa/cm-x300.c
arch/arm/mach-pxa/colibri-pxa270.c
arch/arm/mach-pxa/colibri-pxa300.c
arch/arm/mach-pxa/colibri-pxa320.c
arch/arm/mach-pxa/corgi.c
arch/arm/mach-pxa/csb726.c
arch/arm/mach-pxa/em-x270.c
arch/arm/mach-pxa/eseries.c
arch/arm/mach-pxa/ezx.c
arch/arm/mach-pxa/generic.h
arch/arm/mach-pxa/gumstix.c
arch/arm/mach-pxa/h5000.c
arch/arm/mach-pxa/himalaya.c
arch/arm/mach-pxa/hx4700.c
arch/arm/mach-pxa/icontrol.c
arch/arm/mach-pxa/idp.c
arch/arm/mach-pxa/include/mach/system.h
arch/arm/mach-pxa/littleton.c
arch/arm/mach-pxa/lpd270.c
arch/arm/mach-pxa/lubbock.c
arch/arm/mach-pxa/magician.c
arch/arm/mach-pxa/mainstone.c
arch/arm/mach-pxa/mioa701.c
arch/arm/mach-pxa/mp900.c
arch/arm/mach-pxa/palmld.c
arch/arm/mach-pxa/palmt5.c
arch/arm/mach-pxa/palmtc.c
arch/arm/mach-pxa/palmte2.c
arch/arm/mach-pxa/palmtreo.c
arch/arm/mach-pxa/palmtx.c
arch/arm/mach-pxa/palmz72.c
arch/arm/mach-pxa/pcm027.c
arch/arm/mach-pxa/poodle.c
arch/arm/mach-pxa/raumfeld.c
arch/arm/mach-pxa/reset.c
arch/arm/mach-pxa/saar.c
arch/arm/mach-pxa/saarb.c
arch/arm/mach-pxa/spitz.c
arch/arm/mach-pxa/stargate2.c
arch/arm/mach-pxa/tavorevb.c
arch/arm/mach-pxa/tavorevb3.c
arch/arm/mach-pxa/tosa.c
arch/arm/mach-pxa/trizeps4.c
arch/arm/mach-pxa/viper.c
arch/arm/mach-pxa/vpac270.c
arch/arm/mach-pxa/xcep.c
arch/arm/mach-pxa/z2.c
arch/arm/mach-pxa/zeus.c
arch/arm/mach-pxa/zylonite.c

index 4b81f59a4cbaf5aebbac8c1d55980d9b4dd45618..82514f5c38f1588c4bea4848749428079c858df8 100644 (file)
@@ -829,4 +829,5 @@ MACHINE_START(BALLOON3, "Balloon3")
        .timer          = &pxa_timer,
        .init_machine   = balloon3_init,
        .atag_offset    = 0x100,
+       .restart        = pxa_restart,
 MACHINE_END
index 4efc16d39c7985810d45b683fdab335a988ab9e3..c2f0be040d279a05d5164967c843677020c2b3c6 100644 (file)
@@ -153,5 +153,6 @@ MACHINE_START(CAPC7117,
        .init_irq = pxa3xx_init_irq,
        .handle_irq = pxa3xx_handle_irq,
        .timer = &pxa_timer,
-       .init_machine = capc7117_init
+       .init_machine = capc7117_init,
+       .restart        = pxa_restart,
 MACHINE_END
index f2e4190080cbd2b5584fe03c1ce6aeae705b94e7..ec170a552c2375cf17d35f44950ca42c80a1973f 100644 (file)
@@ -524,4 +524,5 @@ MACHINE_START(ARMCORE, "Compulab CM-X2XX")
 #ifdef CONFIG_PCI
        .dma_zone_size  = SZ_64M,
 #endif
+       .restart        = pxa_restart,
 MACHINE_END
index e096bba8fd57c231aaa0593c4b0efc19f2649e93..7236974da0b79e08477c75be0ee225c7021f620d 100644 (file)
@@ -858,4 +858,5 @@ MACHINE_START(CM_X300, "CM-X300 module")
        .timer          = &pxa_timer,
        .init_machine   = cm_x300_init,
        .fixup          = cm_x300_fixup,
+       .restart        = pxa_restart,
 MACHINE_END
index 05bfa1b1c001756b465731e5ac67fa0185ef79c5..6a685165c9f2fb9372e8810bab3afd25fb0967a6 100644 (file)
@@ -313,6 +313,7 @@ MACHINE_START(COLIBRI, "Toradex Colibri PXA270")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
 MACHINE_START(INCOME, "Income s.r.o. SH-Dmaster PXA270 SBC")
@@ -322,5 +323,6 @@ MACHINE_START(INCOME, "Income s.r.o. SH-Dmaster PXA270 SBC")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
index c825e8bf2db14a922978ae1b6442b7185fd6800d..c01059a61f33a7cc0549a618050da2d3b8dc716b 100644 (file)
@@ -189,5 +189,6 @@ MACHINE_START(COLIBRI300, "Toradex Colibri PXA300")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
index d23b92b80488257db2ef2bf4af458fc4060feaf8..5028f2300d508f7b36360ec147ce219dcaf4f15c 100644 (file)
@@ -259,5 +259,6 @@ MACHINE_START(COLIBRI320, "Toradex Colibri PXA320")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
index 549468d088b9e0e34336ef0b50a3551258b8c366..9d4dc5970b9cd6e9f292f30354df595b55155301 100644 (file)
@@ -655,7 +655,7 @@ static void corgi_poweroff(void)
                /* Green LED off tells the bootloader to halt */
                gpio_set_value(CORGI_GPIO_LED_GREEN, 0);
 
-       arm_machine_restart('h', NULL);
+       pxa_restart('h', NULL);
 }
 
 static void corgi_restart(char mode, const char *cmd)
@@ -664,13 +664,12 @@ static void corgi_restart(char mode, const char *cmd)
                /* Green LED on tells the bootloader to reboot */
                gpio_set_value(CORGI_GPIO_LED_GREEN, 1);
 
-       arm_machine_restart('h', cmd);
+       pxa_restart('h', cmd);
 }
 
 static void __init corgi_init(void)
 {
        pm_power_off = corgi_poweroff;
-       arm_pm_restart = corgi_restart;
 
        /* Stop 3.6MHz and drive HIGH to PCMCIA and CS */
        PCFR |= PCFR_OPDE;
@@ -726,6 +725,7 @@ MACHINE_START(CORGI, "SHARP Corgi")
        .handle_irq     = pxa25x_handle_irq,
        .init_machine   = corgi_init,
        .timer          = &pxa_timer,
+       .restart        = corgi_restart,
 MACHINE_END
 #endif
 
@@ -737,6 +737,7 @@ MACHINE_START(SHEPHERD, "SHARP Shepherd")
        .handle_irq     = pxa25x_handle_irq,
        .init_machine   = corgi_init,
        .timer          = &pxa_timer,
+       .restart        = corgi_restart,
 MACHINE_END
 #endif
 
@@ -748,6 +749,7 @@ MACHINE_START(HUSKY, "SHARP Husky")
        .handle_irq     = pxa25x_handle_irq,
        .init_machine   = corgi_init,
        .timer          = &pxa_timer,
+       .restart        = corgi_restart,
 MACHINE_END
 #endif
 
index 5e2cf39e9e4c5e8091028ab5576cffb711725797..fb5a51d834e5391c4cb407b4270009dcaf68b33c 100644 (file)
@@ -278,4 +278,5 @@ MACHINE_START(CSB726, "Cogent CSB726")
        .handle_irq       = pxa27x_handle_irq,
        .init_machine   = csb726_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
index 94acc0b01dd6791b06d469bb83963a56c2c60849..bd396ba67af7a815e5a17b411405549c36463d20 100644 (file)
@@ -1305,6 +1305,7 @@ MACHINE_START(EM_X270, "Compulab EM-X270")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = em_x270_init,
+       .restart        = pxa_restart,
 MACHINE_END
 
 MACHINE_START(EXEDA, "Compulab eXeda")
@@ -1314,4 +1315,5 @@ MACHINE_START(EXEDA, "Compulab eXeda")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = em_x270_init,
+       .restart        = pxa_restart,
 MACHINE_END
index d82b7aa3c096eaf09f6b99d83953efad07bb07b4..69473db977583c1f5b8793cad9275921efbb2c17 100644 (file)
@@ -196,6 +196,7 @@ MACHINE_START(E330, "Toshiba e330")
        .fixup          = eseries_fixup,
        .init_machine   = e330_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -246,6 +247,7 @@ MACHINE_START(E350, "Toshiba e350")
        .fixup          = eseries_fixup,
        .init_machine   = e350_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -369,6 +371,7 @@ MACHINE_START(E400, "Toshiba e400")
        .fixup          = eseries_fixup,
        .init_machine   = e400_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -558,6 +561,7 @@ MACHINE_START(E740, "Toshiba e740")
        .fixup          = eseries_fixup,
        .init_machine   = e740_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -750,6 +754,7 @@ MACHINE_START(E750, "Toshiba e750")
        .fixup          = eseries_fixup,
        .init_machine   = e750_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -955,5 +960,6 @@ MACHINE_START(E800, "Toshiba e800")
        .fixup          = eseries_fixup,
        .init_machine   = e800_init,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
index 8308eee5a92468d79873980bff22d69c3b8b6fda..15ab2533667d065dba6a51101e60c84c92db2b03 100644 (file)
@@ -804,6 +804,7 @@ MACHINE_START(EZX_A780, "Motorola EZX A780")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = a780_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -870,6 +871,7 @@ MACHINE_START(EZX_E680, "Motorola EZX E680")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = e680_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -936,6 +938,7 @@ MACHINE_START(EZX_A1200, "Motorola EZX A1200")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = a1200_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1127,6 +1130,7 @@ MACHINE_START(EZX_A910, "Motorola EZX A910")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = a910_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1193,6 +1197,7 @@ MACHINE_START(EZX_E6, "Motorola EZX E6")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = e6_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1233,5 +1238,6 @@ MACHINE_START(EZX_E2, "Motorola EZX E2")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = e2_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
index 92a2e85ab02cff7d91c182ec47628ff3087e5d65..0d729e6619dfb411c6b4a5e875cc4e75a1928731 100644 (file)
@@ -57,3 +57,5 @@ void __init pxa_set_ffuart_info(void *info);
 void __init pxa_set_btuart_info(void *info);
 void __init pxa_set_stuart_info(void *info);
 void __init pxa_set_hwuart_info(void *info);
+
+void pxa_restart(char, const char *);
index ffdd70dad327dd135f1a2d5fc36a3cde45f2f86b..ac3b1cef47519ed4c431cc2b576bfc76ebcda792 100644 (file)
@@ -239,4 +239,5 @@ MACHINE_START(GUMSTIX, "Gumstix")
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = gumstix_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 4b5e110640b1c39bf55aef1dfb8dd96086a518bc..fde6b4c873c40fba6fe1c0aad5d85d1f03272c8f 100644 (file)
@@ -209,4 +209,5 @@ MACHINE_START(H5400, "HP iPAQ H5000")
        .handle_irq = pxa25x_handle_irq,
        .timer = &pxa_timer,
        .init_machine = h5000_init,
+       .restart        = pxa_restart,
 MACHINE_END
index f2c324570844b189a3a16c286c0c705ecd344780..26d069a9f900117269936685f86a504fdb55f672 100644 (file)
@@ -164,4 +164,5 @@ MACHINE_START(HIMALAYA, "HTC Himalaya")
        .handle_irq = pxa25x_handle_irq,
        .init_machine = himalaya_init,
        .timer = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
index 6f6368ece9bda4288e9a99a48118db5caedae72a..ce16bdae96defcc141b595b0d383b53e27fabb5c 100644 (file)
@@ -845,4 +845,5 @@ MACHINE_START(H4700, "HP iPAQ HX4700")
        .handle_irq     = pxa27x_handle_irq,
        .init_machine = hx4700_init,
        .timer        = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
index f78d5db758daf920a732ed62543bf77ae788647d..e239b82c99d799cfd1cc50c6891195b78e77bfa8 100644 (file)
@@ -196,5 +196,6 @@ MACHINE_START(ICONTROL, "iControl/SafeTcam boards using Embedian MXM-8x10 CoM")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = icontrol_init
+       .init_machine   = icontrol_init,
+       .restart        = pxa_restart,
 MACHINE_END
index ddf20e5c376ed292a11b7945d5c35dc8ed3ca167..fbabd84e110c69977c306b1a30f43f0815dcd7ad 100644 (file)
@@ -199,4 +199,5 @@ MACHINE_START(PXA_IDP, "Vibren PXA255 IDP")
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = idp_init,
+       .restart        = pxa_restart,
 MACHINE_END
index d1fce8b6d1051d23b910bae6e7e5d8109ee0bdad..85494ff7a4503d298ca9002d4ffce8fb9de6e22f 100644 (file)
@@ -9,15 +9,11 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-
-#include <asm/proc-fns.h>
-#include "hardware.h"
-#include "pxa2xx-regs.h"
-
 static inline void arch_idle(void)
 {
        cpu_do_idle();
 }
 
-
-void arch_reset(char mode, const char *cmd);
+static inline void arch_reset(char mode, const char *cmd)
+{
+}
index 7b324ec6449f49553654d45b4aba900da01f23ed..c337c7eed514e31f4a0cee40afcd7c8fecc961a6 100644 (file)
@@ -445,4 +445,5 @@ MACHINE_START(LITTLETON, "Marvell Form Factor Development Platform (aka Littleto
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = littleton_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 1dd530279e0b977f2726addff891d540c1fdbc46..6119c015f39304f829d606d7a3ab0531d3d97cd2 100644 (file)
@@ -505,4 +505,5 @@ MACHINE_START(LOGICPD_PXA270, "LogicPD PXA270 Card Engine")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = lpd270_init,
+       .restart        = pxa_restart,
 MACHINE_END
index c48ce6da9184f6d338e15ef729f8f043d66b8e77..4b7a528716528acc96580d92183bf264e4d1e461 100644 (file)
@@ -556,4 +556,5 @@ MACHINE_START(LUBBOCK, "Intel DBPXA250 Development Platform (aka Lubbock)")
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = lubbock_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 4b796c37af3ec5ab6ef15edebb1c8092b6f2ab50..4e6774fff422970764d3028f6e41530cbe515095 100644 (file)
@@ -760,4 +760,5 @@ MACHINE_START(MAGICIAN, "HTC Magician")
        .handle_irq = pxa27x_handle_irq,
        .init_machine = magician_init,
        .timer = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
index 0567d3965fda4dffb422125a7cf4351272f2daa8..ca14555d5e15f88312df7b14779874d98a1a12db 100644 (file)
@@ -622,4 +622,5 @@ MACHINE_START(MAINSTONE, "Intel HCDDBBVA0 Development Platform (aka Mainstone)")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = mainstone_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 4f47a760398ff379bddb73c24d47e48fc021c219..924a3b5f8da6307f9d2000a9e5d7f490215d5bc5 100644 (file)
@@ -696,13 +696,13 @@ static void mioa701_machine_exit(void);
 static void mioa701_poweroff(void)
 {
        mioa701_machine_exit();
-       arm_machine_restart('s', NULL);
+       pxa_restart('s', NULL);
 }
 
 static void mioa701_restart(char c, const char *cmd)
 {
        mioa701_machine_exit();
-       arm_machine_restart('s', cmd);
+       pxa_restart('s', cmd);
 }
 
 static struct gpio global_gpios[] = {
@@ -734,7 +734,6 @@ static void __init mioa701_machine_init(void)
        pxa_set_udc_info(&mioa701_udc_info);
        pxa_set_ac97_info(&mioa701_ac97_info);
        pm_power_off = mioa701_poweroff;
-       arm_pm_restart = mioa701_restart;
        platform_add_devices(devices, ARRAY_SIZE(devices));
        gsm_init();
 
@@ -758,4 +757,5 @@ MACHINE_START(MIOA701, "MIO A701")
        .handle_irq     = &pxa27x_handle_irq,
        .init_machine   = mioa701_machine_init,
        .timer          = &pxa_timer,
+       .restart        = mioa701_restart,
 MACHINE_END
index 4af5d513c38026ea0194d239df879a746f976654..169bf8f97af00028a76d314b2bb8efa2d6b19e93 100644 (file)
@@ -98,5 +98,6 @@ MACHINE_START(NEC_MP900, "MobilePro900/C")
        .init_irq       = pxa25x_init_irq,
        .handle_irq     = pxa25x_handle_irq,
        .init_machine   = mp900c_init,
+       .restart        = pxa_restart,
 MACHINE_END
 
index 3d4a2819cae181f4645bd249aa2ab5e7244e5ba4..1fa80f4f80c8484595c4f4a5a17cdaf931a9cc33 100644 (file)
@@ -347,5 +347,6 @@ MACHINE_START(PALMLD, "Palm LifeDrive")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmld_init
+       .init_machine   = palmld_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 99d6bcf1f9741463ffe53845ac518c61dd605896..5ba14316bd9c273b386e6267582dc93aa1131463 100644 (file)
@@ -208,5 +208,6 @@ MACHINE_START(PALMT5, "Palm Tungsten|T5")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmt5_init
+       .init_machine   = palmt5_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 2c24c67fd92b6d863fc2e534b6ad9f15b7daaaf7..29b51b40f09df49a60a2ab07d91122f0f840ed74 100644 (file)
@@ -542,5 +542,6 @@ MACHINE_START(PALMTC, "Palm Tungsten|C")
        .init_irq       = pxa25x_init_irq,
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmtc_init
+       .init_machine   = palmtc_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 9376da06404c7ea25c25101a44962a19ff4f3614..5ebf49acb8279d321a61596718980dc45dadfa11 100644 (file)
@@ -361,5 +361,6 @@ MACHINE_START(PALMTE2, "Palm Tungsten|E2")
        .init_irq       = pxa25x_init_irq,
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmte2_init
+       .init_machine   = palmte2_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 94e9708b349da5f0be7cfa4fec34f2f24e445475..ec8249156c0846b1d6129b6c55ab7a431d23d2a4 100644 (file)
@@ -452,6 +452,7 @@ MACHINE_START(TREO680, "Palm Treo 680")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = treo680_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -464,5 +465,6 @@ MACHINE_START(CENTRO, "Palm Centro 685")
        .handle_irq       = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = centro_init,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
index 4e3e45927e95336cf9d2fb4c4185f7f94c90d26b..6170d76dfba8f395a41ff16c6c16ac28d1760970 100644 (file)
@@ -369,5 +369,6 @@ MACHINE_START(PALMTX, "Palm T|X")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmtx_init
+       .init_machine   = palmtx_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 68e18baf8e079986d1ca63459c809eaad13b668e..b2dff9d415ebf69eedba22393913e74075bb75ac 100644 (file)
@@ -404,5 +404,6 @@ MACHINE_START(PALMZ72, "Palm Zire72")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = palmz72_init
+       .init_machine   = palmz72_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 0b825a353537c783f1f6e4623b2923fa79842ec7..fe9054435b6f214c63b700fe61967d0ec2d32987 100644 (file)
@@ -265,4 +265,5 @@ MACHINE_START(PCM027, "Phytec Messtechnik GmbH phyCORE-PXA270")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = pcm027_init,
+       .restart        = pxa_restart,
 MACHINE_END
index afcb48a5792c19b613ca36195388ac84afea61d5..b260ce872d2d941a69d607e872b005977ae4d0b4 100644 (file)
@@ -417,7 +417,7 @@ static struct i2c_board_info __initdata poodle_i2c_devices[] = {
 
 static void poodle_poweroff(void)
 {
-       arm_machine_restart('h', NULL);
+       pxa_restart('h', NULL);
 }
 
 static void __init poodle_init(void)
@@ -466,4 +466,5 @@ MACHINE_START(POODLE, "SHARP Poodle")
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = poodle_init,
+       .restart        = pxa_restart,
 MACHINE_END
index f0c05f4d12ed5eb48715d8433665b20199bde3bd..4962b1676629323288ecd925b374107f61c46894 100644 (file)
@@ -1093,6 +1093,7 @@ MACHINE_START(RAUMFELD_RC, "Raumfeld Controller")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1104,6 +1105,7 @@ MACHINE_START(RAUMFELD_CONNECTOR, "Raumfeld Connector")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1115,5 +1117,6 @@ MACHINE_START(RAUMFELD_SPEAKER, "Raumfeld Speaker")
        .init_irq       = pxa3xx_init_irq,
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
index b8bcda15da81024212f443a9403b1658f31f422a..c8497b00cdfe8bcb66f791c2907fbea345290571 100644 (file)
@@ -81,8 +81,11 @@ static void do_hw_reset(void)
        OSMR3 = OSCR + 368640;  /* ... in 100 ms */
 }
 
-void arch_reset(char mode, const char *cmd)
+void pxa_restart(char mode, const char *cmd)
 {
+       local_irq_disable();
+       local_fiq_disable();
+
        clear_reset_status(RESET_STATUS_ALL);
 
        switch (mode) {
index fc2c1e05af9c2f59b1138dd011ef43069806d24a..878707056e65fa550ddd388c1474d2e3a6baf652 100644 (file)
@@ -602,4 +602,5 @@ MACHINE_START(SAAR, "PXA930 Handheld Platform (aka SAAR)")
        .handle_irq       = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = saar_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 3e999e308a2da66c86cee2eacbf4ee3f2eb82094..b6dbaca460c73fdd0b3aa457e6f87f20468555c6 100644 (file)
@@ -111,5 +111,6 @@ MACHINE_START(SAARB, "PXA955 Handheld Platform (aka SAARB)")
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = saarb_init,
+       .restart        = pxa_restart,
 MACHINE_END
 
index 2f57d94de727ab9881a1c55677181baf5291a1db..a7f81a3fd132f2c973a52b7be65689299a326043 100644 (file)
@@ -926,7 +926,7 @@ static inline void spitz_i2c_init(void) {}
  ******************************************************************************/
 static void spitz_poweroff(void)
 {
-       arm_machine_restart('g', NULL);
+       pxa_restart('g', NULL);
 }
 
 static void spitz_restart(char mode, const char *cmd)
@@ -943,7 +943,6 @@ static void __init spitz_init(void)
 {
        init_gpio_reset(SPITZ_GPIO_ON_RESET, 1, 0);
        pm_power_off = spitz_poweroff;
-       arm_pm_restart = spitz_restart;
 
        PMCR = 0x00;
 
@@ -989,6 +988,7 @@ MACHINE_START(SPITZ, "SHARP Spitz")
        .handle_irq     = pxa27x_handle_irq,
        .init_machine   = spitz_init,
        .timer          = &pxa_timer,
+       .restart        = spitz_restart,
 MACHINE_END
 #endif
 
@@ -1001,6 +1001,7 @@ MACHINE_START(BORZOI, "SHARP Borzoi")
        .handle_irq     = pxa27x_handle_irq,
        .init_machine   = spitz_init,
        .timer          = &pxa_timer,
+       .restart        = spitz_restart,
 MACHINE_END
 #endif
 
@@ -1013,5 +1014,6 @@ MACHINE_START(AKITA, "SHARP Akita")
        .handle_irq     = pxa27x_handle_irq,
        .init_machine   = spitz_init,
        .timer          = &pxa_timer,
+       .restart        = spitz_restart,
 MACHINE_END
 #endif
index 4c9a48bef569b41c57948d43d3dd9d8de8e686b5..80d7f23ad0fde822c2f4a9b7e1262f24d2ea2645 100644 (file)
@@ -1005,6 +1005,7 @@ MACHINE_START(INTELMOTE2, "IMOTE 2")
        .timer          = &pxa_timer,
        .init_machine   = imote2_init,
        .atag_offset    = 0x100,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
 
@@ -1017,5 +1018,6 @@ MACHINE_START(STARGATE2, "Stargate 2")
        .timer = &pxa_timer,
        .init_machine = stargate2_init,
        .atag_offset = 0x100,
+       .restart        = pxa_restart,
 MACHINE_END
 #endif
index ad47bb98f30d88a57702462ea926880f05972071..4fa36a3e383c657ca65edc5adb02f003d56a553f 100644 (file)
@@ -495,4 +495,5 @@ MACHINE_START(TAVOREVB, "PXA930 Evaluation Board (aka TavorEVB)")
        .handle_irq       = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = tavorevb_init,
+       .restart        = pxa_restart,
 MACHINE_END
index fd569167302a6d57f4aaea6902782d8d16149166..8a22879f0bb050b836a7b44dd5b6c84d4c102105 100644 (file)
@@ -132,4 +132,5 @@ MACHINE_START(TAVOREVB3, "PXA950 Evaluation Board (aka TavorEVB3)")
        .handle_irq       = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = evb3_init,
+       .restart        = pxa_restart,
 MACHINE_END
index ef6453041cf13454b0baa4042993707616d7865a..dfe40f8705aad1e4c209eadc61667522a222bf01 100644 (file)
@@ -905,7 +905,7 @@ static struct platform_device *devices[] __initdata = {
 
 static void tosa_poweroff(void)
 {
-       arm_machine_restart('g', NULL);
+       pxa_restart('g', NULL);
 }
 
 static void tosa_restart(char mode, const char *cmd)
@@ -935,7 +935,6 @@ static void __init tosa_init(void)
        init_gpio_reset(TOSA_GPIO_ON_RESET, 0, 0);
 
        pm_power_off = tosa_poweroff;
-       arm_pm_restart = tosa_restart;
 
        PCFR |= PCFR_OPDE;
 
@@ -978,4 +977,5 @@ MACHINE_START(TOSA, "SHARP Tosa")
        .handle_irq       = pxa25x_handle_irq,
        .init_machine   = tosa_init,
        .timer          = &pxa_timer,
+       .restart        = tosa_restart,
 MACHINE_END
index 1aaed2b17e102ef90adb4add2065b472a5d7fb76..0f30af617d8f47924eb1591928aa9a87627f3405 100644 (file)
@@ -561,6 +561,7 @@ MACHINE_START(TRIZEPS4, "Keith und Koep Trizeps IV module")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
 MACHINE_START(TRIZEPS4WL, "Keith und Koep Trizeps IV-WL module")
@@ -571,4 +572,5 @@ MACHINE_START(TRIZEPS4WL, "Keith und Koep Trizeps IV-WL module")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
index 242ddae332d30b6dd34a8107d3315f6f03e188c0..afe2b749552363e64321aa4c660b3dbf5786bf53 100644 (file)
@@ -998,4 +998,5 @@ MACHINE_START(VIPER, "Arcom/Eurotech VIPER SBC")
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = viper_init,
+       .restart        = pxa_restart,
 MACHINE_END
index ca0c6615028c42aa0414cc2e76de4a0a29c83918..fed5fb08871490e58e6887b92c0e4fa404321053 100644 (file)
@@ -721,5 +721,6 @@ MACHINE_START(VPAC270, "Voipac PXA270")
        .init_irq       = pxa27x_init_irq,
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
-       .init_machine   = vpac270_init
+       .init_machine   = vpac270_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 70e1730ef282a9aadf9f3cf1887d5d369e02cbf4..4bbe9a36fe74df730ca419f4bfeeb6c3be6516dc 100644 (file)
@@ -185,5 +185,6 @@ MACHINE_START(XCEP, "Iskratel XCEP")
        .init_irq       = pxa25x_init_irq,
        .handle_irq     = pxa25x_handle_irq,
        .timer          = &pxa_timer,
+       .restart        = pxa_restart,
 MACHINE_END
 
index ead32c90fec17380cce3dcda522e35812d631eb1..d75f66ab8c34845f22f0ac6be5485c664cf3ea34 100644 (file)
@@ -725,4 +725,5 @@ MACHINE_START(ZIPIT2, "Zipit Z2")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = z2_init,
+       .restart        = pxa_restart,
 MACHINE_END
index 498b83b089f32034b7d3ba8c0cfcb6aa9bcade69..9db35a7fcfc063e27587f60015541f6dc125c9c4 100644 (file)
@@ -911,5 +911,6 @@ MACHINE_START(ARCOM_ZEUS, "Arcom/Eurotech ZEUS")
        .handle_irq     = pxa27x_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = zeus_init,
+       .restart        = pxa_restart,
 MACHINE_END
 
index 6c39c332841807325864e14c77cf0cfdc6bb2bc5..7678b1bf7903e81cf9a8b0e0443676a1681be1e9 100644 (file)
@@ -430,4 +430,5 @@ MACHINE_START(ZYLONITE, "PXA3xx Platform Development Kit (aka Zylonite)")
        .handle_irq     = pxa3xx_handle_irq,
        .timer          = &pxa_timer,
        .init_machine   = zylonite_init,
+       .restart        = pxa_restart,
 MACHINE_END