Commit 5e3f847a authored by Vladimir Oltean's avatar Vladimir Oltean Committed by David S. Miller

net: dsa: Add teardown callback for drivers

This is helpful for e.g. draining per-driver (not per-port) tagger
queues.
Signed-off-by: default avatarVladimir Oltean <olteanv@gmail.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 146d442c
...@@ -357,6 +357,7 @@ struct dsa_switch_ops { ...@@ -357,6 +357,7 @@ struct dsa_switch_ops {
int port); int port);
int (*setup)(struct dsa_switch *ds); int (*setup)(struct dsa_switch *ds);
void (*teardown)(struct dsa_switch *ds);
u32 (*get_phy_flags)(struct dsa_switch *ds, int port); u32 (*get_phy_flags)(struct dsa_switch *ds, int port);
/* /*
......
...@@ -408,6 +408,9 @@ static void dsa_switch_teardown(struct dsa_switch *ds) ...@@ -408,6 +408,9 @@ static void dsa_switch_teardown(struct dsa_switch *ds)
dsa_switch_unregister_notifier(ds); dsa_switch_unregister_notifier(ds);
if (ds->ops->teardown)
ds->ops->teardown(ds);
if (ds->devlink) { if (ds->devlink) {
devlink_unregister(ds->devlink); devlink_unregister(ds->devlink);
devlink_free(ds->devlink); devlink_free(ds->devlink);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment