qcacmn: CFR: Update RCC specific debug statistics

Move RCC specific debug statistics to Data path
to avoid allocating nbuf for the PPDUs for which
MAC has not sent a Freeze TLV. Instead just update the
debug statistics at an earlier point irrespective of
MAC sending Freeze to PHY, to gather below information:
Status of number of PPDUs being captured by PHY
Status of MAC sending freeze TLV for the PPDUs
Update freeze reason for the number of PPDUs received

Add support to clear debug statistics at user's will.

Change-Id: I8def3ce1f3ecc0b169030704db3fb1fb1c0a20ee
CRs-Fixed: 2609604
This commit is contained in:
Adwait Nayak
2020-01-28 18:29:15 +05:30
committed by nshrivas
parent fc8337d5de
commit 48d23f29a1
5 changed files with 335 additions and 71 deletions

View File

@@ -1599,6 +1599,8 @@ struct cdp_rx_offld_ops {
* @txrx_cfr_filter: Handler to configure host rx monitor status ring
* @txrx_get_cfr_rcc: Handler to get CFR mode
* @txrx_set_cfr_rcc: Handler to enable/disable CFR mode
* @txrx_get_cfr_dbg_stats: Handler to get debug statistics for CFR mode
* @txrx_clear_cfr_dbg_stats: Handler to clear debug statistics for CFR mode
*/
struct cdp_cfr_ops {
void (*txrx_cfr_filter)(struct cdp_soc_t *soc_hdl,
@@ -1610,6 +1612,11 @@ struct cdp_cfr_ops {
void (*txrx_set_cfr_rcc)(struct cdp_soc_t *soc_hdl,
uint8_t pdev_id,
bool enable);
void (*txrx_get_cfr_dbg_stats)(struct cdp_soc_t *soc_hdl,
uint8_t pdev_id,
struct cdp_cfr_rcc_stats *buf);
void (*txrx_clear_cfr_dbg_stats)(struct cdp_soc_t *soc_hdl,
uint8_t pdev_id);
};
#endif