qcacmn: Add direct rx buffer changes for CFR requirements

CFR requires to configure the number of DBRs that can be packed
in a single DBR event. Currently, this is fixed value.
Make this configurable at the time of registration.

CRs-Fixed: 2415489
Change-Id: Ifcd606641f986a5345f8ccb361c3f45db07fdc37
This commit is contained in:
Abhiram Jogadenu
2019-03-14 10:26:35 +05:30
committed by nshrivas
父節點 44d8f8f9b1
當前提交 d2077da875
共有 5 個文件被更改,包括 36 次插入5 次删除

查看文件

@@ -21,6 +21,13 @@
#include <wlan_spectral_utils_api.h>
#include <target_type.h>
#ifdef DIRECT_BUF_RX_ENABLE
#include <target_if_direct_buf_rx_api.h>
#define DBR_EVENT_TIMEOUT_IN_MS_SPECTRAL 1
#define DBR_NUM_RESP_PER_EVENT_SPECTRAL 2
#endif
void *
tgt_get_target_handle(struct wlan_objmgr_pdev *pdev)
{
@@ -282,16 +289,19 @@ tgt_spectral_register_to_dbr(struct wlan_objmgr_pdev *pdev)
{
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_direct_buf_rx_tx_ops *dbr_tx_ops = NULL;
struct dbr_module_config dbr_config = {0};
psoc = wlan_pdev_get_psoc(pdev);
dbr_tx_ops = &psoc->soc_cb.tx_ops.dbr_tx_ops;
dbr_config.num_resp_per_event = DBR_NUM_RESP_PER_EVENT_SPECTRAL;
dbr_config.event_timeout_in_ms = DBR_EVENT_TIMEOUT_IN_MS_SPECTRAL;
if ((tgt_spectral_get_target_type(psoc) == TARGET_TYPE_QCA8074) ||
(tgt_spectral_get_target_type(psoc) == TARGET_TYPE_QCA8074V2) ||
(tgt_spectral_get_target_type(psoc) == TARGET_TYPE_QCA6018))
if (dbr_tx_ops->direct_buf_rx_module_register)
return dbr_tx_ops->direct_buf_rx_module_register
(pdev, 0,
(pdev, 0, &dbr_config,
spectral_dbr_event_handler);
return QDF_STATUS_SUCCESS;