qcacmn: Add support to reset SOC rx ext stats

Add CDP interface to support reset of soc rx ext stats.

Change-Id: I381f9b6b27d8d023b1932b7d8587df240c1ff4d0
CRs-Fixed: 2889565
This commit is contained in:
Yeshwanth Sriram Guntuka
2021-03-05 15:18:07 +05:30
committed by snandini
parent 2c8a3ddd35
commit b23bcc8b6b
3 changed files with 35 additions and 0 deletions

View File

@@ -817,6 +817,24 @@ cdp_request_rx_hw_stats(ol_txrx_soc_handle soc, uint8_t vdev_id)
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
/**
* cdp_reset_rx_hw_ext_stats(): reset rx hw ext stats
* @soc: soc handle
*
* Return: none
*/
static inline void
cdp_reset_rx_hw_ext_stats(ol_txrx_soc_handle soc)
{
if (!soc || !soc->ops || !soc->ops->misc_ops) {
dp_cdp_debug("Invalid Instance");
return;
}
if (soc->ops->misc_ops->reset_rx_hw_ext_stats)
soc->ops->misc_ops->reset_rx_hw_ext_stats(soc);
}
/** /**
* cdp_vdev_inform_ll_conn() - Inform DP about the low latency connection * cdp_vdev_inform_ll_conn() - Inform DP about the low latency connection
* @soc: soc handle * @soc: soc handle

View File

@@ -1283,6 +1283,7 @@ struct cdp_misc_ops {
struct cdp_txrx_ext_stats *req); struct cdp_txrx_ext_stats *req);
QDF_STATUS (*request_rx_hw_stats)(struct cdp_soc_t *soc_hdl, QDF_STATUS (*request_rx_hw_stats)(struct cdp_soc_t *soc_hdl,
uint8_t vdev_id); uint8_t vdev_id);
void (*reset_rx_hw_ext_stats)(struct cdp_soc_t *soc_hdl);
QDF_STATUS (*vdev_inform_ll_conn)(struct cdp_soc_t *soc_hdl, QDF_STATUS (*vdev_inform_ll_conn)(struct cdp_soc_t *soc_hdl,
uint8_t vdev_id, uint8_t vdev_id,
enum vdev_ll_conn_actions action); enum vdev_ll_conn_actions action);

View File

@@ -12119,6 +12119,21 @@ out:
return status; return status;
} }
/**
* dp_reset_rx_hw_ext_stats - Reset rx hardware ext stats
* @soc_hdl: soc handle
*
* Return: None
*/
static
void dp_reset_rx_hw_ext_stats(struct cdp_soc_t *soc_hdl)
{
struct dp_soc *soc = (struct dp_soc *)soc_hdl;
soc->ext_stats.rx_mpdu_received = 0;
soc->ext_stats.rx_mpdu_missed = 0;
}
#endif /* WLAN_FEATURE_STATS_EXT */ #endif /* WLAN_FEATURE_STATS_EXT */
#ifdef DP_PEER_EXTENDED_API #ifdef DP_PEER_EXTENDED_API
@@ -12144,6 +12159,7 @@ static struct cdp_misc_ops dp_ops_misc = {
#ifdef WLAN_FEATURE_STATS_EXT #ifdef WLAN_FEATURE_STATS_EXT
.txrx_ext_stats_request = dp_txrx_ext_stats_request, .txrx_ext_stats_request = dp_txrx_ext_stats_request,
.request_rx_hw_stats = dp_request_rx_hw_stats, .request_rx_hw_stats = dp_request_rx_hw_stats,
.reset_rx_hw_ext_stats = dp_reset_rx_hw_ext_stats,
#endif /* WLAN_FEATURE_STATS_EXT */ #endif /* WLAN_FEATURE_STATS_EXT */
.vdev_inform_ll_conn = dp_vdev_inform_ll_conn, .vdev_inform_ll_conn = dp_vdev_inform_ll_conn,
#ifdef WLAN_DP_FEATURE_SW_LATENCY_MGR #ifdef WLAN_DP_FEATURE_SW_LATENCY_MGR