diff --git a/drivers/net/wireless/marvell/libertas/main.c b/drivers/net/wireless/marvell/libertas/main.c index dd97f1b61f4d..18356b09ccfc 100644 --- a/drivers/net/wireless/marvell/libertas/main.c +++ b/drivers/net/wireless/marvell/libertas/main.c @@ -910,7 +910,8 @@ void lbs_remove_card(struct lbs_private *priv) if (priv->wiphy_registered) lbs_scan_deinit(priv); - lbs_wait_for_firmware_load(priv); + if (priv->fw_callback) + lbs_wait_for_firmware_load(priv); /* worker thread destruction blocks on the in-flight command which * should have been cleared already in lbs_stop_card().