ramips: mt7620: fix failsafe switch config
[openwrt/openwrt.git] / target / linux / ramips / base-files / lib / preinit / 07_set_preinit_iface_ramips
index 3dce1b667bb88a8934c5300f50fe1e0956a339b0..6948851ee58255de9f9d0195911c20092b03ad8e 100644 (file)
@@ -7,8 +7,22 @@
 
 ramips_set_preinit_iface() {
        RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350|MT7628|MT7688)"`
+       MT762X=`cat /proc/cpuinfo | egrep "MT7620"`
+
        if [ -n "${RT3X5X}" ]; then
                swconfig dev rt305x set reset 1
+       elif [ -n "${MT762X}" ]; then
+               # The mt7530 switch driver enables VLAN by default, but
+               # failsafe uses eth0, making the device unreachable:
+               # https://dev.openwrt.org/ticket/18768
+               case "${MT762X}" in
+               *MT7620*)
+                       mt762x_switchdev=mt7620
+                       ;;
+               esac
+               swconfig dev $mt762x_switchdev set reset 1
+               swconfig dev $mt762x_switchdev set enable_vlan 0
+               swconfig dev $mt762x_switchdev set apply 1
        fi
 
        if echo $RT3X5X | egrep -q "(RT5350|MT7628|MT7688)"; then