|
@@ -1166,6 +1166,8 @@ int mwifiex_remove_card(struct mwifiex_adapter *adapter, struct semaphore *sem)
|
|
|
|
|
|
adapter->surprise_removed = true;
|
|
|
|
|
|
+ mwifiex_terminate_workqueue(adapter);
|
|
|
+
|
|
|
/* Stop data */
|
|
|
for (i = 0; i < adapter->priv_num; i++) {
|
|
|
priv = adapter->priv[i];
|
|
@@ -1208,8 +1210,6 @@ int mwifiex_remove_card(struct mwifiex_adapter *adapter, struct semaphore *sem)
|
|
|
wiphy_unregister(adapter->wiphy);
|
|
|
wiphy_free(adapter->wiphy);
|
|
|
|
|
|
- mwifiex_terminate_workqueue(adapter);
|
|
|
-
|
|
|
/* Unregister device */
|
|
|
dev_dbg(adapter->dev, "info: unregister device\n");
|
|
|
if (adapter->if_ops.unregister_dev)
|