qcacmn: Add INI option to enable FISA feature
Add INI dp_rx_fisa_enable to enable/disable FISA feature. Disable the feature by default. Change-Id: I0cc524956e32ab9f2b5c556d8ae2e1855e8d3513 CRs-Fixed: 2599917
Esse commit está contido em:
commit de
nshrivas
pai
bb0b78c688
commit
d501c32614
@@ -753,6 +753,27 @@
|
||||
CFG_INI_BOOL("dp_rx_monitor_protocol_flow_tag_enable", true, \
|
||||
"Enable/Disable Rx Protocol & Flow tags in Monitor mode")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* dp_rx_fisa_enable - Control Rx datapath FISA
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable DP Rx FISA feature
|
||||
*
|
||||
* Related: dp_rx_flow_search_table_size
|
||||
*
|
||||
* Supported Feature: STA,P2P and SAP IPA disabled terminating
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_DP_RX_FISA_ENABLE \
|
||||
CFG_INI_BOOL("dp_rx_fisa_enable", false, \
|
||||
"Enable/Disable DP Rx FISA")
|
||||
|
||||
#define CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD \
|
||||
CFG_INI_UINT("mon_drop_thresh", \
|
||||
WLAN_CFG_RXDMA_MONITOR_RX_DROP_THRESH_SIZE_MIN, \
|
||||
@@ -838,6 +859,7 @@
|
||||
CFG(CFG_DP_RX_FLOW_SEARCH_TABLE_PER_PDEV) \
|
||||
CFG(CFG_DP_RX_MON_PROTOCOL_FLOW_TAG_ENABLE) \
|
||||
CFG(CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD) \
|
||||
CFG(CFG_DP_PKTLOG_BUFFER_SIZE)
|
||||
CFG(CFG_DP_PKTLOG_BUFFER_SIZE) \
|
||||
CFG(CFG_DP_RX_FISA_ENABLE)
|
||||
|
||||
#endif /* _CFG_DP_H_ */
|
||||
|
@@ -566,6 +566,7 @@ wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc)
|
||||
cfg_get(psoc, CFG_DP_RX_MON_PROTOCOL_FLOW_TAG_ENABLE);
|
||||
wlan_cfg_ctx->mon_drop_thresh =
|
||||
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);
|
||||
return wlan_cfg_ctx;
|
||||
}
|
||||
|
||||
@@ -1228,6 +1229,18 @@ bool wlan_cfg_is_rx_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
|
||||
return cfg->is_rx_flow_tag_enabled;
|
||||
}
|
||||
|
||||
#ifdef WLAN_SUPPORT_RX_FISA
|
||||
bool wlan_cfg_is_rx_fisa_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
|
||||
{
|
||||
return (bool)(cfg->is_rx_fisa_enabled);
|
||||
}
|
||||
#else
|
||||
bool wlan_cfg_is_rx_fisa_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
wlan_cfg_set_rx_flow_search_table_per_pdev(struct wlan_cfg_dp_soc_ctxt *cfg,
|
||||
bool val)
|
||||
|
@@ -180,6 +180,7 @@ struct wlan_srng_cfg {
|
||||
* @rx_toeplitz_hash_key: toeplitz key pointer used for hash computation over
|
||||
* 5 tuple flow entry
|
||||
* @pktlog_buffer_size: packet log buffer size
|
||||
* @is_rx_fisa_enabled: flag to enable/disable FISA Rx
|
||||
*/
|
||||
struct wlan_cfg_dp_soc_ctxt {
|
||||
int num_int_ctxts;
|
||||
@@ -276,6 +277,7 @@ struct wlan_cfg_dp_soc_ctxt {
|
||||
uint16_t rx_flow_max_search;
|
||||
uint8_t *rx_toeplitz_hash_key;
|
||||
uint8_t pktlog_buffer_size;
|
||||
uint8_t is_rx_fisa_enabled;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -1275,4 +1277,14 @@ wlan_cfg_is_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg);
|
||||
*/
|
||||
void wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
|
||||
int interrupt_mode, bool is_monitor_mode);
|
||||
|
||||
/**
|
||||
* wlan_cfg_is_rx_fisa_enabled() - Get Rx FISA enabled flag
|
||||
*
|
||||
*
|
||||
* @cfg: soc configuration context
|
||||
*
|
||||
* Return: true if enabled, false otherwise.
|
||||
*/
|
||||
bool wlan_cfg_is_rx_fisa_enabled(struct wlan_cfg_dp_soc_ctxt *cfg);
|
||||
#endif
|
||||
|
Referência em uma nova issue
Block a user