summaryrefslogtreecommitdiffstats
path: root/target/linux/au1000/patches-2.6.37/004-fix_reboot.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/au1000/patches-2.6.37/004-fix_reboot.patch')
-rw-r--r--target/linux/au1000/patches-2.6.37/004-fix_reboot.patch13
1 files changed, 13 insertions, 0 deletions
diff --git a/target/linux/au1000/patches-2.6.37/004-fix_reboot.patch b/target/linux/au1000/patches-2.6.37/004-fix_reboot.patch
new file mode 100644
index 000000000..5035005e3
--- /dev/null
+++ b/target/linux/au1000/patches-2.6.37/004-fix_reboot.patch
@@ -0,0 +1,13 @@
+--- a/arch/mips/alchemy/mtx-1/board_setup.c
++++ b/arch/mips/alchemy/mtx-1/board_setup.c
+@@ -54,8 +54,8 @@ int mtx1_pci_idsel(unsigned int devsel,
+
+ static void mtx1_reset(char *c)
+ {
+- /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */
+- au_writel(0x00000000, 0xAE00001C);
++ /* Jump to the reset vector */
++ __asm__ __volatile__("jr\t%0"::"r"(0xbfc00000));
+ }
+
+ static void mtx1_power_off(void)