diff options
Diffstat (limited to 'drivers/net/dsa/rtl8366rb.c')
| -rw-r--r-- | drivers/net/dsa/rtl8366rb.c | 9 | 
1 files changed, 5 insertions, 4 deletions
| diff --git a/drivers/net/dsa/rtl8366rb.c b/drivers/net/dsa/rtl8366rb.c index 03deacd83e61..ecc19bd5115f 100644 --- a/drivers/net/dsa/rtl8366rb.c +++ b/drivers/net/dsa/rtl8366rb.c @@ -1186,7 +1186,8 @@ rtl8366rb_port_disable(struct dsa_switch *ds, int port)  static int  rtl8366rb_port_bridge_join(struct dsa_switch *ds, int port, -			   struct net_device *bridge) +			   struct dsa_bridge bridge, +			   bool *tx_fwd_offload)  {  	struct realtek_smi *smi = ds->priv;  	unsigned int port_bitmap = 0; @@ -1198,7 +1199,7 @@ rtl8366rb_port_bridge_join(struct dsa_switch *ds, int port,  		if (i == port)  			continue;  		/* Not on this bridge */ -		if (dsa_to_port(ds, i)->bridge_dev != bridge) +		if (!dsa_port_offloads_bridge(dsa_to_port(ds, i), &bridge))  			continue;  		/* Join this port to each other port on the bridge */  		ret = regmap_update_bits(smi->map, RTL8366RB_PORT_ISO(i), @@ -1218,7 +1219,7 @@ rtl8366rb_port_bridge_join(struct dsa_switch *ds, int port,  static void  rtl8366rb_port_bridge_leave(struct dsa_switch *ds, int port, -			    struct net_device *bridge) +			    struct dsa_bridge bridge)  {  	struct realtek_smi *smi = ds->priv;  	unsigned int port_bitmap = 0; @@ -1230,7 +1231,7 @@ rtl8366rb_port_bridge_leave(struct dsa_switch *ds, int port,  		if (i == port)  			continue;  		/* Not on this bridge */ -		if (dsa_to_port(ds, i)->bridge_dev != bridge) +		if (!dsa_port_offloads_bridge(dsa_to_port(ds, i), &bridge))  			continue;  		/* Remove this port from any other port on the bridge */  		ret = regmap_update_bits(smi->map, RTL8366RB_PORT_ISO(i), |