qcacmn: Use epping_tx_complete instead of epping_tx_complete_multiple

modify epping_tx_complete_multiple to accept single packets.
Currenly htc invokes the callback on individual packets.

Change-Id: I9df269ba4c714ccd05c2dea89b0acc94ce895492
CRs-Fixed: 2131348
This commit is contained in:
Yun Park
2017-10-23 22:22:59 -07:00
committed by snandini
parent a4262320ce
commit a5685dec52
3 changed files with 48 additions and 52 deletions

View File

@@ -167,7 +167,7 @@ void epping_set_kperf_flag(epping_adapter_t *adapter,
/* epping_tx signatures */
void epping_tx_timer_expire(epping_adapter_t *adapter);
void epping_tx_complete_multiple(void *ctx, HTC_PACKET_QUEUE *pPacketQueue);
void epping_tx_complete(void *ctx, HTC_PACKET *htc_pkt);
int epping_tx_send(qdf_nbuf_t skb, epping_adapter_t *adapter);
#ifdef HIF_SDIO

View File

@@ -315,7 +315,7 @@ enum htc_send_full_action epping_tx_queue_full(void *Context,
return HTC_SEND_FULL_KEEP;
}
#endif /* HIF_SDIO */
void epping_tx_complete_multiple(void *ctx, HTC_PACKET_QUEUE *pPacketQueue)
void epping_tx_complete(void *ctx, HTC_PACKET *htc_pkt)
{
epping_context_t *pEpping_ctx = (epping_context_t *) ctx;
epping_adapter_t *adapter = pEpping_ctx->epping_adapter;
@@ -326,16 +326,14 @@ void epping_tx_complete_multiple(void *ctx, HTC_PACKET_QUEUE *pPacketQueue)
struct epping_cookie *cookie;
A_BOOL flushing = false;
qdf_nbuf_queue_t skb_queue;
HTC_PACKET *htc_pkt;
if (htc_pkt == NULL)
return;
qdf_nbuf_queue_init(&skb_queue);
qdf_spin_lock_bh(&adapter->data_lock);
while (!HTC_QUEUE_EMPTY(pPacketQueue)) {
htc_pkt = htc_packet_dequeue(pPacketQueue);
if (htc_pkt == NULL)
break;
status = htc_pkt->Status;
eid = htc_pkt->Endpoint;
pktSkb = GET_HTC_PACKET_NET_BUF_CONTEXT(htc_pkt);
@@ -386,8 +384,6 @@ void epping_tx_complete_multiple(void *ctx, HTC_PACKET_QUEUE *pPacketQueue)
}
epping_free_cookie(adapter->pEpping_ctx, cookie);
}
qdf_spin_unlock_bh(&adapter->data_lock);
/* free all skbs in our local list */

View File

@@ -410,10 +410,10 @@ int epping_connect_service(epping_context_t *pEpping_ctx)
/* these fields are the same for all service endpoints */
connect.EpCallbacks.pContext = pEpping_ctx;
connect.EpCallbacks.EpTxCompleteMultiple = epping_tx_complete_multiple;
connect.EpCallbacks.EpTxCompleteMultiple = NULL;
connect.EpCallbacks.EpRecv = epping_rx;
/* epping_tx_complete use Multiple version */
connect.EpCallbacks.EpTxComplete = NULL;
connect.EpCallbacks.EpTxComplete = epping_tx_complete;
connect.MaxSendQueueDepth = 64;
#ifdef HIF_SDIO