Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 256195
b: refs/heads/master
c: 2b4562d
h: refs/heads/master
i:
  256193: e2af648
  256191: c23d2f5
v: v3
  • Loading branch information
Johannes Berg authored and John W. Linville committed Jul 5, 2011
1 parent 478ec5d commit 6d35ee5
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 7 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 304e21bbeab0d208dc7e6142fb75db8a466d5217
refs/heads/master: 2b4562dfd6ad3579951de21168cb9d266ed3f1bd
4 changes: 4 additions & 0 deletions trunk/include/net/mac80211.h
Original file line number Diff line number Diff line change
Expand Up @@ -1628,6 +1628,10 @@ enum ieee80211_ampdu_mlme_action {
* ask the device to suspend. This is only invoked when WoWLAN is
* configured, otherwise the device is deconfigured completely and
* reconfigured at resume time.
* The driver may also impose special conditions under which it
* wants to use the "normal" suspend (deconfigure), say if it only
* supports WoWLAN when the device is associated. In this case, it
* must return 1 from this function.
*
* @resume: If WoWLAN was configured, this indicates that mac80211 is
* now resuming its operation, after this the device must be fully
Expand Down
16 changes: 10 additions & 6 deletions trunk/net/mac80211/pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,15 +72,19 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
local->wowlan = wowlan && local->open_count;
if (local->wowlan) {
int err = drv_suspend(local, wowlan);
if (err) {
if (err < 0) {
local->quiescing = false;
return err;
} else if (err > 0) {
WARN_ON(err != 1);
local->wowlan = false;
} else {
list_for_each_entry(sdata, &local->interfaces, list) {
cancel_work_sync(&sdata->work);
ieee80211_quiesce(sdata);
}
goto suspend;
}
list_for_each_entry(sdata, &local->interfaces, list) {
cancel_work_sync(&sdata->work);
ieee80211_quiesce(sdata);
}
goto suspend;
}

/* disable keys */
Expand Down

0 comments on commit 6d35ee5

Please sign in to comment.