diff options
Diffstat (limited to 'drivers/net/dsa/microchip')
| -rw-r--r-- | drivers/net/dsa/microchip/ksz8795.c | 1 | ||||
| -rw-r--r-- | drivers/net/dsa/microchip/ksz_common.c | 10 | ||||
| -rw-r--r-- | drivers/net/dsa/microchip/ksz_common.h | 4 | 
3 files changed, 8 insertions, 7 deletions
| diff --git a/drivers/net/dsa/microchip/ksz8795.c b/drivers/net/dsa/microchip/ksz8795.c index 013e9c02be71..991b9c6b6ce7 100644 --- a/drivers/net/dsa/microchip/ksz8795.c +++ b/drivers/net/dsa/microchip/ksz8795.c @@ -10,6 +10,7 @@  #include <linux/delay.h>  #include <linux/export.h>  #include <linux/gpio.h> +#include <linux/if_vlan.h>  #include <linux/kernel.h>  #include <linux/module.h>  #include <linux/platform_data/microchip-ksz.h> diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c index 8a04302018dc..55dbda04ea62 100644 --- a/drivers/net/dsa/microchip/ksz_common.c +++ b/drivers/net/dsa/microchip/ksz_common.c @@ -43,7 +43,7 @@ void ksz_update_port_member(struct ksz_device *dev, int port)  			continue;  		if (port == i)  			continue; -		if (!dp->bridge_dev || dp->bridge_dev != other_dp->bridge_dev) +		if (!dsa_port_bridge_same(dp, other_dp))  			continue;  		if (other_p->stp_state == BR_STATE_FORWARDING && @@ -192,7 +192,8 @@ void ksz_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *buf)  EXPORT_SYMBOL_GPL(ksz_get_ethtool_stats);  int ksz_port_bridge_join(struct dsa_switch *ds, int port, -			 struct net_device *br) +			 struct dsa_bridge bridge, +			 bool *tx_fwd_offload)  {  	/* port_stp_state_set() will be called after to put the port in  	 * appropriate state so there is no need to do anything. @@ -203,7 +204,7 @@ int ksz_port_bridge_join(struct dsa_switch *ds, int port,  EXPORT_SYMBOL_GPL(ksz_port_bridge_join);  void ksz_port_bridge_leave(struct dsa_switch *ds, int port, -			   struct net_device *br) +			   struct dsa_bridge bridge)  {  	/* port_stp_state_set() will be called after to put the port in  	 * forwarding state so there is no need to do anything. @@ -301,7 +302,6 @@ int ksz_port_mdb_del(struct dsa_switch *ds, int port,  	struct ksz_device *dev = ds->priv;  	struct alu_struct alu;  	int index; -	int ret = 0;  	for (index = 0; index < dev->num_statics; index++) {  		if (!dev->dev_ops->r_sta_mac_table(dev, index, &alu)) { @@ -323,7 +323,7 @@ int ksz_port_mdb_del(struct dsa_switch *ds, int port,  	dev->dev_ops->w_sta_mac_table(dev, index, &alu);  exit: -	return ret; +	return 0;  }  EXPORT_SYMBOL_GPL(ksz_port_mdb_del); diff --git a/drivers/net/dsa/microchip/ksz_common.h b/drivers/net/dsa/microchip/ksz_common.h index 54b456bc8972..df8ae59c8525 100644 --- a/drivers/net/dsa/microchip/ksz_common.h +++ b/drivers/net/dsa/microchip/ksz_common.h @@ -155,9 +155,9 @@ void ksz_mac_link_down(struct dsa_switch *ds, int port, unsigned int mode,  int ksz_sset_count(struct dsa_switch *ds, int port, int sset);  void ksz_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *buf);  int ksz_port_bridge_join(struct dsa_switch *ds, int port, -			 struct net_device *br); +			 struct dsa_bridge bridge, bool *tx_fwd_offload);  void ksz_port_bridge_leave(struct dsa_switch *ds, int port, -			   struct net_device *br); +			   struct dsa_bridge bridge);  void ksz_port_fast_age(struct dsa_switch *ds, int port);  int ksz_port_fdb_dump(struct dsa_switch *ds, int port, dsa_fdb_dump_cb_t *cb,  		      void *data); |