diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c index 0a9d9a1b2d85162bef2dad42694249adb575c9ff..1e136993580f104a156fd3c72494dee9b3845a9b 100644 --- a/drivers/net/wireless/ti/wlcore/main.c +++ b/drivers/net/wireless/ti/wlcore/main.c @@ -1785,8 +1785,10 @@ static int wl1271_op_suspend(struct ieee80211_hw *hw, mutex_lock(&wl->mutex); ret = wl1271_ps_elp_wakeup(wl); - if (ret < 0) + if (ret < 0) { + mutex_unlock(&wl->mutex); return ret; + } wl->wow_enabled = true; wl12xx_for_each_wlvif(wl, wlvif) {