diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-11-16 13:08:43 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-12-07 15:19:36 -0500 |
commit | daa1b6ee45170404efb3002ae2ff06e572f7ceba (patch) | |
tree | a0cdba89bf7641200e543c149405af5e03b845b2 /drivers | |
parent | 9df0d6a20a4e6d15684cc8f2e3f0155be0801592 (diff) |
ath9k: cancel all workqueue activity when going idle
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/main.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index 36315c83d4ca..714c7d82eb53 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c @@ -1595,8 +1595,11 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed) * of the changes. Likewise we must only disable the radio towards * the end. */ - if (changed & IEEE80211_CONF_CHANGE_IDLE) + if (changed & IEEE80211_CONF_CHANGE_IDLE) { sc->ps_idle = !!(conf->flags & IEEE80211_CONF_IDLE); + if (sc->ps_idle) + ath_cancel_work(sc); + } /* * We just prepare to enable PS. We have to wait until our AP has |