qcacmn: Add Support for request control path stats

Add support in cp stats component for the control path
stats infrastructure provided by firmware via
WMI_REQUEST_CTRL_PATH_STATS_CMDID and
WMI_CTRL_PATH_STATS_EVENTID. Also add support for TWT
type operations over this infrastructure.

Change-Id: I154babff396ac39c11c7548ad91cc4dc0d0c52af
CRs-Fixed: 2847603
This commit is contained in:
Rajasekaran Kalidoss
2021-01-16 05:54:36 +05:30
committad av snandini
förälder a20bb6caa3
incheckning b60109631e
7 ändrade filer med 323 tillägg och 10 borttagningar

Visa fil

@@ -87,6 +87,7 @@ struct dbr_module_config;
#endif
#ifdef QCA_SUPPORT_CP_STATS
#include <wlan_cp_stats_public_structs.h>
/**
* typedef cp_stats_event - Definition of cp stats event
@@ -124,6 +125,8 @@ typedef struct wake_lock_stats stats_wake_lock;
* to FW
* @set_pdev_stats_update_period: function pointer to set pdev stats update
* period to FW
* @send_req_infra_cp_stats: function pointer to send infra cp stats request
* command to FW
*/
struct wlan_lmac_if_cp_stats_tx_ops {
QDF_STATUS (*cp_stats_attach)(struct wlan_objmgr_psoc *psoc);
@@ -141,17 +144,28 @@ struct wlan_lmac_if_cp_stats_tx_ops {
QDF_STATUS (*set_pdev_stats_update_period)(
struct wlan_objmgr_psoc *psoc,
uint8_t pdev_id, uint32_t val);
#ifdef WLAN_SUPPORT_INFRA_CTRL_PATH_STATS
QDF_STATUS (*send_req_infra_cp_stats)(
struct wlan_objmgr_psoc *psoc,
struct infra_cp_stats_cmd_info *req);
#endif
};
/**
* struct wlan_lmac_if_cp_stats_rx_ops - defines southbound rx callbacks for
* control plane statistics component
* @cp_stats_rx_event_handler: function pointer to rx FW events
* @process_stats_event: function pointer to process stats event
*/
struct wlan_lmac_if_cp_stats_rx_ops {
QDF_STATUS (*cp_stats_rx_event_handler)(struct wlan_objmgr_vdev *vdev);
QDF_STATUS (*process_stats_event)(struct wlan_objmgr_psoc *psoc,
cp_stats_event *ev);
struct stats_event *ev);
#ifdef WLAN_SUPPORT_INFRA_CTRL_PATH_STATS
QDF_STATUS
(*process_infra_stats_event)(struct wlan_objmgr_psoc *psoc,
struct infra_cp_stats_event *infra_event);
#endif /* WLAN_SUPPORT_INFRA_CTRL_PATH_STATS */
};
#endif