aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-10-18 19:25:30 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-10-18 19:25:30 +0000
commita7ee0142e77846c49464f54cae52ad5370477ed9 (patch)
treef14c578e7f933b26b11bf048a1533b0e1883b3c0 /target/linux/ar71xx
parentb537205ea2892cd23da6f75730dae04da8aad128 (diff)
downloadupstream-a7ee0142e77846c49464f54cae52ad5370477ed9.tar.gz
upstream-a7ee0142e77846c49464f54cae52ad5370477ed9.tar.bz2
upstream-a7ee0142e77846c49464f54cae52ad5370477ed9.zip
ar71xx: disable irq on reboot to fix hang issues (fixes #17839)
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42955
Diffstat (limited to 'target/linux/ar71xx')
-rw-r--r--target/linux/ar71xx/patches-3.10/728-MIPS-ath79-fix-restart.patch10
-rw-r--r--target/linux/ar71xx/patches-3.14/728-MIPS-ath79-fix-restart.patch10
2 files changed, 20 insertions, 0 deletions
diff --git a/target/linux/ar71xx/patches-3.10/728-MIPS-ath79-fix-restart.patch b/target/linux/ar71xx/patches-3.10/728-MIPS-ath79-fix-restart.patch
new file mode 100644
index 0000000000..0027c59631
--- /dev/null
+++ b/target/linux/ar71xx/patches-3.10/728-MIPS-ath79-fix-restart.patch
@@ -0,0 +1,10 @@
+--- a/arch/mips/ath79/setup.c
++++ b/arch/mips/ath79/setup.c
+@@ -40,6 +40,7 @@ static char ath79_sys_type[ATH79_SYS_TYP
+
+ static void ath79_restart(char *command)
+ {
++ local_irq_disable();
+ ath79_device_reset_set(AR71XX_RESET_FULL_CHIP);
+ for (;;)
+ if (cpu_wait)
diff --git a/target/linux/ar71xx/patches-3.14/728-MIPS-ath79-fix-restart.patch b/target/linux/ar71xx/patches-3.14/728-MIPS-ath79-fix-restart.patch
new file mode 100644
index 0000000000..0027c59631
--- /dev/null
+++ b/target/linux/ar71xx/patches-3.14/728-MIPS-ath79-fix-restart.patch
@@ -0,0 +1,10 @@
+--- a/arch/mips/ath79/setup.c
++++ b/arch/mips/ath79/setup.c
+@@ -40,6 +40,7 @@ static char ath79_sys_type[ATH79_SYS_TYP
+
+ static void ath79_restart(char *command)
+ {
++ local_irq_disable();
+ ath79_device_reset_set(AR71XX_RESET_FULL_CHIP);
+ for (;;)
+ if (cpu_wait)