From 3a9752bbd2bc00e407b5dcad21789720f40abf0e Mon Sep 17 00:00:00 2001 From: John Crispin Date: Mon, 18 Aug 2014 13:08:52 +0000 Subject: [PATCH] ramips: add a workaround to fix failsafe on RT5350 Due to TCP connections not working when VLAN is disabled, this is needed to get failsafe functional. Signed-off-by: Paul Fertser SVN-Revision: 42179 --- .../lib/preinit/07_set_preinit_iface_ramips | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips b/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips index db03b6bde6..ab87421bb9 100644 --- a/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips +++ b/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips @@ -11,7 +11,24 @@ ramips_set_preinit_iface() { swconfig dev rt305x set reset 1 fi - ifname=eth0 + if echo $RT3X5X | grep -q RT5350; then + # This is a dirty hack to get by while the switch + # problem is investigated. When VLAN is disabled, ICMP + # pings work as expected, but TCP connections time + # out, so telnetting in failsafe is impossible. The + # likely reason is TCP checksumming hardware getting + # disabled: + # https://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg19870.html + swconfig dev rt305x set enable_vlan 1 + swconfig dev rt305x vlan 1 set ports "0 6" + swconfig dev rt305x port 6 set untag 0 + swconfig dev rt305x set apply 1 + vconfig add eth0 1 + ifconfig eth0 up + ifname=eth0.1 + else + ifname=eth0 + fi } boot_hook_add preinit_main ramips_set_preinit_iface