qcacmn: Scan radio special vap stats support

-Add flag to inidicate special vap configuration
-Add frame type counters while processing tlv
 WIFIRX_MPDU_START_E
-Add function to update special vap rx stats
-Add dp pdev param to enable/disable special vap
 stats reset
-Add function to reset special vap stats
-Add fucntion to get special vap stats
-Add CDP function to retreive special vap stats

Change-Id: Ia5de6743e472dc86c9e66b9e789c909a57025e35
CRs-Fixed: 3005425
This commit is contained in:
Jeevan Kukkalli
2021-08-02 14:58:21 +05:30
committed by Madan Koyyalamudi
parent 693dbbdf2f
commit 1665e7c8e5
10 changed files with 215 additions and 0 deletions

View File

@@ -1115,6 +1115,7 @@ enum cdp_peer_param_type {
* @CDP_CONFIG_BSS_COLOR: configure bss color
* @CDP_SET_ATF_STATS_ENABLE: set ATF stats flag
* @CDP_CONFIG_SPECIAL_VAP: Configure Special vap
* @CDP_RESET_SPCL_VAP_STATS_ENABLE: Enable spcl vap stats reset
*/
enum cdp_pdev_param_type {
CDP_CONFIG_DEBUG_SNIFFER,
@@ -1146,6 +1147,7 @@ enum cdp_pdev_param_type {
CDP_CONFIG_BSS_COLOR,
CDP_SET_ATF_STATS_ENABLE,
CDP_CONFIG_SPECIAL_VAP,
CDP_RESET_SPCL_VAP_STATS_ENABLE,
};
/*
@@ -1279,6 +1281,7 @@ typedef union cdp_config_param_t {
uint32_t cdp_pdev_param_tx_pending;
bool cdp_pdev_param_atf_stats_enable;
bool cdp_pdev_param_config_special_vap;
bool cdp_pdev_param_reset_spcl_vap_stats_enable;
/* psoc params */
bool cdp_psoc_param_en_rate_stats;
@@ -2567,4 +2570,24 @@ struct cdp_rx_flow_info {
struct cdp_rx_flow_tuple_info flow_tuple_info;
uint16_t fse_metadata;
};
/**
* cdp_spcl_vap_stats - Special vap statistics info
* @rx_ok_pkts: rx fcs ok pkts count
* @rx_ok_bytes: rx fcs ok bytes count
* @rx_err_pkts: rx fcs err pkts count
* @rx_err_bytes: rx fcs err bytes count
* @rx_mgmt_pkts: rx mgmt pkts count
* @rx_ctrl_pkts: rx ctrl pkts count
* @rx_data_pkts: rx data pkts count
*/
struct cdp_spcl_vap_stats {
uint64_t rx_ok_pkts;
uint64_t rx_ok_bytes;
uint64_t rx_err_pkts;
uint64_t rx_err_bytes;
uint64_t rx_mgmt_pkts;
uint64_t rx_ctrl_pkts;
uint64_t rx_data_pkts;
};
#endif