summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath11k/mac.h
diff options
context:
space:
mode:
authorWen Gong <wgong@codeaurora.org>2021-02-10 10:53:24 +0300
committerKalle Valo <kvalo@codeaurora.org>2021-02-11 09:47:53 +0300
commite6f1c0d26a31a09e83d8aa7ed1a1c796bf2685c8 (patch)
tree93261c51afccce458bc4f43843460ac69f8ea38e /drivers/net/wireless/ath/ath11k/mac.h
parentc202e2ebe1dc454ad54fd0018c023ec553d47284 (diff)
downloadlinux-e6f1c0d26a31a09e83d8aa7ed1a1c796bf2685c8.tar.xz
ath10k: restore tx sk_buff of htt header for SDIO
ieee80211_report_used_skb of mac80211 use the frame_control of ieee80211_hdr in sk_buff and indicate it to another function ieee80211_mgd_conn_tx_status, then it queue work ieee80211_sta_work, but ieee80211_is_auth(fc) in ieee80211_sta_work check fail when the authentication has transmitted by ath10k. When the ath10k report it with HTT_TX_COMPL_STATE_DISCARD, it will be set without flag IEEE80211_TX_STAT_ACK, then mac80211 should try the next authentication immeditely, but in fact mac80211 wait 1 second for it, the reason is ieee80211_is_auth(fc) in ieee80211_sta_work check fail for the sk_buff which is not restored, the data of sk_buff is not the begin of ieee80211_hdr, in fact it is the begin of htt_cmd_hdr. dmesg without this patch, it wait 1 second for the next retry when ath10k report without IEEE80211_TX_STAT_ACK for authentication: [ 6973.883116] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 1/3) [ 6974.705471] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 2/3) [ 6975.712962] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 3/3) Restore the sk_buff make mac8011 retry the next authentication immeditely which meet logic of mac80211. dmesg with this patch, it retry the next immeditely when ath10k report without IEEE80211_TX_STAT_ACK for authentication: [ 216.734813] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 1/3) [ 216.739914] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 2/3) [ 216.745874] wlan0: send auth to 5e:6f:2b:0d:fb:d7 (try 3/3) Tested-on: QCA6174 hw3.2 SDIO WLAN.RMH.4.4.1-00049 Signed-off-by: Wen Gong <wgong@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/1612839530-2263-1-git-send-email-wgong@codeaurora.org
Diffstat (limited to 'drivers/net/wireless/ath/ath11k/mac.h')
0 files changed, 0 insertions, 0 deletions