diff options
| -rw-r--r-- | htc/htc_send.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/htc/htc_send.c b/htc/htc_send.c index 1dca2f517dc7..7fd1bfb248ce 100644 --- a/htc/htc_send.c +++ b/htc/htc_send.c @@ -1464,15 +1464,20 @@ static inline QDF_STATUS __htc_send_pkt(HTC_HANDLE HTCHandle, * Now that the HTC frame header has been added, the netbuf can * be mapped. This only applies to non-data frames, since data * frames were already mapped as they entered into the driver. + * For flow control enabled endpoints mapping is done in + * htc_issue_packets and for non flow control enabled endpoints + * its done here. */ - status = qdf_nbuf_map(target->osdev, - GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket), - QDF_DMA_TO_DEVICE); - if (status != QDF_STATUS_SUCCESS) { - AR_DEBUG_PRINTF(ATH_DEBUG_ERR, - ("%s: nbuf map failed, endpoint %pK, seq_no. %d\n", - __func__, pEndpoint, pEndpoint->SeqNo)); - return status; + if (!IS_TX_CREDIT_FLOW_ENABLED(pEndpoint)) { + status = qdf_nbuf_map(target->osdev, + GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket), + QDF_DMA_TO_DEVICE); + if (status != QDF_STATUS_SUCCESS) { + AR_DEBUG_PRINTF(ATH_DEBUG_ERR, + ("%s: nbuf map failed, endpoint %pK, seq_no. %d\n", + __func__, pEndpoint, pEndpoint->SeqNo)); + return status; + } } pPacket->PktInfo.AsTx.Flags |= HTC_TX_PACKET_FLAG_FIXUP_NETBUF; |
