ramips: mt7620: disable SOC VLANs for external switches
authorMichael Pratt <mcpratt@pm.me>
Tue, 20 Apr 2021 16:35:47 +0000 (12:35 -0400)
committerChuanhong Guo <gch981213@gmail.com>
Wed, 23 Jun 2021 06:22:19 +0000 (14:22 +0800)
These boards have AR8327 or QCA8337 external ethernet switch.
The SOC also has it's own internal switch
where VLAN is now enabled by default.

Changes to preinit caused all switches to have VLANs enabled by default
even if they are not configured with a topology in uci_defaults
(see commit f017f617aecbd47debd4d3a734dc0e471342db96)

When both internal and external switches have VLANs,
and the external switch has both LAN and WAN,
the TX traffic from the SOC cannot flow to the tagged port on the external switch
because the VLAN IDs are not matching.

So disable the internal switch VLANs by default on these boards.

Also, add a topology for the internal switch,
so that on LuCI there is not an "unknown topology" warning.

In theory, it may be possible to have LAN ports on both switches
through internal and external PHYs, but there are no known boards that have this.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
target/linux/ramips/mt7620/base-files/etc/board.d/02_network

index 71850863c0230a22ae8755731db16f28008867aa..eaa8cbf7aa3e31261585e57c75fe8738e05f24fa 100644 (file)
@@ -136,6 +136,9 @@ ramips_setup_interfaces()
        engenius,esr600)
                ucidef_add_switch "switch0" \
                        "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "0@eth0"
+               ucidef_add_switch "switch1" \
+                       "5:lan" "6@eth0"
+               ucidef_add_switch_attr "switch1" "enable" "false"
                ;;
        fon,fon2601)
                ucidef_add_switch "switch0" \
@@ -168,6 +171,9 @@ ramips_setup_interfaces()
        lava,lr-25g001)
                ucidef_add_switch "switch0" \
                        "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
+               ucidef_add_switch "switch1" \
+                       "5:lan" "6@eth0"
+               ucidef_add_switch_attr "switch1" "enable" "false"
                ;;
        lenovo,newifi-y1|\
        xiaomi,miwifi-mini)