1 /* 2 * Copyright (c) 2018, 2021 The Linux Foundation. All rights reserved. 3 * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. 4 * 5 * Permission to use, copy, modify, and/or distribute this software for 6 * any purpose with or without fee is hereby granted, provided that the 7 * above copyright notice and this permission notice appear in all 8 * copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 11 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 12 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 13 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 14 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 15 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 16 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 * PERFORMANCE OF THIS SOFTWARE. 18 */ 19 20 /** 21 * DOC: wlan_cp_stats_ucfg_api.h 22 * 23 * This header file maintain API declaration required for northbound interaction 24 */ 25 26 #ifndef __WLAN_CP_STATS_UCFG_API_H__ 27 #define __WLAN_CP_STATS_UCFG_API_H__ 28 29 #ifdef QCA_SUPPORT_CP_STATS 30 #include <wlan_cp_stats_utils_api.h> 31 #include "../../core/src/wlan_cp_stats_defs.h" 32 #include "../../core/src/wlan_cp_stats_cmn_api_i.h" 33 34 /** 35 * ucfg_infra_cp_stats_register_resp_cb() - Register the response callback 36 * and cookie in the psoc mc_stats object 37 * @psoc: pointer to psoc object 38 * @req: pointer to request parameter structure 39 * 40 * Return: QDF_STATUS_SUCCESS on Success, other QDF_STATUS error codes on 41 * failure 42 */ 43 QDF_STATUS 44 ucfg_infra_cp_stats_register_resp_cb(struct wlan_objmgr_psoc *psoc, 45 struct infra_cp_stats_cmd_info *req); 46 47 /** 48 * ucfg_send_infra_cp_stats_request() - send a infra cp stats command 49 * @vdev: pointer to vdev object 50 * @req: pointer to request parameter structure 51 * 52 * Return: QDF_STATUS_SUCCESS on Success, other QDF_STATUS error codes 53 * on failure 54 */ 55 QDF_STATUS 56 ucfg_send_infra_cp_stats_request(struct wlan_objmgr_vdev *vdev, 57 struct infra_cp_stats_cmd_info *req); 58 59 #ifdef WLAN_TELEMETRY_STATS_SUPPORT 60 /** 61 * @ucfg_send_telemetry_cp_stats_request() - send a telemetry cp stats command 62 * @pdev: pointer to pdev object 63 * @req: pointer to request parameter structure 64 * 65 * Return: QDF_STATUS_SUCCESS on Success, other QDF_STATUS error codes 66 * on failure 67 */ 68 QDF_STATUS 69 ucfg_send_telemetry_cp_stats_request(struct wlan_objmgr_pdev *pdev, 70 struct infra_cp_stats_cmd_info *req); 71 #endif 72 73 #if defined(WLAN_SUPPORT_TWT) && defined (WLAN_TWT_CONV_SUPPORTED) 74 int ucfg_cp_stats_twt_get_peer_session_params( 75 struct wlan_objmgr_psoc *psoc_obj, 76 struct twt_session_stats_info *params); 77 #endif 78 #endif /* QCA_SUPPORT_CP_STATS */ 79 #endif /* __WLAN_CP_STATS_UCFG_API_H__ */ 80