]> git.ipfire.org Git - thirdparty/kernel/stable.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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Mar 2025 12:02:09 +0000 (13:02 +0100)
[ Upstream commit ccc2f5a436fbb0ae1fb598932a9b8e48423c1959 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/dsa/mt7530.c

index d84ee1b419a614dda5f440e6571cff5f4f27bf21..abc979fbb45d18453bf8db9cfb809f90ad1f1c3d 100644 (file)
@@ -2590,7 +2590,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
@@ -2686,11 +2687,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;