qcacmn: Add INI support for peer ext stats
Add INI support for peer extended stats. The extended stats as of now include per peer Tx/Rx delay per packet path. Change-Id: I20d3c7f81f65f4db5f111eb103945151a8cd83aa
This commit is contained in:
@@ -846,6 +846,10 @@
|
|||||||
WLAN_CFG_NUM_REO_RINGS_MAP, \
|
WLAN_CFG_NUM_REO_RINGS_MAP, \
|
||||||
CFG_VALUE_OR_DEFAULT, "REO Destination Rings Mapping")
|
CFG_VALUE_OR_DEFAULT, "REO Destination Rings Mapping")
|
||||||
|
|
||||||
|
#define CFG_DP_PEER_EXT_STATS \
|
||||||
|
CFG_INI_BOOL("peer_ext_stats", \
|
||||||
|
false, "Peer extended stats")
|
||||||
|
|
||||||
#define CFG_DP \
|
#define CFG_DP \
|
||||||
CFG(CFG_DP_HTT_PACKET_TYPE) \
|
CFG(CFG_DP_HTT_PACKET_TYPE) \
|
||||||
CFG(CFG_DP_INT_BATCH_THRESHOLD_OTHER) \
|
CFG(CFG_DP_INT_BATCH_THRESHOLD_OTHER) \
|
||||||
@@ -921,6 +925,7 @@
|
|||||||
CFG(CFG_DP_PKTLOG_BUFFER_SIZE) \
|
CFG(CFG_DP_PKTLOG_BUFFER_SIZE) \
|
||||||
CFG(CFG_DP_RX_FISA_ENABLE) \
|
CFG(CFG_DP_RX_FISA_ENABLE) \
|
||||||
CFG(CFG_DP_FULL_MON_MODE) \
|
CFG(CFG_DP_FULL_MON_MODE) \
|
||||||
CFG(CFG_DP_REO_RINGS_MAP)
|
CFG(CFG_DP_REO_RINGS_MAP) \
|
||||||
|
CFG(CFG_DP_PEER_EXT_STATS)
|
||||||
|
|
||||||
#endif /* _CFG_DP_H_ */
|
#endif /* _CFG_DP_H_ */
|
||||||
|
@@ -605,6 +605,7 @@ wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc)
|
|||||||
cfg_get(psoc, CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD);
|
cfg_get(psoc, CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD);
|
||||||
wlan_cfg_ctx->is_rx_fisa_enabled = cfg_get(psoc, CFG_DP_RX_FISA_ENABLE);
|
wlan_cfg_ctx->is_rx_fisa_enabled = cfg_get(psoc, CFG_DP_RX_FISA_ENABLE);
|
||||||
wlan_cfg_ctx->reo_rings_mapping = cfg_get(psoc, CFG_DP_REO_RINGS_MAP);
|
wlan_cfg_ctx->reo_rings_mapping = cfg_get(psoc, CFG_DP_REO_RINGS_MAP);
|
||||||
|
wlan_cfg_ctx->pext_stats_enabled = cfg_get(psoc, CFG_DP_PEER_EXT_STATS);
|
||||||
return wlan_cfg_ctx;
|
return wlan_cfg_ctx;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1356,3 +1357,16 @@ wlan_cfg_is_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
|
|||||||
{
|
{
|
||||||
return cfg->is_rx_mon_protocol_flow_tag_enabled;
|
return cfg->is_rx_mon_protocol_flow_tag_enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
wlan_cfg_set_peer_ext_stats(struct wlan_cfg_dp_soc_ctxt *cfg,
|
||||||
|
bool val)
|
||||||
|
{
|
||||||
|
cfg->pext_stats_enabled = val;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
wlan_cfg_is_peer_ext_stats_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
|
||||||
|
{
|
||||||
|
return cfg->pext_stats_enabled;
|
||||||
|
}
|
||||||
|
@@ -183,7 +183,7 @@ struct wlan_srng_cfg {
|
|||||||
* 5 tuple flow entry
|
* 5 tuple flow entry
|
||||||
* @pktlog_buffer_size: packet log buffer size
|
* @pktlog_buffer_size: packet log buffer size
|
||||||
* @is_rx_fisa_enabled: flag to enable/disable FISA Rx
|
* @is_rx_fisa_enabled: flag to enable/disable FISA Rx
|
||||||
* @reo_rings_mapping: reo destination ring bitmap
|
* @pext_stats_enabled: Flag to enable and disabled peer extended stats
|
||||||
*/
|
*/
|
||||||
struct wlan_cfg_dp_soc_ctxt {
|
struct wlan_cfg_dp_soc_ctxt {
|
||||||
int num_int_ctxts;
|
int num_int_ctxts;
|
||||||
@@ -285,6 +285,7 @@ struct wlan_cfg_dp_soc_ctxt {
|
|||||||
bool is_tso_desc_attach_defer;
|
bool is_tso_desc_attach_defer;
|
||||||
uint32_t delayed_replenish_entries;
|
uint32_t delayed_replenish_entries;
|
||||||
uint32_t reo_rings_mapping;
|
uint32_t reo_rings_mapping;
|
||||||
|
bool pext_stats_enabled;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1340,3 +1341,26 @@ bool wlan_cfg_is_tso_desc_attach_defer(struct wlan_cfg_dp_soc_ctxt *cfg);
|
|||||||
* Return: reo ring bitmap.
|
* Return: reo ring bitmap.
|
||||||
*/
|
*/
|
||||||
uint32_t wlan_cfg_get_reo_rings_mapping(struct wlan_cfg_dp_soc_ctxt *cfg);
|
uint32_t wlan_cfg_get_reo_rings_mapping(struct wlan_cfg_dp_soc_ctxt *cfg);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_cfg_set_peer_ext_stats() - set peer extended stats
|
||||||
|
*
|
||||||
|
* @wlan_cfg_dp_soc_ctxt: soc configuration context
|
||||||
|
* @val: Flag value read from INI
|
||||||
|
*
|
||||||
|
* Return: void
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
wlan_cfg_set_peer_ext_stats(struct wlan_cfg_dp_soc_ctxt *cfg,
|
||||||
|
bool val);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_cfg_is_peer_ext_stats_enabled() - Check if peer extended
|
||||||
|
* stats are enabled
|
||||||
|
*
|
||||||
|
* @wlan_cfg_dp_soc_ctxt: soc configuration context
|
||||||
|
*
|
||||||
|
* Return: bool
|
||||||
|
*/
|
||||||
|
bool
|
||||||
|
wlan_cfg_is_peer_ext_stats_enabled(struct wlan_cfg_dp_soc_ctxt *cfg);
|
||||||
|
Reference in New Issue
Block a user