From 9348186afb165f17bbb083e5c9406adfdc80d7c2 Mon Sep 17 00:00:00 2001 From: Houston Hoffman Date: Thu, 5 May 2016 18:49:59 -0700 Subject: [PATCH] qcacmn: Support WIN fastpath in HTC_module WIN requires htc_ctrl_msg_cmpl api. Change-Id: I3c7a1fb8a0da6271b3f0d02d83044d484ce63870 Acked-by: Venkateswara Swamy Bandaru CRs-Fixed: 1009050 --- htc/htc_api.h | 5 +++++ htc/htc_send.c | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/htc/htc_api.h b/htc/htc_api.h index 107c83fb0d..de00e37502 100644 --- a/htc/htc_api.h +++ b/htc/htc_api.h @@ -45,6 +45,8 @@ extern "C" { /* this is the amount of header room required by users of HTC */ #define HTC_HEADER_LEN HTC_HDR_LENGTH +#define HTC_HTT_TRANSFER_HDRSIZE 24 + typedef void *HTC_HANDLE; typedef uint16_t HTC_SERVICE_ID; @@ -686,6 +688,8 @@ struct ol_ath_htc_stats *ieee80211_ioctl_get_htc_stats(HTC_HANDLE #endif #ifdef WLAN_FEATURE_FASTPATH +void htc_ctrl_msg_cmpl(HTC_HANDLE htc_pdev, HTC_ENDPOINT_ID htc_ep_id); + #define HTC_TX_DESC_FILL(_htc_tx_desc, _download_len, _ep_id, _seq_no) \ do { \ HTC_WRITE32((_htc_tx_desc), \ @@ -723,4 +727,5 @@ void htc_ipa_get_ce_resource(HTC_HANDLE htc_handle, ce_sr_ring_size, \ ce_reg_paddr) /* NO-OP */ #endif /* IPA_OFFLOAD */ + #endif /* _HTC_API_H_ */ diff --git a/htc/htc_send.c b/htc/htc_send.c index 149fb500cf..858767a88d 100644 --- a/htc/htc_send.c +++ b/htc/htc_send.c @@ -1758,6 +1758,25 @@ QDF_STATUS htc_tx_completion_handler(void *Context, return QDF_STATUS_SUCCESS; } +#if WLAN_FEATURE_FASTPATH +/** + * htc_ctrl_msg_cmpl(): checks for tx completion for the endpoint specified + * @HTC_HANDLE : pointer to the htc target context + * @htc_ep_id : end point id + * + * checks HTC tx completion + * + * Return: none + */ +void htc_ctrl_msg_cmpl(HTC_HANDLE htc_pdev, HTC_ENDPOINT_ID htc_ep_id) +{ + HTC_TARGET *target = GET_HTC_TARGET_FROM_HANDLE(htc_pdev); + HTC_ENDPOINT *pendpoint = &target->endpoint[htc_ep_id]; + + htc_send_complete_check(pendpoint, 1); +} +#endif + /* callback when TX resources become available */ void htc_tx_resource_avail_handler(void *context, uint8_t pipeID) {