brcmfmac: fix full timeout waiting for action frame on-channel tx
authorChung-Hsien Hsu <stanley.hsu@cypress.com>
Thu, 27 Sep 2018 14:59:49 +0000 (14:59 +0000)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 5 Oct 2018 08:29:42 +0000 (11:29 +0300)
commitfbf07000960d9c8a13fdc17c6de0230d681c7543
treee7175b366ed97b8e3d045c9e1b96422b1cc5a3b0
parentedb6d6885bef82d1eac432dbeca9fbf4ec349d7e
brcmfmac: fix full timeout waiting for action frame on-channel tx

The driver sends an action frame down and waits for a completion signal
triggered by the received BRCMF_E_ACTION_FRAME_OFF_CHAN_COMPLETE event
to continue the process. However, the action frame could be transmitted
either on the current channel or on an off channel. For the on-channel
case, only BRCMF_E_ACTION_FRAME_COMPLETE event will be received when
the frame is transmitted, which make the driver always wait a full
timeout duration. This patch has the completion signal be triggered by
receiving the BRCMF_E_ACTION_FRAME_COMPLETE event for the on-channel
case.

This change fixes WFA p2p certification 5.1.19 failure.

Signed-off-by: Chung-Hsien Hsu <stanley.hsu@cypress.com>
Signed-off-by: Chi-Hsien Lin <chi-hsien.lin@cypress.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.h