1 /* 2 * Copyright (c) 2013-2020, The Linux Foundation. All rights reserved. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 /** 17 * DOC: Implement API's specific to cp stats component. 18 */ 19 20 #ifndef _WMI_UNIFIED_CP_STATS_API_H_ 21 #define _WMI_UNIFIED_CP_STATS_API_H_ 22 23 #ifdef QCA_SUPPORT_MC_CP_STATS 24 #include <wmi_unified_mc_cp_stats_api.h> 25 #endif 26 27 /** 28 * wmi_unified_stats_request_send() - WMI request stats function 29 * @wmi_handle: handle to WMI 30 * @macaddr: MAC address 31 * @param: pointer to hold stats request parameter 32 * 33 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 34 */ 35 QDF_STATUS wmi_unified_stats_request_send(wmi_unified_t wmi_handle, 36 uint8_t macaddr[QDF_MAC_ADDR_SIZE], 37 struct stats_request_params *param); 38 39 /** 40 * wmi_extract_stats_param() - extract all stats count from event 41 * @wmi_handle: wmi handle 42 * @evt_buf: pointer to event buffer 43 * @stats_param: Pointer to hold stats count 44 * 45 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 46 */ 47 QDF_STATUS 48 wmi_extract_stats_param(wmi_unified_t wmi_handle, void *evt_buf, 49 wmi_host_stats_event *stats_param); 50 51 /** 52 * wmi_extract_pdev_stats() - extract pdev stats from event 53 * @wmi_handle: wmi handle 54 * @evt_buf: pointer to event buffer 55 * @index: Index into pdev stats 56 * @pdev_stats: Pointer to hold pdev stats 57 * 58 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 59 */ 60 QDF_STATUS 61 wmi_extract_pdev_stats(wmi_unified_t wmi_handle, void *evt_buf, 62 uint32_t index, wmi_host_pdev_stats *pdev_stats); 63 64 /** 65 * wmi_extract_vdev_stats() - extract vdev stats from event 66 * @wmi_handle: wmi handle 67 * @evt_buf: pointer to event buffer 68 * @index: Index into vdev stats 69 * @vdev_stats: Pointer to hold vdev stats 70 * 71 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 72 */ 73 QDF_STATUS 74 wmi_extract_vdev_stats(wmi_unified_t wmi_handle, void *evt_buf, 75 uint32_t index, wmi_host_vdev_stats *vdev_stats); 76 77 /** 78 * wmi_extract_peer_stats() - extract peer stats from event 79 * @wmi_handle: wmi handle 80 * @evt_buf: pointer to event buffer 81 * @index: Index into peer stats 82 * @peer_stats: Pointer to hold peer stats 83 * 84 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 85 */ 86 QDF_STATUS 87 wmi_extract_peer_stats(wmi_unified_t wmi_handle, void *evt_buf, 88 uint32_t index, wmi_host_peer_stats *peer_stats); 89 90 /** 91 * wmi_extract_peer_extd_stats() - extract extended peer stats from event 92 * @wmi_handle: wmi handle 93 * @evt_buf: pointer to event buffer 94 * @index: Index into extended peer stats 95 * @peer_extd_stats: Pointer to hold extended peer stats 96 * 97 * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure 98 */ 99 QDF_STATUS 100 wmi_extract_peer_extd_stats(wmi_unified_t wmi_handle, void *evt_buf, 101 uint32_t index, 102 wmi_host_peer_extd_stats *peer_extd_stats); 103 #endif /* _WMI_UNIFIED_CP_STATS_API_H_ */ 104