Skip to content

Commit

Permalink
ath9k_hw: fix A-MPDU key search issues on AR9003
Browse files Browse the repository at this point in the history
Under load, a large number of frames can produce decryption errors, even when
no key cache update is being done. Performing a key search for every single
frame in an A-MPDU improves reliability.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Felix Fietkau authored and John W. Linville committed Nov 22, 2010
1 parent 7253965 commit 02d2ebb
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 0 deletions.
4 changes: 4 additions & 0 deletions drivers/net/wireless/ath/ath9k/hw.c
Original file line number Diff line number Diff line change
Expand Up @@ -1817,6 +1817,10 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah)

ah->misc_mode |= AR_PCU_MIC_NEW_LOC_ENA;

/* enable key search for every frame in an aggregate */
if (AR_SREV_9300_20_OR_LATER(ah))
ah->misc_mode |= AR_PCU_ALWAYS_PERFORM_KEYSEARCH;

pCap->low_2ghz_chan = 2312;
pCap->high_2ghz_chan = 2732;

Expand Down
1 change: 1 addition & 0 deletions drivers/net/wireless/ath/ath9k/reg.h
Original file line number Diff line number Diff line change
Expand Up @@ -1568,6 +1568,7 @@ enum {
#define AR_PCU_TBTT_PROTECT 0x00200000
#define AR_PCU_CLEAR_VMF 0x01000000
#define AR_PCU_CLEAR_BA_VALID 0x04000000
#define AR_PCU_ALWAYS_PERFORM_KEYSEARCH 0x10000000

#define AR_PCU_BT_ANT_PREVENT_RX 0x00100000
#define AR_PCU_BT_ANT_PREVENT_RX_S 20
Expand Down

0 comments on commit 02d2ebb

Please sign in to comment.