Commit a1c1901c authored by Jonas Gorski's avatar Jonas Gorski Committed by Jakub Kicinski
Browse files

net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave



The untagged default VLAN is added to the default vlan, which may be
one, but we modify the VLAN 0 entry on bridge leave.

Fix this to use the correct VLAN entry for the default pvid.

Fixes: fea83353 ("net: dsa: b53: Fix default VLAN ID")
Signed-off-by: default avatarJonas Gorski <jonas.gorski@gmail.com>
Tested-by: default avatarFlorian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: default avatarFlorian Fainelli <florian.fainelli@broadcom.com>
Link: https://patch.msgid.link/20250429201710.330937-6-jonas.gorski@gmail.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 083c6b28
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1986,7 +1986,7 @@ EXPORT_SYMBOL(b53_br_join);
void b53_br_leave(struct dsa_switch *ds, int port, struct dsa_bridge bridge)
{
	struct b53_device *dev = ds->priv;
	struct b53_vlan *vl = &dev->vlans[0];
	struct b53_vlan *vl;
	s8 cpu_port = dsa_to_port(ds, port)->cpu_dp->index;
	unsigned int i;
	u16 pvlan, reg, pvid;
@@ -2012,6 +2012,7 @@ void b53_br_leave(struct dsa_switch *ds, int port, struct dsa_bridge bridge)
	dev->ports[port].vlan_ctl_mask = pvlan;

	pvid = b53_default_pvid(dev);
	vl = &dev->vlans[pvid];

	/* Make this port join all VLANs without VLAN entries */
	if (is58xx(dev)) {