qcacmn: Add tx sw internode queue ini config

Add tx sw internode queue ini config that is used by NSS offload mode

Change-Id: I8236a289aa33aaa6bfd1af2ff326438042636139
这个提交包含在:
Prathyusha Guduri
2019-07-24 23:49:45 +05:30
提交者 nshrivas
父节点 f1f12acb9c
当前提交 abac9eedad
修改 4 个文件,包含 33 行新增0 行删除

查看文件

@@ -4489,6 +4489,8 @@ void dp_print_soc_cfg_params(struct dp_soc *soc)
soc_cfg_ctx->tx_desc_limit_2);
DP_PRINT_STATS("TX device limit: %u ",
soc_cfg_ctx->tx_device_limit);
DP_PRINT_STATS("TX sw internode queue: %u ",
soc_cfg_ctx->tx_sw_internode_queue);
DP_PRINT_STATS("RXDMA err dst ring: %u ",
soc_cfg_ctx->rxdma_err_dst_ring);
}

查看文件

@@ -253,6 +253,10 @@
#define WLAN_CFG_TX_DEVICE_LIMIT_MIN 16384
#define WLAN_CFG_TX_DEVICE_LIMIT_MAX 65536
#define WLAN_CFG_TX_SW_INTERNODE_QUEUE 1024
#define WLAN_CFG_TX_SW_INTERNODE_QUEUE_MIN 128
#define WLAN_CFG_TX_SW_INTERNODE_QUEUE_MAX 1024
#define WLAN_CFG_RXDMA_MONITOR_BUF_RING_SIZE 4096
#define WLAN_CFG_RXDMA_MONITOR_BUF_RING_SIZE_MIN 16
#define WLAN_CFG_RXDMA_MONITOR_BUF_RING_SIZE_MAX 8192
@@ -594,6 +598,13 @@
WLAN_CFG_TX_DEVICE_LIMIT, \
CFG_VALUE_OR_DEFAULT, "DP TX DEVICE limit")
#define CFG_DP_TX_SW_INTERNODE_QUEUE \
CFG_INI_UINT("dp_tx_sw_internode_queue", \
WLAN_CFG_TX_SW_INTERNODE_QUEUE_MIN, \
WLAN_CFG_TX_SW_INTERNODE_QUEUE_MAX, \
WLAN_CFG_TX_SW_INTERNODE_QUEUE, \
CFG_VALUE_OR_DEFAULT, "DP TX SW internode queue")
#define CFG_DP_RXDMA_MONITOR_BUF_RING \
CFG_INI_UINT("dp_rxdma_monitor_buf_ring", \
WLAN_CFG_RXDMA_MONITOR_BUF_RING_SIZE_MIN, \
@@ -722,6 +733,7 @@
CFG(CFG_DP_TX_DESC_LIMIT_1) \
CFG(CFG_DP_TX_DESC_LIMIT_2) \
CFG(CFG_DP_TX_DEVICE_LIMIT) \
CFG(CFG_DP_TX_SW_INTERNODE_QUEUE) \
CFG(CFG_DP_RXDMA_MONITOR_BUF_RING) \
CFG(CFG_DP_RXDMA_MONITOR_DST_RING) \
CFG(CFG_DP_RXDMA_MONITOR_STATUS_RING) \

查看文件

@@ -408,6 +408,8 @@ wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc)
CFG_DP_TX_DESC_LIMIT_2);
wlan_cfg_ctx->tx_device_limit = cfg_get(psoc,
CFG_DP_TX_DEVICE_LIMIT);
wlan_cfg_ctx->tx_sw_internode_queue = cfg_get(psoc,
CFG_DP_TX_SW_INTERNODE_QUEUE);
wlan_cfg_ctx->rxdma_err_dst_ring = cfg_get(psoc,
CFG_DP_RXDMA_ERR_DST_RING);
wlan_cfg_ctx->enable_data_stall_detection =
@@ -964,6 +966,12 @@ wlan_cfg_get_dp_soc_tx_device_limit(struct wlan_cfg_dp_soc_ctxt *cfg)
return cfg->tx_device_limit;
}
int
wlan_cfg_get_dp_soc_tx_sw_internode_queue(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->tx_sw_internode_queue;
}
int
wlan_cfg_get_dp_soc_rxdma_err_dst_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
{

查看文件

@@ -151,6 +151,7 @@ struct wlan_srng_cfg {
* @tx_desc_limit_1: tx_desc limit for 2G
* @tx_desc_limit_2: tx_desc limit for 5G L
* @tx_device_limit: tx device limit
* @tx_sw_internode_queue: tx sw internode queue
* @tx_comp_loop_pkt_limit: Max # of packets to be processed in 1 tx comp loop
* @rx_reap_loop_pkt_limit: Max # of packets to be processed in 1 rx reap loop
* @rx_hp_oos_update_limit: Max # of HP OOS (out of sync) updates
@@ -236,6 +237,7 @@ struct wlan_cfg_dp_soc_ctxt {
int tx_desc_limit_1;
int tx_desc_limit_2;
int tx_device_limit;
int tx_sw_internode_queue;
#ifdef WLAN_FEATURE_RX_SOFTIRQ_TIME_LIMIT
uint32_t tx_comp_loop_pkt_limit;
uint32_t rx_reap_loop_pkt_limit;
@@ -1035,6 +1037,15 @@ wlan_cfg_get_dp_soc_tx_desc_limit_2(struct wlan_cfg_dp_soc_ctxt *cfg);
int
wlan_cfg_get_dp_soc_tx_device_limit(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_dp_soc_tx_sw_internode_queue - Get tx sw internode queue
* @wlan_cfg_soc_ctx
*
* Return: tx sw internode queue
*/
int
wlan_cfg_get_dp_soc_tx_sw_internode_queue(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_dp_soc_rxdma_refill_ring_size - Get rxdma refill ring size
* @wlan_cfg_soc_ctx