qcacld-3.0: Register peer_unmap_sync_cb during wma_tx_attach

Register peer unmap sync callback in pdev during wma_tx_attach
to be accessed in ol_txrx.

Change-Id: I16909ae51e3ca55714c8d1f9f07d7a02f651c190
CRs-Fixed: 2398856
This commit is contained in:
Alok Kumar 2019-02-14 14:44:01 +05:30 committed by nshrivas
parent 94f8451b53
commit 688eadbcc0
2 changed files with 23 additions and 1 deletions

View File

@ -3293,7 +3293,6 @@ static void ol_txrx_peer_detach_force_delete(void *ppeer)
* @peer_unmap_sync - peer unmap sync cb.
* @bitmap - bitmap indicating special handling of request.
*
*
* Return: None
*/
static void ol_txrx_peer_detach_sync(void *ppeer,
@ -3312,6 +3311,23 @@ static void ol_txrx_peer_detach_sync(void *ppeer,
ol_txrx_peer_detach(peer, bitmap);
}
/**
* ol_txrx_peer_unmap_sync_cb_set() - set peer unmap sync callback
* @ppdev - TXRX pdev context
* @peer_unmap_sync - peer unmap sync callback
*
* Return: None
*/
static void ol_txrx_peer_unmap_sync_cb_set(
struct cdp_pdev *ppdev,
ol_txrx_peer_unmap_sync_cb peer_unmap_sync)
{
struct ol_txrx_pdev_t *pdev = (struct ol_txrx_pdev_t *)ppdev;
if (!pdev->peer_unmap_sync_cb)
pdev->peer_unmap_sync_cb = peer_unmap_sync;
}
/**
* ol_txrx_dump_tx_desc() - dump tx desc total and free count
* @txrx_pdev: Pointer to txrx pdev
@ -5532,6 +5548,7 @@ static struct cdp_cmn_ops ol_ops_cmn = {
.txrx_mgmt_send_ext = ol_txrx_mgmt_send_ext,
.txrx_mgmt_tx_cb_set = ol_txrx_mgmt_tx_cb_set,
.txrx_data_tx_cb_set = ol_txrx_data_tx_cb_set,
.txrx_peer_unmap_sync_cb_set = ol_txrx_peer_unmap_sync_cb_set,
.txrx_get_tx_pending = ol_txrx_get_tx_pending,
.flush_cache_rx_queue = ol_txrx_flush_cache_rx_queue,
.txrx_fw_stats_get = ol_txrx_fw_stats_get,

View File

@ -1445,6 +1445,11 @@ QDF_STATUS wma_tx_attach(tp_wma_handle wma_handle)
wma_mgmt_tx_dload_comp_hldr,
wma_mgmt_tx_ack_comp_hdlr, wma_handle);
/* Register callback to send PEER_UNMAP_RESPONSE cmd*/
if (cdp_cfg_get_peer_unmap_conf_support(soc))
cdp_peer_unmap_sync_cb_set(soc, txrx_pdev,
wma_peer_unmap_conf_cb);
/* Store the Mac Context */
wma_handle->mac_context = cds_handle->mac_context;