diff options
author | Govind Singh <govinds@codeaurora.org> | 2019-02-08 13:55:35 +0100 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2019-02-11 17:29:59 +0100 |
commit | c40e448e0bcf1541c0d0c42a197ef4f183a83db0 (patch) | |
tree | 9cdda702c5257c14b84f6624999b58d43771fa3a | |
parent | ath10k: disable interface pause wow config for integrated chipset (diff) | |
download | linux-c40e448e0bcf1541c0d0c42a197ef4f183a83db0.tar.xz linux-c40e448e0bcf1541c0d0c42a197ef4f183a83db0.zip |
ath10k: request credit report if flow control enabled on ep
FW credit flow control is enabled for only WMI ctrl
service(CE3) but credit update is requested unconditionally
on all HTC services as part of HTC tx in CE3/CE0/CE4.
This is causing WOW failure as FW is not expecting credit
report request on other end-points(CE0/CE4).
Request credit report only on those endpoints where
credit flow control is enabled.
Testing:
Tested on WCN3990 HW.
Tested FW: WLAN.HL.2.0-01192-QCAHLSWMTPLZ-1.
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
-rw-r--r-- | drivers/net/wireless/ath/ath10k/htc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/htc.c b/drivers/net/wireless/ath/ath10k/htc.c index 7654a21323ce..5aa57a01c033 100644 --- a/drivers/net/wireless/ath/ath10k/htc.c +++ b/drivers/net/wireless/ath/ath10k/htc.c @@ -88,7 +88,8 @@ static void ath10k_htc_prepare_tx_skb(struct ath10k_htc_ep *ep, hdr->eid = ep->eid; hdr->len = __cpu_to_le16(skb->len - sizeof(*hdr)); hdr->flags = 0; - hdr->flags |= ATH10K_HTC_FLAG_NEED_CREDIT_UPDATE; + if (ep->tx_credit_flow_enabled) + hdr->flags |= ATH10K_HTC_FLAG_NEED_CREDIT_UPDATE; spin_lock_bh(&ep->htc->tx_lock); hdr->seq_no = ep->seq_no++; |