summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2018-11-17 08:16:29 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2018-11-17 08:16:28 -0800
commit84da71b286d535c81a57346f12d94dadf4b55cbe (patch)
tree71de90a4a7d9dc9614f8eba22b37561d4d1faea3 /drivers/net
parentd03f522a8fd71f1b4d95d60253f6f3e4e2ef9917 (diff)
parente548e6fd447d175cf7aaca14cb5a2826e0483130 (diff)
Merge "cnss2: Handle USB disconnect scenario"
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/cnss2/usb.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/cnss2/usb.c b/drivers/net/wireless/cnss2/usb.c
index 4310109987b0..70aba70757cf 100644
--- a/drivers/net/wireless/cnss2/usb.c
+++ b/drivers/net/wireless/cnss2/usb.c
@@ -261,6 +261,13 @@ static void cnss_usb_remove(struct usb_interface *interface)
struct cnss_plat_data *plat_priv = cnss_bus_dev_to_plat_priv(NULL);
struct cnss_usb_data *usb_priv = plat_priv->bus_priv;
+ cnss_pr_dbg("driver state %lu\n", plat_priv->driver_state);
+ if (usb_priv->driver_ops) {
+ cnss_pr_dbg("driver_op remove called for USB\n");
+ usb_priv->driver_ops->remove(usb_priv->usb_intf);
+ }
+ cnss_unregister_ramdump(plat_priv);
+ cnss_unregister_subsys(plat_priv);
usb_priv->plat_priv = NULL;
plat_priv->bus_priv = NULL;
usb_dev = interface_to_usbdev(interface);