summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath9k/wow.c
diff options
context:
space:
mode:
authorSujith Manoharan <c_manoha@qca.qualcomm.com>2015-01-30 13:35:22 (GMT)
committerKalle Valo <kvalo@codeaurora.org>2015-02-03 13:30:55 (GMT)
commit13084c2d18bfee72594ba3a969dfdd972544e644 (patch)
tree335886ad0d535862bec1f7306b294cfcf9355f23 /drivers/net/wireless/ath/ath9k/wow.c
parent4895efc9a11ba6a3089b42c5dd4aabf68e467d64 (diff)
downloadlinux-13084c2d18bfee72594ba3a969dfdd972544e644.tar.xz
ath9k: Return early for error conditions
Do not try to cancel work instances and ANI when the device is not present or WOW triggers are not configured. Bail out early and use ath_err() for such error conditions. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/wow.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/wow.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/wireless/ath/ath9k/wow.c b/drivers/net/wireless/ath/ath9k/wow.c
index 4ffaadd..1d5cd88 100644
--- a/drivers/net/wireless/ath/ath9k/wow.c
+++ b/drivers/net/wireless/ath/ath9k/wow.c
@@ -197,21 +197,21 @@ int ath9k_suspend(struct ieee80211_hw *hw,
mutex_lock(&sc->mutex);
- ath_cancel_work(sc);
- ath_stop_ani(sc);
-
if (test_bit(ATH_OP_INVALID, &common->op_flags)) {
- ath_dbg(common, ANY, "Device not present\n");
- ret = -EINVAL;
+ ath_err(common, "Device not present\n");
+ ret = -ENODEV;
goto fail_wow;
}
if (WARN_ON(!wowlan)) {
- ath_dbg(common, WOW, "None of the WoW triggers enabled\n");
+ ath_err(common, "None of the WoW triggers enabled\n");
ret = -EINVAL;
goto fail_wow;
}
+ ath_cancel_work(sc);
+ ath_stop_ani(sc);
+
if (!device_can_wakeup(sc->dev)) {
ath_dbg(common, WOW, "device_can_wakeup failed, WoW is not enabled\n");
ret = 1;