qcacmn: Update htc_endpoint only for htt tx endpoint

Update htc_endpoint only for htt tx endpoint to avoid
double freeing of Tx Queue packets as it will be
freed in htt_htc_misc_pkt_pool_free.
Rename htc_endpoint to htc_htt_tx_endpoint to reflect
it's appropriate use.

Change-Id: I736ba08505acc829eb15be30538553dd945695f6
CRs-Fixed: 1006498
This commit is contained in:
Nirav Shah
2016-04-21 14:18:43 +05:30
committed by Gerrit - the friendly Code Review server
parent c5dc5f291c
commit d7f9159cf2
5 changed files with 9 additions and 13 deletions

View File

@@ -430,7 +430,7 @@ void hif_get_hw_info(struct hif_opaque_softc *scn, u32 *version, u32 *revision,
void hif_disable_isr(struct hif_opaque_softc *scn);
void hif_reset_soc(struct hif_opaque_softc *scn);
void hif_save_htc_htt_config_endpoint(struct hif_opaque_softc *hif_ctx,
int htc_endpoint);
int htc_htt_tx_endpoint);
struct hif_opaque_softc *hif_open(qdf_device_t qdf_ctx, uint32_t mode,
enum qdf_bus_type bus_type,
struct hif_driver_state_callbacks *cbk);

View File

@@ -1588,9 +1588,9 @@ void hif_send_buffer_cleanup_on_pipe(struct HIF_CE_pipe_info *pipe_info)
* by checking whether it's the endpoint
* which they are queued in.
*/
if (id == scn->htc_endpoint)
if (id == scn->htc_htt_tx_endpoint)
return;
/* Indicate the completion to higer
/* Indicate the completion to higher
* layer to free the buffer */
hif_state->msg_callbacks_current.
txCompletionHandler(hif_state->

View File

@@ -333,14 +333,14 @@ qdf_size_t init_buffer_count(qdf_size_t maxSize)
}
/**
* hif_save_htc_htt_config_endpoint():
* hif_save_htc_htt_config_endpoint
* @htc_endpoint: htc_endpoint
* hif_save_htc_htt_config_endpoint() - save htt_tx_endpoint
* @hif_ctx: hif context
* @htc_htt_tx_endpoint: htt_tx_endpoint
*
* Return: void
*/
void hif_save_htc_htt_config_endpoint(struct hif_opaque_softc *hif_ctx,
int htc_endpoint)
int htc_htt_tx_endpoint)
{
struct hif_softc *scn = HIF_GET_SOFTC(hif_ctx);
@@ -350,7 +350,7 @@ void hif_save_htc_htt_config_endpoint(struct hif_opaque_softc *hif_ctx,
return;
}
scn->htc_endpoint = htc_endpoint;
scn->htc_htt_tx_endpoint = htc_htt_tx_endpoint;
}
/**

View File

@@ -140,7 +140,7 @@ struct hif_softc {
int linkstate_vote;
bool fastpath_mode_on;
atomic_t tasklet_from_intr;
int htc_endpoint;
int htc_htt_tx_endpoint;
qdf_dma_addr_t mem_pa;
bool athdiag_procfs_inited;
#ifdef FEATURE_NAPI

View File

@@ -332,10 +332,6 @@ A_STATUS htc_connect_service(HTC_HANDLE HTCHandle,
} while (false);
if (HTT_SERVICE_GROUP == (pConnectReq->service_id >> 8))
hif_save_htc_htt_config_endpoint(target->hif_dev,
assignedEndpoint);
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-htc_connect_service\n"));
return status;