summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/beacon.c
diff options
context:
space:
mode:
authorSujith Manoharan <c_manoha@qca.qualcomm.com>2013-09-11 18:00:27 +0200
committerJohn W. Linville <linville@tuxdriver.com>2013-09-26 21:13:46 +0200
commit1e516ca7c9ceeeec4ed87f549a14bc3b73427f83 (patch)
treeb5d5744a4e834e6d580c4254e84f290eef93827e /drivers/net/wireless/ath/ath9k/beacon.c
parentath9k: Fix issue with parsing malformed CFP IE (diff)
downloadlinux-1e516ca7c9ceeeec4ed87f549a14bc3b73427f83.tar.xz
linux-1e516ca7c9ceeeec4ed87f549a14bc3b73427f83.zip
ath9k: Handle abnormal NAV in AP mode
Beacon transmission would get stuck if the NAV is an invalid value for some reason. Check and correct the NAV value in the HW when this happens. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/beacon.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/beacon.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c
index b5c16b3a37b9..17be35392bb4 100644
--- a/drivers/net/wireless/ath/ath9k/beacon.c
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
@@ -334,6 +334,8 @@ void ath9k_beacon_tasklet(unsigned long data)
if (ath9k_hw_numtxpending(ah, sc->beacon.beaconq) != 0) {
sc->beacon.bmisscnt++;
+ ath9k_hw_check_nav(ah);
+
if (!ath9k_hw_check_alive(ah))
ieee80211_queue_work(sc->hw, &sc->hw_check_work);