net: dsa: move dsa slave destroy code to slave.c
Subsystems (3)
PATCH v2 6/6 net: dsa: move dsa slave destroy code to slave.c
Move dsa slave dedicated code from dsa_switch_destroy to a new dsa_slave_destroy function in slave.c
Signed-off-by Frode Isaksen <[email protected]>
Signed-off-by Neil Armstrong <[email protected]>
--- net/dsa/dsa.c | 5 +---- net/dsa/dsa_priv.h | 1 + net/dsa/slave.c | 10 ++++++++++ 3 files changed, 12 insertions(+), 4 deletions(-)
net/dsa/dsa.c +1 -4
@@ -454,10 +454,7 @@ static void dsa_switch_destroy(struct dsa_switch *ds)if (!ds->ports[port])continue ; -netif_carrier_off (ds->ports[port]); -unregister_netdev (ds->ports[port]); -phy_disconnect (p->phy); -free_netdev (ds->ports[port]); +dsa_slave_destroy (ds->ports[port]); }mdiobus_unregister (ds->slave_mii_bus);
net/dsa/dsa_priv.h +1 -0
@@ -61,6 +61,7 @@ extern const struct dsa_device_ops notag_netdev_ops;void dsa_slave_mii_bus_init (struct dsa_switch *ds);int dsa_slave_create (struct dsa_switch *ds,struct device *parent,int port,char *name); +void dsa_slave_destroy (struct net_device *slave_dev);int dsa_slave_suspend (struct net_device *slave_dev);int dsa_slave_resume (struct net_device *slave_dev); int dsa_slave_netdevice_event(struct notifier_block *unused,
net/dsa/slave.c +10 -0
@@ -1223,6 +1223,16 @@ int dsa_slave_create(struct dsa_switch *ds, struct device *parent,return 0 ; } +void dsa_slave_destroy (struct net_device *slave_dev) +{ +struct dsa_slave_priv *p =netdev_priv (slave_dev); + +netif_carrier_off (slave_dev); +unregister_netdev (slave_dev); +phy_disconnect (p->phy); +free_netdev (slave_dev); +} +static bool dsa_slave_dev_check (struct net_device *dev) {return dev->netdev_ops == &dsa_slave_netdev_ops;
Signature · 1 line
1.9.1