mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 18:13:04 +00:00
Merge branch 'dsa-cleanup'
Vladimir Oltean says: ==================== More aggressive DSA cleanup This series deletes some code which is apparently not needed. I've had these patches in my tree for a while, and testing on my boards didn't reveal any issues. Compared to the RFC v1 series, the only change is the addition of patch 3. https://patchwork.kernel.org/project/netdevbpf/cover/20220107184842.550334-1-vladimir.oltean@nxp.com/ ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
12a8f37fd2
@ -330,8 +330,6 @@ static const struct attribute_group dsa_group = {
|
||||
.attrs = dsa_slave_attrs,
|
||||
};
|
||||
|
||||
static struct lock_class_key dsa_master_addr_list_lock_key;
|
||||
|
||||
int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp)
|
||||
{
|
||||
struct dsa_switch *ds = cpu_dp->ds;
|
||||
@ -353,8 +351,6 @@ int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp)
|
||||
wmb();
|
||||
|
||||
dev->dsa_ptr = cpu_dp;
|
||||
lockdep_set_class(&dev->addr_list_lock,
|
||||
&dsa_master_addr_list_lock_key);
|
||||
|
||||
dsa_master_set_promiscuity(dev, 1);
|
||||
|
||||
|
@ -515,26 +515,6 @@ static int dsa_slave_port_obj_del(struct net_device *dev, const void *ctx,
|
||||
return err;
|
||||
}
|
||||
|
||||
static int dsa_slave_get_port_parent_id(struct net_device *dev,
|
||||
struct netdev_phys_item_id *ppid)
|
||||
{
|
||||
struct dsa_port *dp = dsa_slave_to_port(dev);
|
||||
struct dsa_switch *ds = dp->ds;
|
||||
struct dsa_switch_tree *dst = ds->dst;
|
||||
|
||||
/* For non-legacy ports, devlink is used and it takes
|
||||
* care of the name generation. This ndo implementation
|
||||
* should be removed with legacy support.
|
||||
*/
|
||||
if (dp->ds->devlink)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
ppid->id_len = sizeof(dst->index);
|
||||
memcpy(&ppid->id, &dst->index, ppid->id_len);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline netdev_tx_t dsa_slave_netpoll_send_skb(struct net_device *dev,
|
||||
struct sk_buff *skb)
|
||||
{
|
||||
@ -973,24 +953,6 @@ static void dsa_slave_poll_controller(struct net_device *dev)
|
||||
}
|
||||
#endif
|
||||
|
||||
static int dsa_slave_get_phys_port_name(struct net_device *dev,
|
||||
char *name, size_t len)
|
||||
{
|
||||
struct dsa_port *dp = dsa_slave_to_port(dev);
|
||||
|
||||
/* For non-legacy ports, devlink is used and it takes
|
||||
* care of the name generation. This ndo implementation
|
||||
* should be removed with legacy support.
|
||||
*/
|
||||
if (dp->ds->devlink)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
if (snprintf(name, len, "p%d", dp->index) >= len)
|
||||
return -EINVAL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct dsa_mall_tc_entry *
|
||||
dsa_slave_mall_tc_entry_find(struct net_device *dev, unsigned long cookie)
|
||||
{
|
||||
@ -1747,7 +1709,7 @@ static struct devlink_port *dsa_slave_get_devlink_port(struct net_device *dev)
|
||||
{
|
||||
struct dsa_port *dp = dsa_slave_to_port(dev);
|
||||
|
||||
return dp->ds->devlink ? &dp->devlink_port : NULL;
|
||||
return &dp->devlink_port;
|
||||
}
|
||||
|
||||
static void dsa_slave_get_stats64(struct net_device *dev,
|
||||
@ -1792,10 +1754,8 @@ static const struct net_device_ops dsa_slave_netdev_ops = {
|
||||
.ndo_netpoll_cleanup = dsa_slave_netpoll_cleanup,
|
||||
.ndo_poll_controller = dsa_slave_poll_controller,
|
||||
#endif
|
||||
.ndo_get_phys_port_name = dsa_slave_get_phys_port_name,
|
||||
.ndo_setup_tc = dsa_slave_setup_tc,
|
||||
.ndo_get_stats64 = dsa_slave_get_stats64,
|
||||
.ndo_get_port_parent_id = dsa_slave_get_port_parent_id,
|
||||
.ndo_vlan_rx_add_vid = dsa_slave_vlan_rx_add_vid,
|
||||
.ndo_vlan_rx_kill_vid = dsa_slave_vlan_rx_kill_vid,
|
||||
.ndo_get_devlink_port = dsa_slave_get_devlink_port,
|
||||
@ -1917,15 +1877,6 @@ void dsa_slave_setup_tagger(struct net_device *slave)
|
||||
slave->features |= NETIF_F_HW_VLAN_CTAG_FILTER;
|
||||
}
|
||||
|
||||
static struct lock_class_key dsa_slave_netdev_xmit_lock_key;
|
||||
static void dsa_slave_set_lockdep_class_one(struct net_device *dev,
|
||||
struct netdev_queue *txq,
|
||||
void *_unused)
|
||||
{
|
||||
lockdep_set_class(&txq->_xmit_lock,
|
||||
&dsa_slave_netdev_xmit_lock_key);
|
||||
}
|
||||
|
||||
int dsa_slave_suspend(struct net_device *slave_dev)
|
||||
{
|
||||
struct dsa_port *dp = dsa_slave_to_port(slave_dev);
|
||||
@ -1988,9 +1939,6 @@ int dsa_slave_create(struct dsa_port *port)
|
||||
slave_dev->max_mtu = ds->ops->port_max_mtu(ds, port->index);
|
||||
SET_NETDEV_DEVTYPE(slave_dev, &dsa_type);
|
||||
|
||||
netdev_for_each_tx_queue(slave_dev, dsa_slave_set_lockdep_class_one,
|
||||
NULL);
|
||||
|
||||
SET_NETDEV_DEV(slave_dev, port->ds->dev);
|
||||
slave_dev->dev.of_node = port->dn;
|
||||
slave_dev->vlan_features = master->vlan_features;
|
||||
|
Loading…
Reference in New Issue
Block a user