ARM: restart: ixp4xx: use new restart hook
Hook these platforms restart code into the new restart hook rather than using arch_reset(). Acked-by: Krzysztof Hałasa <khc@pm.waw.pl> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
b219415c39
commit
d1b860fbb2
@ -172,6 +172,7 @@ MACHINE_START(AVILA, "Gateworks Avila Network Platform")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
||||
/*
|
||||
@ -190,6 +191,7 @@ MACHINE_START(LOFT, "Giant Shoulder Inc Loft board")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
|
@ -501,3 +501,23 @@ static void __init ixp4xx_clockevent_init(void)
|
||||
|
||||
clockevents_register_device(&clockevent_ixp4xx);
|
||||
}
|
||||
|
||||
void ixp4xx_restart(char mode, const char *cmd)
|
||||
{
|
||||
if ( 1 && mode == 's') {
|
||||
/* Jump into ROM at address 0 */
|
||||
soft_restart(0);
|
||||
} else {
|
||||
/* Use on-chip reset capability */
|
||||
|
||||
/* set the "key" register to enable access to
|
||||
* "timer" and "enable" registers
|
||||
*/
|
||||
*IXP4XX_OSWK = IXP4XX_WDT_KEY;
|
||||
|
||||
/* write 0 to the timer register for an immediate reset */
|
||||
*IXP4XX_OSWT = 0;
|
||||
|
||||
*IXP4XX_OSWE = IXP4XX_WDT_RESET_ENABLE | IXP4XX_WDT_COUNT_ENABLE;
|
||||
}
|
||||
}
|
||||
|
@ -117,6 +117,7 @@ MACHINE_START(ADI_COYOTE, "ADI Engineering Coyote")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
@ -132,6 +133,7 @@ MACHINE_START(IXDPG425, "Intel IXDPG425")
|
||||
.timer = &ixp4xx_timer,
|
||||
.atag_offset = 0x100,
|
||||
.init_machine = coyote_init,
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
|
@ -286,4 +286,5 @@ MACHINE_START(DSMG600, "D-Link DSM-G600 RevA")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
@ -277,5 +277,6 @@ MACHINE_START(FSG, "Freecom FSG-3")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
||||
|
@ -104,5 +104,6 @@ MACHINE_START(GATEWAY7001, "Gateway 7001 AP")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
@ -504,4 +504,5 @@ MACHINE_START(GORAMO_MLR, "MultiLink")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
@ -172,6 +172,7 @@ MACHINE_START(GTWX5715, "Gemtek GTWX5715 (Linksys WRV54G)")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
||||
|
||||
|
@ -125,6 +125,7 @@ extern void ixp4xx_init_irq(void);
|
||||
extern void ixp4xx_sys_init(void);
|
||||
extern void ixp4xx_timer_init(void);
|
||||
extern struct sys_timer ixp4xx_timer;
|
||||
extern void ixp4xx_restart(char, const char *);
|
||||
extern void ixp4xx_pci_preinit(void);
|
||||
struct pci_sys_data;
|
||||
extern int ixp4xx_setup(int nr, struct pci_sys_data *sys);
|
||||
|
@ -8,9 +8,6 @@
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <mach/hardware.h>
|
||||
|
||||
static inline void arch_idle(void)
|
||||
{
|
||||
/* ixp4xx does not implement the XScale PWRMODE register,
|
||||
@ -21,24 +18,6 @@ static inline void arch_idle(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
static inline void arch_reset(char mode, const char *cmd)
|
||||
{
|
||||
if ( 1 && mode == 's') {
|
||||
/* Jump into ROM at address 0 */
|
||||
soft_restart(0);
|
||||
} else {
|
||||
/* Use on-chip reset capability */
|
||||
|
||||
/* set the "key" register to enable access to
|
||||
* "timer" and "enable" registers
|
||||
*/
|
||||
*IXP4XX_OSWK = IXP4XX_WDT_KEY;
|
||||
|
||||
/* write 0 to the timer register for an immediate reset */
|
||||
*IXP4XX_OSWT = 0;
|
||||
|
||||
*IXP4XX_OSWE = IXP4XX_WDT_RESET_ENABLE | IXP4XX_WDT_COUNT_ENABLE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -261,6 +261,7 @@ MACHINE_START(IXDP425, "Intel IXDP425 Development Platform")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
|
@ -321,4 +321,5 @@ MACHINE_START(NAS100D, "Iomega NAS 100d")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
@ -307,4 +307,5 @@ MACHINE_START(NSLU2, "Linksys NSLU2")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
@ -246,6 +246,7 @@ MACHINE_START(DEVIXP, "Omicron DEVIXP")
|
||||
.init_irq = ixp4xx_init_irq,
|
||||
.timer = &ixp4xx_timer,
|
||||
.init_machine = omixp_init,
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
@ -259,6 +260,7 @@ MACHINE_START(MICCPT, "Omicron MICCPT")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
||||
@ -269,5 +271,6 @@ MACHINE_START(MIC256, "Omicron MIC256")
|
||||
.init_irq = ixp4xx_init_irq,
|
||||
.timer = &ixp4xx_timer,
|
||||
.init_machine = omixp_init,
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
@ -244,4 +244,5 @@ MACHINE_START(ARCOM_VULCAN, "Arcom/Eurotech Vulcan")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
|
@ -105,5 +105,6 @@ MACHINE_START(WG302V2, "Netgear WG302 v2 / WAG302 v2")
|
||||
#if defined(CONFIG_PCI)
|
||||
.dma_zone_size = SZ_64M,
|
||||
#endif
|
||||
.restart = ixp4xx_restart,
|
||||
MACHINE_END
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user