qcacld-3.0: Modify Pre_alloc memory support for Dp component

Modify Pre_alloc memory support for DP componentization.

Change-Id: I274e3163bc6623a7a4e08f8ce30d3bc17a0b444b
CRs-Fixed: 3285947
This commit is contained in:
Roopavathi Lingampalli
2022-09-07 17:57:58 +05:30
committed by Madan Koyyalamudi
orang tua 62f33df4f6
melakukan 6d4df6c2da
7 mengubah file dengan 1125 tambahan dan 997 penghapusan

Melihat File

@@ -1286,4 +1286,43 @@ ucfg_dp_traffic_end_indication_update_dscp(struct wlan_objmgr_psoc *psoc,
unsigned char *dscp)
{}
#endif
#endif /* _WLAN_DP_UCFG_API_H_ */
/*
* ucfg_dp_prealloc_init() - Pre-allocate DP memory
* @ctrl_psoc: objmgr psoc
*
* Return: QDF_STATUS_SUCCESS on success, error qdf status on failure
*/
QDF_STATUS ucfg_dp_prealloc_init(struct cdp_ctrl_objmgr_psoc *ctrl_psoc);
/*
* ucfg_dp_prealloc_deinit() - Free pre-alloced DP memory
*
* Return: None
*/
void ucfg_dp_prealloc_deinit(void);
#ifdef DP_MEM_PRE_ALLOC
/**
* ucfg_dp_prealloc_get_consistent_mem_unaligned() - gets pre-alloc unaligned
* consistent memory
* @size: total memory size
* @base_addr: pointer to dma address
* @ring_type: HAL ring type that requires memory
*
* Return: memory virtual address pointer on success, NULL on failure
*/
void *ucfg_dp_prealloc_get_consistent_mem_unaligned(qdf_size_t size,
qdf_dma_addr_t *base_addr,
uint32_t ring_type);
/**
* ucfg_dp_prealloc_put_consistent_mem_unaligned() - puts back pre-alloc
* unaligned consistent memory
* @va_unaligned: memory virtual address pointer
*
* Return: None
*/
void ucfg_dp_prealloc_put_consistent_mem_unaligned(void *va_unaligned);
#endif
#endif /* _WLAN_DP_UCFGi_API_H_ */

Melihat File

@@ -37,6 +37,7 @@
#include "wlan_pkt_capture_ucfg_api.h"
#include <cdp_txrx_ctrl.h>
#include <qdf_net_stats.h>
#include "wlan_dp_prealloc.h"
void ucfg_dp_update_inf_mac(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *cur_mac,
@@ -2282,3 +2283,29 @@ end:
}
}
#endif
QDF_STATUS ucfg_dp_prealloc_init(struct cdp_ctrl_objmgr_psoc *ctrl_psoc)
{
return dp_prealloc_init(ctrl_psoc);
}
void ucfg_dp_prealloc_deinit(void)
{
dp_prealloc_deinit();
}
#ifdef DP_MEM_PRE_ALLOC
void *ucfg_dp_prealloc_get_consistent_mem_unaligned(qdf_size_t size,
qdf_dma_addr_t *base_addr,
uint32_t ring_type)
{
return dp_prealloc_get_consistent_mem_unaligned(size, base_addr,
ring_type);
}
void ucfg_dp_prealloc_put_consistent_mem_unaligned(void *va_unaligned)
{
dp_prealloc_put_consistent_mem_unaligned(va_unaligned);
}
#endif