summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/525-ath9k_handle_keymiss.patch
blob: a2031cf4682f63552077a95483dc64c5c4168ff9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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;