Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d1b860fb authored by Russell King's avatar Russell King
Browse files

ARM: restart: ixp4xx: use new restart hook



Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Acked-by: default avatarKrzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent b219415c
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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
+20 −0
Original line number Diff line number Diff line
@@ -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;
	}
}
+2 −0
Original line number Diff line number Diff line
@@ -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
+1 −0
Original line number Diff line number Diff line
@@ -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
+1 −0
Original line number Diff line number Diff line
@@ -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
Loading