]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: dsa: mt7530: Fix traffic flooding for MMIO devices
authorLorenzo Bianconi <lorenzo@kernel.org>
Tue, 4 Mar 2025 08:50:23 +0000 (09:50 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 6 Mar 2025 03:16:24 +0000 (19:16 -0800)
On MMIO devices (e.g. MT7988 or EN7581) unicast traffic received on lanX
port is flooded on all other user ports if the DSA switch is configured
without VLAN support since PORT_MATRIX in PCR regs contains all user
ports. Similar to MDIO devices (e.g. MT7530 and MT7531) fix the issue
defining default VLAN-ID 0 for MT7530 MMIO devices.

Fixes: 110c18bfed414 ("net: dsa: mt7530: introduce driver for MT7988 built-in switch")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Reviewed-by: Chester A. Unal <chester.a.unal@arinc9.com>
Link: https://patch.msgid.link/20250304-mt7988-flooding-fix-v1-1-905523ae83e9@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/mt7530.c

index 1c83af805209cae40c56138fa8f72261e396f58c..5883eb93efb11423bec260a11ff8b60cfff1fd2c 100644 (file)
@@ -2591,7 +2591,8 @@ mt7531_setup_common(struct dsa_switch *ds)
        if (ret < 0)
                return ret;
 
-       return 0;
+       /* Setup VLAN ID 0 for VLAN-unaware bridges */
+       return mt7530_setup_vlan0(priv);
 }
 
 static int
@@ -2687,11 +2688,6 @@ mt7531_setup(struct dsa_switch *ds)
        if (ret)
                return ret;
 
-       /* Setup VLAN ID 0 for VLAN-unaware bridges */
-       ret = mt7530_setup_vlan0(priv);
-       if (ret)
-               return ret;
-
        ds->assisted_learning_on_cpu_port = true;
        ds->mtu_enforcement_ingress = true;