diff --git a/target/linux/ramips/mt7621/config-3.14 b/target/linux/ramips/mt7621/config-3.14
index c9383090184c2a10f88e7591ba5902532d05491f..bc1527d0c732837db5a0f3541c33b9a0d06b8df7 100644
--- a/target/linux/ramips/mt7621/config-3.14
+++ b/target/linux/ramips/mt7621/config-3.14
@@ -150,6 +150,9 @@ CONFIG_PHYLIB=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_RT2880=y
 # CONFIG_PINCTRL_SINGLE is not set
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_SUPPLY=y
 # CONFIG_PREEMPT_RCU is not set
 CONFIG_RALINK=y
 CONFIG_RALINK_USBPHY=y
diff --git a/target/linux/ramips/patches-3.14/999-no-pm_poweroff.patch b/target/linux/ramips/patches-3.14/999-no-pm_poweroff.patch
new file mode 100644
index 0000000000000000000000000000000000000000..ce2bc1c53b7df5bb33ffc0053f9d4d6b88288228
--- /dev/null
+++ b/target/linux/ramips/patches-3.14/999-no-pm_poweroff.patch
@@ -0,0 +1,12 @@
+Index: linux-3.14.18/arch/mips/ralink/reset.c
+===================================================================
+--- linux-3.14.18.orig/arch/mips/ralink/reset.c	2014-09-06 01:34:59.000000000 +0200
++++ linux-3.14.18/arch/mips/ralink/reset.c	2014-11-14 14:28:44.548764125 +0100
+@@ -98,7 +98,6 @@
+ {
+ 	_machine_restart = ralink_restart;
+ 	_machine_halt = ralink_halt;
+-	pm_power_off = ralink_halt;
+ 
+ 	return 0;
+ }