diff options
author | David S. Miller | 2015-10-13 04:26:44 -0700 |
---|---|---|
committer | David S. Miller | 2015-10-13 04:26:44 -0700 |
commit | f83665d0c41f3e24602f7dd03003574f852b326f (patch) | |
tree | fe2d3cf9b665b6d6caaa5d3068fd2d5e509ace27 /net | |
parent | 241b271952eb319622a6cc740a72abe41fc27ad6 (diff) | |
parent | 5fe7f68016ff9dcb59632071f9abf30296bbad3c (diff) |
Merge branch 'dsa-mv88e6xxx-fix-hardware-bridging'
Vivien Didelot says:
====================
net: dsa: mv88e6xxx: fix hardware bridging
DSA and its drivers currently hook the NETDEV_CHANGEUPPER net_device event in
order to configure the VLAN map of every port.
This VLAN map is a feature of these switch chips to hardcode and restrict which
output ports a given input port can egress frames to.
A Linux bridge is a simple untagged VLAN propagated by the bridge code itself.
With a proper 802.1Q support, a driver does not need this hook anymore, and
will simply program the related VLAN object.
This patchset improves the hardware bridging code in the mv88e6xxx driver with
a strict 802.1Q mode.
Ideally, the equivalent must be done for Broadcom Starfighter 2 and Rocker,
before completely getting rid of this hook.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/dsa/slave.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/dsa/slave.c b/net/dsa/slave.c index bb2bd3b56b16..43d7342e7527 100644 --- a/net/dsa/slave.c +++ b/net/dsa/slave.c @@ -1276,7 +1276,7 @@ int dsa_slave_netdevice_event(struct notifier_block *unused, goto out; err = dsa_slave_master_changed(dev); - if (err) + if (err && err != -EOPNOTSUPP) netdev_warn(dev, "failed to reflect master change\n"); break; |