|
@@ -315,7 +315,7 @@ static struct sys_timer realview_pb11mp_timer = {
|
|
|
.init = realview_pb11mp_timer_init,
|
|
|
};
|
|
|
|
|
|
-static void realview_pb11mp_reset(char mode)
|
|
|
+static void realview_pb11mp_restart(char mode, const char *cmd)
|
|
|
{
|
|
|
void __iomem *reset_ctrl = __io_address(REALVIEW_SYS_RESETCTL);
|
|
|
void __iomem *lock_ctrl = __io_address(REALVIEW_SYS_LOCK);
|
|
@@ -327,6 +327,7 @@ static void realview_pb11mp_reset(char mode)
|
|
|
__raw_writel(REALVIEW_SYS_LOCK_VAL, lock_ctrl);
|
|
|
__raw_writel(0x0000, reset_ctrl);
|
|
|
__raw_writel(0x0004, reset_ctrl);
|
|
|
+ dsb();
|
|
|
}
|
|
|
|
|
|
static void __init realview_pb11mp_init(void)
|
|
@@ -355,7 +356,6 @@ static void __init realview_pb11mp_init(void)
|
|
|
#ifdef CONFIG_LEDS
|
|
|
leds_event = realview_leds_event;
|
|
|
#endif
|
|
|
- realview_reset = realview_pb11mp_reset;
|
|
|
}
|
|
|
|
|
|
MACHINE_START(REALVIEW_PB11MP, "ARM-RealView PB11MPCore")
|
|
@@ -370,4 +370,5 @@ MACHINE_START(REALVIEW_PB11MP, "ARM-RealView PB11MPCore")
|
|
|
#ifdef CONFIG_ZONE_DMA
|
|
|
.dma_zone_size = SZ_256M,
|
|
|
#endif
|
|
|
+ .restart = realview_pb11mp_restart,
|
|
|
MACHINE_END
|