summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-zynq/common.c
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2013-03-20 11:42:15 +0100
committerMichal Simek <michal.simek@xilinx.com>2013-04-04 09:22:29 +0200
commit96790f0a283976bc59f68657237293fe97b02334 (patch)
tree9d15142ec7d3c6b7acecabcd2a686051cf733af0 /arch/arm/mach-zynq/common.c
parent64b889b39e9958fdcfe5e9b7aa1ac0ffca3fc9a2 (diff)
downloadlinux-96790f0a283976bc59f68657237293fe97b02334.tar.bz2
arm: zynq: Add support for system reset
Do system reset via slcr registers. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/arm/mach-zynq/common.c')
-rw-r--r--arch/arm/mach-zynq/common.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index cd3968c28904..f0a8533af1f9 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -92,6 +92,11 @@ static void __init xilinx_map_io(void)
zynq_scu_map_io();
}
+static void zynq_system_reset(char mode, const char *cmd)
+{
+ zynq_slcr_system_reset();
+}
+
static const char *xilinx_dt_match[] = {
"xlnx,zynq-zc702",
"xlnx,zynq-7000",
@@ -104,4 +109,5 @@ MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
.init_machine = xilinx_init_machine,
.init_time = xilinx_zynq_timer_init,
.dt_compat = xilinx_dt_match,
+ .restart = zynq_system_reset,
MACHINE_END