diff options
author | Sujith Manoharan <c_manoha@qca.qualcomm.com> | 2014-09-10 19:15:57 +0530 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-09-11 15:27:39 -0400 |
commit | d0975edd59b94d8906008cf3c68020a44cc198c5 (patch) | |
tree | 5b5df03a5bcd0323b89a12742d66b1852df27d2f /drivers/net/wireless/ath/ath9k/ath9k.h | |
parent | cbc775db2e17cc24a9d3b2f14570ec7c1e0923af (diff) | |
download | op-kernel-dev-d0975edd59b94d8906008cf3c68020a44cc198c5.zip op-kernel-dev-d0975edd59b94d8906008cf3c68020a44cc198c5.tar.gz |
ath9k: Fix Notice of Absence issues
* The index has to incremented only when advertising
a new NoA schedule.
* Switch to non-periodic NoA when starting a scan operation
and multiple channel contexts are active.
* Make sure that periodic NoA is advertised again when
scan ends. Since the offchannel timer moves the offchannel
state to IDLE after the GO operating channel becomes
active, use a flag "force_noa_update" to update the
NoA contents.
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/ath9k.h')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ath9k.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h index 0c071b0..305db1a 100644 --- a/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h @@ -379,6 +379,7 @@ struct ath_chanctx_sched { bool beacon_pending; bool offchannel_pending; bool wait_switch; + bool force_noa_update; enum ath_chanctx_state state; u8 beacon_miss; @@ -595,8 +596,10 @@ struct ath_vif { u32 offchannel_start; u32 offchannel_duration; - u32 periodic_noa_start; - u32 periodic_noa_duration; + /* These are used for both periodic and one-shot */ + u32 noa_start; + u32 noa_duration; + bool periodic_noa; }; struct ath9k_vif_iter_data { |