summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/525-ath9k_handle_keymiss.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mac80211/patches/525-ath9k_handle_keymiss.patch')
-rw-r--r--package/mac80211/patches/525-ath9k_handle_keymiss.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/package/mac80211/patches/525-ath9k_handle_keymiss.patch b/package/mac80211/patches/525-ath9k_handle_keymiss.patch
new file mode 100644
index 000000000..a2031cf46
--- /dev/null
+++ b/package/mac80211/patches/525-ath9k_handle_keymiss.patch
@@ -0,0 +1,23 @@
+--- a/drivers/net/wireless/ath/ath9k/mac.c
++++ b/drivers/net/wireless/ath/ath9k/mac.c
+@@ -701,6 +701,8 @@ int ath9k_hw_rxprocdesc(struct ath_hw *a
+ rs->rs_flags |= ATH9K_RX_DELIM_CRC_POST;
+ if (ads.ds_rxstatus8 & AR_DecryptBusyErr)
+ rs->rs_flags |= ATH9K_RX_DECRYPT_BUSY;
++ if (ads.ds_rxstatus8 & AR_KeyMiss)
++ rs->rs_keyix = ATH9K_RXKEYIX_INVALID;
+
+ if ((ads.ds_rxstatus8 & AR_RxFrameOK) == 0) {
+ if (ads.ds_rxstatus8 & AR_CRCErr)
+--- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c
++++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c
+@@ -578,6 +578,9 @@ int ath9k_hw_process_rxdesc_edma(struct
+ if (rxsp->status11 & AR_DecryptBusyErr)
+ rxs->rs_flags |= ATH9K_RX_DECRYPT_BUSY;
+
++ if (rxsp->status11 & AR_KeyMiss)
++ rxs->rs_keyix = ATH9K_RXKEYIX_INVALID;
++
+ if ((rxsp->status11 & AR_RxFrameOK) == 0) {
+ if (rxsp->status11 & AR_CRCErr) {
+ rxs->rs_status |= ATH9K_RXERR_CRC;