Fw will report wrong tx status for QOS Null frames sent through data tx path. This patch fixes station(s) keep alive detection triggered from wpa_supplicant/hostapd when work as AP/GO and WMM enabled. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@xxxxxxxxx> --- drivers/net/wireless/ath/ath10k/mac.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index da5c333..81b1a4b 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -1398,11 +1398,15 @@ static void ath10k_tx_htt(struct ath10k *ar, struct sk_buff *skb) if (ieee80211_is_mgmt(hdr->frame_control)) ret = ath10k_htt_mgmt_tx(ar->htt, skb); - else if (ieee80211_is_nullfunc(hdr->frame_control)) - /* FW does not report tx status properly for NullFunc frames - * unless they are sent through mgmt tx path. mac80211 sends - * those frames when it detects link/beacon loss and depends on - * the tx status to be correct. */ + else if (ieee80211_is_nullfunc(hdr->frame_control) || + ieee80211_is_qos_nullfunc(hdr->frame_control)) + /* FW does not report tx status properly for NullFunc and + * QOS NullFunc frames unless they are sent through mgmt + * tx path. mac80211 sends those frames when it detects + * link/beacon loss and depends on the tx status to be + * correct. mac80211 also send those frames when probe_client + * in case of AP/GO mode. + */ ret = ath10k_htt_mgmt_tx(ar->htt, skb); else ret = ath10k_htt_tx(ar->htt, skb); -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html