diff options
52 files changed, 95 insertions, 28 deletions
| diff --git a/arch/arm/mach-pxa/balloon3.c b/arch/arm/mach-pxa/balloon3.c index 4b81f59a4cba..82514f5c38f1 100644 --- a/arch/arm/mach-pxa/balloon3.c +++ b/arch/arm/mach-pxa/balloon3.c @@ -829,4 +829,5 @@ MACHINE_START(BALLOON3, "Balloon3")  	.timer		= &pxa_timer,  	.init_machine	= balloon3_init,  	.atag_offset	= 0x100, +	.restart	= pxa_restart,  MACHINE_END diff --git a/arch/arm/mach-pxa/capc7117.c b/arch/arm/mach-pxa/capc7117.c index 4efc16d39c79..c2f0be040d27 100644 --- a/arch/arm/mach-pxa/capc7117.c +++ b/arch/arm/mach-pxa/capc7117.c @@ -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 diff --git a/arch/arm/mach-pxa/cm-x2xx.c b/arch/arm/mach-pxa/cm-x2xx.c index f2e4190080cb..ec170a552c23 100644 --- a/arch/arm/mach-pxa/cm-x2xx.c +++ b/arch/arm/mach-pxa/cm-x2xx.c @@ -524,4 +524,5 @@ MACHINE_START(ARMCORE, "Compulab CM-X2XX")  #ifdef CONFIG_PCI  	.dma_zone_size	= SZ_64M,  #endif +	.restart	= pxa_restart,  MACHINE_END diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c index e096bba8fd57..7236974da0b7 100644 --- a/arch/arm/mach-pxa/cm-x300.c +++ b/arch/arm/mach-pxa/cm-x300.c @@ -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 diff --git a/arch/arm/mach-pxa/colibri-pxa270.c b/arch/arm/mach-pxa/colibri-pxa270.c index 05bfa1b1c001..6a685165c9f2 100644 --- a/arch/arm/mach-pxa/colibri-pxa270.c +++ b/arch/arm/mach-pxa/colibri-pxa270.c @@ -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 diff --git a/arch/arm/mach-pxa/colibri-pxa300.c b/arch/arm/mach-pxa/colibri-pxa300.c index c825e8bf2db1..c01059a61f33 100644 --- a/arch/arm/mach-pxa/colibri-pxa300.c +++ b/arch/arm/mach-pxa/colibri-pxa300.c @@ -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 diff --git a/arch/arm/mach-pxa/colibri-pxa320.c b/arch/arm/mach-pxa/colibri-pxa320.c index d23b92b80488..5028f2300d50 100644 --- a/arch/arm/mach-pxa/colibri-pxa320.c +++ b/arch/arm/mach-pxa/colibri-pxa320.c @@ -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 diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c index 549468d088b9..9d4dc5970b9c 100644 --- a/arch/arm/mach-pxa/corgi.c +++ b/arch/arm/mach-pxa/corgi.c @@ -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 diff --git a/arch/arm/mach-pxa/csb726.c b/arch/arm/mach-pxa/csb726.c index 5e2cf39e9e4c..fb5a51d834e5 100644 --- a/arch/arm/mach-pxa/csb726.c +++ b/arch/arm/mach-pxa/csb726.c @@ -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 diff --git a/arch/arm/mach-pxa/em-x270.c b/arch/arm/mach-pxa/em-x270.c index 94acc0b01dd6..bd396ba67af7 100644 --- a/arch/arm/mach-pxa/em-x270.c +++ b/arch/arm/mach-pxa/em-x270.c @@ -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 diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c index d82b7aa3c096..69473db97758 100644 --- a/arch/arm/mach-pxa/eseries.c +++ b/arch/arm/mach-pxa/eseries.c @@ -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 diff --git a/arch/arm/mach-pxa/ezx.c b/arch/arm/mach-pxa/ezx.c index 8308eee5a924..15ab2533667d 100644 --- a/arch/arm/mach-pxa/ezx.c +++ b/arch/arm/mach-pxa/ezx.c @@ -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 diff --git a/arch/arm/mach-pxa/generic.h b/arch/arm/mach-pxa/generic.h index 92a2e85ab02c..0d729e6619df 100644 --- a/arch/arm/mach-pxa/generic.h +++ b/arch/arm/mach-pxa/generic.h @@ -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 *); diff --git a/arch/arm/mach-pxa/gumstix.c b/arch/arm/mach-pxa/gumstix.c index ffdd70dad327..ac3b1cef4751 100644 --- a/arch/arm/mach-pxa/gumstix.c +++ b/arch/arm/mach-pxa/gumstix.c @@ -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 diff --git a/arch/arm/mach-pxa/h5000.c b/arch/arm/mach-pxa/h5000.c index 4b5e110640b1..fde6b4c873c4 100644 --- a/arch/arm/mach-pxa/h5000.c +++ b/arch/arm/mach-pxa/h5000.c @@ -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 diff --git a/arch/arm/mach-pxa/himalaya.c b/arch/arm/mach-pxa/himalaya.c index f2c324570844..26d069a9f900 100644 --- a/arch/arm/mach-pxa/himalaya.c +++ b/arch/arm/mach-pxa/himalaya.c @@ -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 diff --git a/arch/arm/mach-pxa/hx4700.c b/arch/arm/mach-pxa/hx4700.c index 6f6368ece9bd..ce16bdae96de 100644 --- a/arch/arm/mach-pxa/hx4700.c +++ b/arch/arm/mach-pxa/hx4700.c @@ -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 diff --git a/arch/arm/mach-pxa/icontrol.c b/arch/arm/mach-pxa/icontrol.c index f78d5db758da..e239b82c99d7 100644 --- a/arch/arm/mach-pxa/icontrol.c +++ b/arch/arm/mach-pxa/icontrol.c @@ -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 diff --git a/arch/arm/mach-pxa/idp.c b/arch/arm/mach-pxa/idp.c index ddf20e5c376e..fbabd84e110c 100644 --- a/arch/arm/mach-pxa/idp.c +++ b/arch/arm/mach-pxa/idp.c @@ -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 diff --git a/arch/arm/mach-pxa/include/mach/system.h b/arch/arm/mach-pxa/include/mach/system.h index d1fce8b6d105..85494ff7a450 100644 --- a/arch/arm/mach-pxa/include/mach/system.h +++ b/arch/arm/mach-pxa/include/mach/system.h @@ -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) +{ +} diff --git a/arch/arm/mach-pxa/littleton.c b/arch/arm/mach-pxa/littleton.c index 7b324ec6449f..c337c7eed514 100644 --- a/arch/arm/mach-pxa/littleton.c +++ b/arch/arm/mach-pxa/littleton.c @@ -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 diff --git a/arch/arm/mach-pxa/lpd270.c b/arch/arm/mach-pxa/lpd270.c index 1dd530279e0b..6119c015f393 100644 --- a/arch/arm/mach-pxa/lpd270.c +++ b/arch/arm/mach-pxa/lpd270.c @@ -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 diff --git a/arch/arm/mach-pxa/lubbock.c b/arch/arm/mach-pxa/lubbock.c index c48ce6da9184..4b7a52871652 100644 --- a/arch/arm/mach-pxa/lubbock.c +++ b/arch/arm/mach-pxa/lubbock.c @@ -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 diff --git a/arch/arm/mach-pxa/magician.c b/arch/arm/mach-pxa/magician.c index 4b796c37af3e..4e6774fff422 100644 --- a/arch/arm/mach-pxa/magician.c +++ b/arch/arm/mach-pxa/magician.c @@ -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 diff --git a/arch/arm/mach-pxa/mainstone.c b/arch/arm/mach-pxa/mainstone.c index 0567d3965fda..ca14555d5e15 100644 --- a/arch/arm/mach-pxa/mainstone.c +++ b/arch/arm/mach-pxa/mainstone.c @@ -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 diff --git a/arch/arm/mach-pxa/mioa701.c b/arch/arm/mach-pxa/mioa701.c index 4f47a760398f..924a3b5f8da6 100644 --- a/arch/arm/mach-pxa/mioa701.c +++ b/arch/arm/mach-pxa/mioa701.c @@ -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 diff --git a/arch/arm/mach-pxa/mp900.c b/arch/arm/mach-pxa/mp900.c index 4af5d513c380..169bf8f97af0 100644 --- a/arch/arm/mach-pxa/mp900.c +++ b/arch/arm/mach-pxa/mp900.c @@ -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 diff --git a/arch/arm/mach-pxa/palmld.c b/arch/arm/mach-pxa/palmld.c index 3d4a2819cae1..1fa80f4f80c8 100644 --- a/arch/arm/mach-pxa/palmld.c +++ b/arch/arm/mach-pxa/palmld.c @@ -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 diff --git a/arch/arm/mach-pxa/palmt5.c b/arch/arm/mach-pxa/palmt5.c index 99d6bcf1f974..5ba14316bd9c 100644 --- a/arch/arm/mach-pxa/palmt5.c +++ b/arch/arm/mach-pxa/palmt5.c @@ -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 diff --git a/arch/arm/mach-pxa/palmtc.c b/arch/arm/mach-pxa/palmtc.c index 2c24c67fd92b..29b51b40f09d 100644 --- a/arch/arm/mach-pxa/palmtc.c +++ b/arch/arm/mach-pxa/palmtc.c @@ -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 diff --git a/arch/arm/mach-pxa/palmte2.c b/arch/arm/mach-pxa/palmte2.c index 9376da06404c..5ebf49acb827 100644 --- a/arch/arm/mach-pxa/palmte2.c +++ b/arch/arm/mach-pxa/palmte2.c @@ -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 diff --git a/arch/arm/mach-pxa/palmtreo.c b/arch/arm/mach-pxa/palmtreo.c index 94e9708b349d..ec8249156c08 100644 --- a/arch/arm/mach-pxa/palmtreo.c +++ b/arch/arm/mach-pxa/palmtreo.c @@ -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 diff --git a/arch/arm/mach-pxa/palmtx.c b/arch/arm/mach-pxa/palmtx.c index 4e3e45927e95..6170d76dfba8 100644 --- a/arch/arm/mach-pxa/palmtx.c +++ b/arch/arm/mach-pxa/palmtx.c @@ -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 diff --git a/arch/arm/mach-pxa/palmz72.c b/arch/arm/mach-pxa/palmz72.c index 68e18baf8e07..b2dff9d415eb 100644 --- a/arch/arm/mach-pxa/palmz72.c +++ b/arch/arm/mach-pxa/palmz72.c @@ -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 diff --git a/arch/arm/mach-pxa/pcm027.c b/arch/arm/mach-pxa/pcm027.c index 0b825a353537..fe9054435b6f 100644 --- a/arch/arm/mach-pxa/pcm027.c +++ b/arch/arm/mach-pxa/pcm027.c @@ -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 diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c index afcb48a5792c..b260ce872d2d 100644 --- a/arch/arm/mach-pxa/poodle.c +++ b/arch/arm/mach-pxa/poodle.c @@ -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 diff --git a/arch/arm/mach-pxa/raumfeld.c b/arch/arm/mach-pxa/raumfeld.c index f0c05f4d12ed..4962b1676629 100644 --- a/arch/arm/mach-pxa/raumfeld.c +++ b/arch/arm/mach-pxa/raumfeld.c @@ -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 diff --git a/arch/arm/mach-pxa/reset.c b/arch/arm/mach-pxa/reset.c index b8bcda15da81..c8497b00cdfe 100644 --- a/arch/arm/mach-pxa/reset.c +++ b/arch/arm/mach-pxa/reset.c @@ -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) { diff --git a/arch/arm/mach-pxa/saar.c b/arch/arm/mach-pxa/saar.c index fc2c1e05af9c..878707056e65 100644 --- a/arch/arm/mach-pxa/saar.c +++ b/arch/arm/mach-pxa/saar.c @@ -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 diff --git a/arch/arm/mach-pxa/saarb.c b/arch/arm/mach-pxa/saarb.c index 3e999e308a2d..b6dbaca460c7 100644 --- a/arch/arm/mach-pxa/saarb.c +++ b/arch/arm/mach-pxa/saarb.c @@ -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 diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index 2f57d94de727..a7f81a3fd132 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c @@ -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 diff --git a/arch/arm/mach-pxa/stargate2.c b/arch/arm/mach-pxa/stargate2.c index 4c9a48bef569..80d7f23ad0fd 100644 --- a/arch/arm/mach-pxa/stargate2.c +++ b/arch/arm/mach-pxa/stargate2.c @@ -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 diff --git a/arch/arm/mach-pxa/tavorevb.c b/arch/arm/mach-pxa/tavorevb.c index ad47bb98f30d..4fa36a3e383c 100644 --- a/arch/arm/mach-pxa/tavorevb.c +++ b/arch/arm/mach-pxa/tavorevb.c @@ -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 diff --git a/arch/arm/mach-pxa/tavorevb3.c b/arch/arm/mach-pxa/tavorevb3.c index fd569167302a..8a22879f0bb0 100644 --- a/arch/arm/mach-pxa/tavorevb3.c +++ b/arch/arm/mach-pxa/tavorevb3.c @@ -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 diff --git a/arch/arm/mach-pxa/tosa.c b/arch/arm/mach-pxa/tosa.c index ef6453041cf1..dfe40f8705aa 100644 --- a/arch/arm/mach-pxa/tosa.c +++ b/arch/arm/mach-pxa/tosa.c @@ -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 diff --git a/arch/arm/mach-pxa/trizeps4.c b/arch/arm/mach-pxa/trizeps4.c index 1aaed2b17e10..0f30af617d8f 100644 --- a/arch/arm/mach-pxa/trizeps4.c +++ b/arch/arm/mach-pxa/trizeps4.c @@ -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 diff --git a/arch/arm/mach-pxa/viper.c b/arch/arm/mach-pxa/viper.c index 242ddae332d3..afe2b7495523 100644 --- a/arch/arm/mach-pxa/viper.c +++ b/arch/arm/mach-pxa/viper.c @@ -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 diff --git a/arch/arm/mach-pxa/vpac270.c b/arch/arm/mach-pxa/vpac270.c index ca0c6615028c..fed5fb088714 100644 --- a/arch/arm/mach-pxa/vpac270.c +++ b/arch/arm/mach-pxa/vpac270.c @@ -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 diff --git a/arch/arm/mach-pxa/xcep.c b/arch/arm/mach-pxa/xcep.c index 70e1730ef282..4bbe9a36fe74 100644 --- a/arch/arm/mach-pxa/xcep.c +++ b/arch/arm/mach-pxa/xcep.c @@ -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 diff --git a/arch/arm/mach-pxa/z2.c b/arch/arm/mach-pxa/z2.c index ead32c90fec1..d75f66ab8c34 100644 --- a/arch/arm/mach-pxa/z2.c +++ b/arch/arm/mach-pxa/z2.c @@ -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 diff --git a/arch/arm/mach-pxa/zeus.c b/arch/arm/mach-pxa/zeus.c index 498b83b089f3..9db35a7fcfc0 100644 --- a/arch/arm/mach-pxa/zeus.c +++ b/arch/arm/mach-pxa/zeus.c @@ -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 diff --git a/arch/arm/mach-pxa/zylonite.c b/arch/arm/mach-pxa/zylonite.c index 6c39c3328418..7678b1bf7903 100644 --- a/arch/arm/mach-pxa/zylonite.c +++ b/arch/arm/mach-pxa/zylonite.c @@ -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 | 
