forked from Minki/linux
ARM: restart: mxc: use new restart hook
Hook these platforms restart code into the new restart hook rather than using arch_reset(). Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
9635f9cd49
commit
65ea7884bc
@ -139,4 +139,5 @@ MACHINE_START(APF9328, "Armadeus APF9328")
|
||||
.handle_irq = imx1_handle_irq,
|
||||
.timer = &apf9328_timer,
|
||||
.init_machine = apf9328_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -561,4 +561,5 @@ MACHINE_START(ARMADILLO5X0, "Armadillo-500")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &armadillo5x0_timer,
|
||||
.init_machine = armadillo5x0_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -65,4 +65,5 @@ MACHINE_START(BUG, "BugLabs BUGBase")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &bug_timer,
|
||||
.init_machine = bug_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -318,4 +318,5 @@ MACHINE_START(EUKREA_CPUIMX27, "EUKREA CPUIMX27")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &eukrea_cpuimx27_timer,
|
||||
.init_machine = eukrea_cpuimx27_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -201,4 +201,5 @@ MACHINE_START(EUKREA_CPUIMX35SD, "Eukrea CPUIMX35")
|
||||
.handle_irq = imx35_handle_irq,
|
||||
.timer = &eukrea_cpuimx35_timer,
|
||||
.init_machine = eukrea_cpuimx35_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -170,4 +170,5 @@ MACHINE_START(EUKREA_CPUIMX25SD, "Eukrea CPUIMX25")
|
||||
.handle_irq = imx25_handle_irq,
|
||||
.timer = &eukrea_cpuimx25_timer,
|
||||
.init_machine = eukrea_cpuimx25_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -282,4 +282,5 @@ MACHINE_START(IMX27_VISSTRIM_M10, "Vista Silicon Visstrim_M10")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &visstrim_m10_timer,
|
||||
.init_machine = visstrim_m10_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -78,4 +78,5 @@ MACHINE_START(IMX27IPCAM, "Freescale IMX27IPCAM")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &mx27ipcam_timer,
|
||||
.init_machine = mx27ipcam_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -84,4 +84,5 @@ MACHINE_START(IMX27LITE, "LogicPD i.MX27LITE")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &mx27lite_timer,
|
||||
.init_machine = mx27lite_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -83,4 +83,5 @@ DT_MACHINE_START(IMX6Q, "Freescale i.MX6 Quad (Device Tree)")
|
||||
.timer = &imx6q_timer,
|
||||
.init_machine = imx6q_init_machine,
|
||||
.dt_compat = imx6q_dt_compat,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -279,4 +279,5 @@ MACHINE_START(KZM_ARM11_01, "Kyoto Microcomputer Co., Ltd. KZM-ARM11-01")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &kzm_timer,
|
||||
.init_machine = kzm_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -147,6 +147,7 @@ MACHINE_START(MX1ADS, "Freescale MX1ADS")
|
||||
.handle_irq = imx1_handle_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
||||
MACHINE_START(MXLADS, "Freescale MXLADS")
|
||||
@ -157,4 +158,5 @@ MACHINE_START(MXLADS, "Freescale MXLADS")
|
||||
.handle_irq = imx1_handle_irq,
|
||||
.timer = &mx1ads_timer,
|
||||
.init_machine = mx1ads_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -312,4 +312,5 @@ MACHINE_START(MX21ADS, "Freescale i.MX21ADS")
|
||||
.handle_irq = imx21_handle_irq,
|
||||
.timer = &mx21ads_timer,
|
||||
.init_machine = mx21ads_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -270,4 +270,5 @@ MACHINE_START(MX25_3DS, "Freescale MX25PDK (3DS)")
|
||||
.handle_irq = imx25_handle_irq,
|
||||
.timer = &mx25pdk_timer,
|
||||
.init_machine = mx25pdk_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -425,4 +425,5 @@ MACHINE_START(MX27_3DS, "Freescale MX27PDK")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &mx27pdk_timer,
|
||||
.init_machine = mx27pdk_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -351,4 +351,5 @@ MACHINE_START(MX27ADS, "Freescale i.MX27ADS")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &mx27ads_timer,
|
||||
.init_machine = mx27ads_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -770,4 +770,5 @@ MACHINE_START(MX31_3DS, "Freescale MX31PDK (3DS)")
|
||||
.timer = &mx31_3ds_timer,
|
||||
.init_machine = mx31_3ds_init,
|
||||
.reserve = mx31_3ds_reserve,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -542,4 +542,5 @@ MACHINE_START(MX31ADS, "Freescale MX31ADS")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &mx31ads_timer,
|
||||
.init_machine = mx31ads_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -303,4 +303,5 @@ MACHINE_START(LILLY1131, "INCO startec LILLY-1131")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &mx31lilly_timer,
|
||||
.init_machine = mx31lilly_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -287,4 +287,5 @@ MACHINE_START(MX31LITE, "LogicPD i.MX31 SOM")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &mx31lite_timer,
|
||||
.init_machine = mx31lite_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -600,4 +600,5 @@ MACHINE_START(MX31MOBOARD, "EPFL Mobots mx31moboard")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &mx31moboard_timer,
|
||||
.init_machine = mx31moboard_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -224,4 +224,5 @@ MACHINE_START(MX35_3DS, "Freescale MX35PDK")
|
||||
.handle_irq = imx35_handle_irq,
|
||||
.timer = &mx35pdk_timer,
|
||||
.init_machine = mx35_3ds_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -274,4 +274,5 @@ MACHINE_START(MXT_TD60, "Maxtrack i-MXT TD60")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &mxt_td60_timer,
|
||||
.init_machine = mxt_td60_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -442,4 +442,5 @@ MACHINE_START(PCA100, "phyCARD-i.MX27")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.init_machine = pca100_init,
|
||||
.timer = &pca100_timer,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -696,4 +696,5 @@ MACHINE_START(PCM037, "Phytec Phycore pcm037")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &pcm037_timer,
|
||||
.init_machine = pcm037_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -357,4 +357,5 @@ MACHINE_START(PCM038, "phyCORE-i.MX27")
|
||||
.handle_irq = imx27_handle_irq,
|
||||
.timer = &pcm038_timer,
|
||||
.init_machine = pcm038_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -425,4 +425,5 @@ MACHINE_START(PCM043, "Phytec Phycore pcm043")
|
||||
.handle_irq = imx35_handle_irq,
|
||||
.timer = &pcm043_timer,
|
||||
.init_machine = pcm043_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -273,4 +273,5 @@ MACHINE_START(QONG, "Dave/DENX QongEVB-LITE")
|
||||
.handle_irq = imx31_handle_irq,
|
||||
.timer = &qong_timer,
|
||||
.init_machine = qong_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -144,4 +144,5 @@ MACHINE_START(SCB9328, "Synertronixx scb9328")
|
||||
.handle_irq = imx1_handle_irq,
|
||||
.timer = &scb9328_timer,
|
||||
.init_machine = scb9328_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -322,4 +322,5 @@ MACHINE_START(VPR200, "VPR200")
|
||||
.handle_irq = imx35_handle_irq,
|
||||
.timer = &vpr200_timer,
|
||||
.init_machine = vpr200_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -297,4 +297,5 @@ MACHINE_START(EUKREA_CPUIMX51, "Eukrea CPUIMX51 Module")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.timer = &mxc_timer,
|
||||
.init_machine = eukrea_cpuimx51_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -335,4 +335,5 @@ MACHINE_START(EUKREA_CPUIMX51SD, "Eukrea CPUIMX51SD")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.timer = &mxc_timer,
|
||||
.init_machine = eukrea_cpuimx51sd_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -222,4 +222,5 @@ MACHINE_START(MX50_RDP, "Freescale MX50 Reference Design Platform")
|
||||
.handle_irq = imx50_handle_irq,
|
||||
.timer = &mx50_rdp_timer,
|
||||
.init_machine = mx50_rdp_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -175,4 +175,5 @@ MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.timer = &mx51_3ds_timer,
|
||||
.init_machine = mx51_3ds_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -426,4 +426,5 @@ MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.timer = &mx51_babbage_timer,
|
||||
.init_machine = mx51_babbage_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -182,7 +182,7 @@ static const struct gpio_keys_platform_data mx51_efikamx_powerkey_data __initcon
|
||||
.nbuttons = ARRAY_SIZE(mx51_efikamx_powerkey),
|
||||
};
|
||||
|
||||
void mx51_efikamx_reset(void)
|
||||
static void mx51_efikamx_restart(char mode, const char *cmd)
|
||||
{
|
||||
if (system_rev == 0x11)
|
||||
gpio_direction_output(EFIKAMX_RESET1_1, 0);
|
||||
@ -292,4 +292,5 @@ MACHINE_START(MX51_EFIKAMX, "Genesi EfikaMX nettop")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.timer = &mx51_efikamx_timer,
|
||||
.init_machine = mx51_efikamx_init,
|
||||
.restart = mx51_efikamx_restart,
|
||||
MACHINE_END
|
||||
|
@ -287,4 +287,5 @@ MACHINE_START(MX51_EFIKASB, "Genesi Efika Smartbook")
|
||||
.handle_irq = imx51_handle_irq,
|
||||
.init_machine = efikasb_board_init,
|
||||
.timer = &mx51_efikasb_timer,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -257,4 +257,5 @@ MACHINE_START(MX53_ARD, "Freescale MX53 ARD Board")
|
||||
.handle_irq = imx53_handle_irq,
|
||||
.timer = &mx53_ard_timer,
|
||||
.init_machine = mx53_ard_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -175,4 +175,5 @@ MACHINE_START(MX53_EVK, "Freescale MX53 EVK Board")
|
||||
.handle_irq = imx53_handle_irq,
|
||||
.timer = &mx53_evk_timer,
|
||||
.init_machine = mx53_evk_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -317,4 +317,5 @@ MACHINE_START(MX53_LOCO, "Freescale MX53 LOCO Board")
|
||||
.handle_irq = imx53_handle_irq,
|
||||
.timer = &mx53_loco_timer,
|
||||
.init_machine = mx53_loco_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -164,4 +164,5 @@ MACHINE_START(MX53_SMD, "Freescale MX53 SMD Board")
|
||||
.handle_irq = imx53_handle_irq,
|
||||
.timer = &mx53_smd_timer,
|
||||
.init_machine = mx53_smd_board_init,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -115,4 +115,5 @@ DT_MACHINE_START(IMX51_DT, "Freescale i.MX51 (Device Tree Support)")
|
||||
.timer = &imx51_timer,
|
||||
.init_machine = imx51_dt_init,
|
||||
.dt_compat = imx51_dt_board_compat,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -125,4 +125,5 @@ DT_MACHINE_START(IMX53_DT, "Freescale i.MX53 (Device Tree Support)")
|
||||
.timer = &imx53_timer,
|
||||
.init_machine = imx53_dt_init,
|
||||
.dt_compat = imx53_dt_board_compat,
|
||||
.restart = mxc_restart,
|
||||
MACHINE_END
|
||||
|
@ -71,8 +71,8 @@ extern int mx6q_clocks_init(void);
|
||||
extern struct platform_device *mxc_register_gpio(char *name, int id,
|
||||
resource_size_t iobase, resource_size_t iosize, int irq, int irq_high);
|
||||
extern void mxc_set_cpu_type(unsigned int type);
|
||||
extern void mxc_restart(char, const char *);
|
||||
extern void mxc_arch_reset_init(void __iomem *);
|
||||
extern void mx51_efikamx_reset(void);
|
||||
extern int mx53_revision(void);
|
||||
extern int mx53_display_revision(void);
|
||||
|
||||
|
@ -22,6 +22,8 @@ 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)
|
||||
{
|
||||
}
|
||||
|
||||
#endif /* __ASM_ARCH_MXC_SYSTEM_H__ */
|
||||
|
@ -37,17 +37,10 @@ static void __iomem *wdog_base;
|
||||
/*
|
||||
* Reset the system. It is called by machine_restart().
|
||||
*/
|
||||
void arch_reset(char mode, const char *cmd)
|
||||
void mxc_restart(char mode, const char *cmd)
|
||||
{
|
||||
unsigned int wcr_enable;
|
||||
|
||||
#ifdef CONFIG_MACH_MX51_EFIKAMX
|
||||
if (machine_is_mx51_efikamx()) {
|
||||
mx51_efikamx_reset();
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (cpu_is_mx1()) {
|
||||
wcr_enable = (1 << 0);
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user