diff --git a/patches/openwrt/hack/0007-MOX-Hacky-restart-to-make-sure-it-works.patch b/patches/openwrt/hack/0007-MOX-Hacky-restart-to-make-sure-it-works.patch
new file mode 100644
index 0000000000000000000000000000000000000000..9cddf3ae6e57daa9aa36b7f43f90577453d87c2c
--- /dev/null
+++ b/patches/openwrt/hack/0007-MOX-Hacky-restart-to-make-sure-it-works.patch
@@ -0,0 +1,63 @@
+From b34fe18c7743dc181a3f168b73b971df9bb3f4fa Mon Sep 17 00:00:00 2001
+From: Michal Hrusecky <michal.hrusecky@nic.cz>
+Date: Mon, 14 Jan 2019 17:06:17 +0100
+Subject: [PATCH] MOX: Hacky restart to make sure it works
+
+---
+ ...m64-restart-Armada-3700-restart-code.patch | 44 +++++++++++++++++++
+ 1 file changed, 44 insertions(+)
+ create mode 100644 target/linux/mvebu/patches-4.14/9999-arm64-restart-Armada-3700-restart-code.patch
+
+diff --git a/target/linux/mvebu/patches-4.14/9999-arm64-restart-Armada-3700-restart-code.patch b/target/linux/mvebu/patches-4.14/9999-arm64-restart-Armada-3700-restart-code.patch
+new file mode 100644
+index 0000000000..b442f71bee
+--- /dev/null
++++ b/target/linux/mvebu/patches-4.14/9999-arm64-restart-Armada-3700-restart-code.patch
+@@ -0,0 +1,44 @@
++From d419edef1a2429acfa35341eb6fbfaea3b6c87c4 Mon Sep 17 00:00:00 2001
++From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <marek.behun@nic.cz>
++Date: Mon, 14 Jan 2019 17:00:04 +0100
++Subject: [PATCH] arm64: restart: Armada 3700 restart code
++MIME-Version: 1.0
++Content-Type: text/plain; charset=UTF-8
++Content-Transfer-Encoding: 8bit
++
++This is a bugfix for Turris Mox, do not send to mainline.
++
++Signed-off-by: Marek BehĂşn <marek.behun@nic.cz>
++---
++ arch/arm64/kernel/process.c | 15 +++++++++++----
++ 1 file changed, 11 insertions(+), 4 deletions(-)
++
++diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
++index 9e773732520c..2ae392c218fc 100644
++--- a/arch/arm64/kernel/process.c
+++++ b/arch/arm64/kernel/process.c
++@@ -158,10 +158,17 @@ void machine_restart(char *cmd)
++ 		efi_reboot(reboot_mode, NULL);
++ 
++ 	/* Now call the architecture specific reboot code. */
++-	if (arm_pm_restart)
++-		arm_pm_restart(reboot_mode, cmd);
++-	else
++-		do_kernel_restart(cmd);
+++	if (0) {
+++		if (arm_pm_restart)
+++			arm_pm_restart(reboot_mode, cmd);
+++		else
+++			do_kernel_restart(cmd);
+++	} else {
+++		void __iomem *r = ioremap(0xd0013000, 0x1000);
+++		writel(0x1d1e, r + 0x840);
+++		iounmap(r);
+++		mdelay(1000);
+++	}
++ 
++ 	/*
++ 	 * Whoops - the architecture was unable to reboot.
++-- 
++2.19.2
++
+-- 
+2.20.1
+