|
|
@@ -63,7 +63,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
|
|
|
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
|
|
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
|
|
-@@ -1586,6 +1586,26 @@ static int mv88e6xxx_port_check_hw_vlan(
|
|
|
+@@ -1590,6 +1590,26 @@ static int mv88e6xxx_port_check_hw_vlan(
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
@@ -90,7 +90,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
static int mv88e6xxx_port_vlan_filtering(struct dsa_switch *ds, int port,
|
|
|
bool vlan_filtering,
|
|
|
struct switchdev_trans *trans)
|
|
|
-@@ -1599,7 +1619,16 @@ static int mv88e6xxx_port_vlan_filtering
|
|
|
+@@ -1603,7 +1623,16 @@ static int mv88e6xxx_port_vlan_filtering
|
|
|
return chip->info->max_vid ? 0 : -EOPNOTSUPP;
|
|
|
|
|
|
mv88e6xxx_reg_lock(chip);
|
|
|
@@ -107,7 +107,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
mv88e6xxx_reg_unlock(chip);
|
|
|
|
|
|
return err;
|
|
|
-@@ -1982,8 +2011,10 @@ static void mv88e6xxx_port_vlan_add(stru
|
|
|
+@@ -1986,8 +2015,10 @@ static void mv88e6xxx_port_vlan_add(stru
|
|
|
struct mv88e6xxx_chip *chip = ds->priv;
|
|
|
bool untagged = vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED;
|
|
|
bool pvid = vlan->flags & BRIDGE_VLAN_INFO_PVID;
|
|
|
@@ -118,7 +118,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
u16 vid;
|
|
|
|
|
|
if (!chip->info->max_vid)
|
|
|
-@@ -2008,9 +2039,23 @@ static void mv88e6xxx_port_vlan_add(stru
|
|
|
+@@ -2012,9 +2043,23 @@ static void mv88e6xxx_port_vlan_add(stru
|
|
|
dev_err(ds->dev, "p%d: failed to add VLAN %d%c\n", port,
|
|
|
vid, untagged ? 'u' : 't');
|
|
|
|
|
|
@@ -145,7 +145,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
|
|
|
mv88e6xxx_reg_unlock(chip);
|
|
|
}
|
|
|
-@@ -2061,6 +2106,7 @@ static int mv88e6xxx_port_vlan_del(struc
|
|
|
+@@ -2065,6 +2110,7 @@ static int mv88e6xxx_port_vlan_del(struc
|
|
|
const struct switchdev_obj_port_vlan *vlan)
|
|
|
{
|
|
|
struct mv88e6xxx_chip *chip = ds->priv;
|
|
|
@@ -153,7 +153,7 @@ Signed-off-by: Jakub Kicinski <[email protected]>
|
|
|
u16 pvid, vid;
|
|
|
int err = 0;
|
|
|
|
|
|
-@@ -2079,7 +2125,9 @@ static int mv88e6xxx_port_vlan_del(struc
|
|
|
+@@ -2083,7 +2129,9 @@ static int mv88e6xxx_port_vlan_del(struc
|
|
|
goto unlock;
|
|
|
|
|
|
if (vid == pvid) {
|