net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan()
authorFlorian Fainelli <f.fainelli@gmail.com>
Thu, 6 Feb 2020 19:07:45 +0000 (11:07 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 7 Feb 2020 10:25:09 +0000 (11:25 +0100)
b53_configure_vlan() is called by the bcm_sf2 driver upon setup and
indirectly through resume as well. During the initial setup, we are
guaranteed that dev->vlan_enabled is false, so there is no change in
behavior, however during suspend, we may have enabled VLANs before, so we
do want to restore that setting.

Fixes: dad8d7c6452b ("net: dsa: b53: Properly account for VLAN filtering")
Fixes: 967dd82ffc52 ("net: dsa: b53: Add support for Broadcom RoboSwitch")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/b53/b53_common.c

index 0604975..449a221 100644 (file)
@@ -693,7 +693,7 @@ int b53_configure_vlan(struct dsa_switch *ds)
                b53_do_vlan_op(dev, VTA_CMD_CLEAR);
        }
 
-       b53_enable_vlan(dev, false, ds->vlan_filtering);
+       b53_enable_vlan(dev, dev->vlan_enabled, ds->vlan_filtering);
 
        b53_for_each_port(dev, i)
                b53_write16(dev, B53_VLAN_PAGE,