net: dsa: pass bridge down to drivers

Some DSA drivers may or may not support multiple software bridges on top
of an hardware switch.

It is more convenient for them to access the bridge's net_device for
finer configuration.

Removing the need to craft and access a bitmask also simplifies the
code.

This patch changes the signature of bridge related functions, update DSA
drivers, and removes dsa_slave_br_port_mask.

Signed-off-by: Vivien Didelot <[email protected]>
Tested-by: Florian Fainelli <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
Vivien Didelot 2016-02-12 12:09:39 -05:00 • committed by David S. Miller
commit a6692754d6
7 changed files with 30 additions and 46 deletions

View file

@ -297,9 +297,8 @@ struct dsa_switch_driver {
* Bridge integration
*/
int (*port_join_bridge)(struct dsa_switch *ds, int port,
u32 br_port_mask);
int (*port_leave_bridge)(struct dsa_switch *ds, int port,
u32 br_port_mask);
struct net_device *bridge);
int (*port_leave_bridge)(struct dsa_switch *ds, int port);
int (*port_stp_update)(struct dsa_switch *ds, int port,
u8 state);