summaryrefslogtreecommitdiff
path: root/target/linux
diff options
context:
space:
mode:
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2014-03-30 09:16:10 +0000
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2014-03-30 09:16:10 +0000
commita61ea64cb7eb0acb7561a34f6f42f9da68e176c2 (patch)
tree28258093daadf73a8be8e5c959ca638e4cf33660 /target/linux
parentab67a489bee2122501d5b12dc554251fa54a0f0f (diff)
lantiq: reset gphys on reboot
If gphys are not reset upstream uboot can not use them anymore. Signed-off-by: Antonios Vamporakis <ant@area128.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40318 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/lantiq/patches-3.10/0201-xway-reset-gphys-on-reboot.patch19
1 files changed, 19 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-3.10/0201-xway-reset-gphys-on-reboot.patch b/target/linux/lantiq/patches-3.10/0201-xway-reset-gphys-on-reboot.patch
new file mode 100644
index 0000000000..8edc273cd5
--- /dev/null
+++ b/target/linux/lantiq/patches-3.10/0201-xway-reset-gphys-on-reboot.patch
@@ -0,0 +1,19 @@
+--- a/arch/mips/lantiq/xway/reset.c
++++ b/arch/mips/lantiq/xway/reset.c
+@@ -176,8 +176,15 @@ void ltq_rst_init(void)
+
+ static void ltq_machine_restart(char *command)
+ {
++ u32 val = ltq_rcu_r32(RCU_RST_REQ);
++
++ if (of_device_is_compatible(ltq_rcu_np, "lantiq,rcu-xrx200"))
++ val |= RCU_RD_GPHY1_XRX200 | RCU_RD_GPHY0_XRX200;
++
++ val |= RCU_RD_SRST;
++
+ local_irq_disable();
+- ltq_rcu_w32(ltq_rcu_r32(RCU_RST_REQ) | RCU_RD_SRST, RCU_RST_REQ);
++ ltq_rcu_w32(val, RCU_RST_REQ);
+ unreachable();
+ }
+