From ba8f08dd4e5692cc21475443b13a6148ae65a837 Mon Sep 17 00:00:00 2001 From: Subrat Mishra Date: Fri, 12 Jun 2020 12:52:17 +0530 Subject: [PATCH] qcacmn: Support to set PPDU stats for ATF Stats Add TxOps and RxOps functions for ATF to set PPDU stats. CRs-Fixed: 2709102 Change-Id: I4ceacbe8f3abe44dbbc56d2a7bbe75b0c8d5ca45 --- .../lmac_if/inc/wlan_lmac_if_def.h | 14 +++++++++++--- .../lmac_if/src/wlan_lmac_if.c | 2 ++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h index 521fc038a7ff..c2d7ab94469a 100644 --- a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h +++ b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h @@ -429,8 +429,9 @@ struct wlan_lmac_if_p2p_tx_ops { * @atf_get_peer_airtime: Get peer airtime * @atf_get_chbusyper: Get channel busy * @atf_open: ATF open - * @atf_register_event_handler ATF register wmi event handlers - * @atf_unregister_event_handler ATF unregister wmi event handlers + * @atf_register_event_handler: ATF register wmi event handlers + * @atf_unregister_event_handler: ATF unregister wmi event handlers + * @atf_set_ppdu_stats: ATF set ppdu stats to get ATF stats */ struct wlan_lmac_if_atf_tx_ops { void (*atf_node_unblock)(struct wlan_objmgr_pdev *pdev, @@ -480,6 +481,8 @@ struct wlan_lmac_if_atf_tx_ops { void (*atf_open)(struct wlan_objmgr_psoc *psoc); void (*atf_register_event_handler)(struct wlan_objmgr_psoc *psoc); void (*atf_unregister_event_handler)(struct wlan_objmgr_psoc *psoc); + void (*atf_set_ppdu_stats)(struct wlan_objmgr_pdev *pdev, + uint8_t value); }; #endif @@ -1260,6 +1263,8 @@ struct wlan_lmac_if_p2p_rx_ops { * @atf_peer_unblk_txtraffic: Unblock peer tx traffic * @atf_set_token_allocated: Set atf token allocated * @atf_set_token_utilized: Set atf token utilized + * @atf_process_ppdu_stats: Process PPDU stats to get ATF stats + * @atf_is_stats_enabled: Check ATF stats enabled or not */ struct wlan_lmac_if_atf_rx_ops { uint8_t (*atf_get_atf_commit)(struct wlan_objmgr_pdev *pdev); @@ -1324,7 +1329,10 @@ struct wlan_lmac_if_atf_rx_ops { void (*atf_set_token_allocated)(struct wlan_objmgr_peer *peer, uint16_t value); void (*atf_set_token_utilized)(struct wlan_objmgr_peer *peer, - uint16_t value); + uint16_t value); + void (*atf_process_ppdu_stats)(struct wlan_objmgr_pdev *pdev, + qdf_nbuf_t msg); + uint8_t (*atf_is_stats_enabled)(struct wlan_objmgr_pdev *pdev); }; #endif diff --git a/umac/global_umac_dispatcher/lmac_if/src/wlan_lmac_if.c b/umac/global_umac_dispatcher/lmac_if/src/wlan_lmac_if.c index 1076664222bf..6451d4bcb3c3 100644 --- a/umac/global_umac_dispatcher/lmac_if/src/wlan_lmac_if.c +++ b/umac/global_umac_dispatcher/lmac_if/src/wlan_lmac_if.c @@ -183,6 +183,8 @@ wlan_lmac_if_atf_rx_ops_register(struct wlan_lmac_if_rx_ops *rx_ops) atf_rx_ops->atf_peer_unblk_txtraffic = tgt_atf_peer_unblk_txtraffic; atf_rx_ops->atf_set_token_allocated = tgt_atf_set_token_allocated; atf_rx_ops->atf_set_token_utilized = tgt_atf_set_token_utilized; + atf_rx_ops->atf_process_ppdu_stats = tgt_atf_process_ppdu_stats; + atf_rx_ops->atf_is_stats_enabled = tgt_atf_is_stats_enabled; } #else static void