1 /* 2 * Copyright (c) 2016-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 #include "wmi_unified_priv.h" 21 #include "wmi_unified_param.h" 22 #include "wmi_unified_cp_stats_api.h" 23 24 QDF_STATUS wmi_unified_stats_request_send(wmi_unified_t wmi_handle, 25 uint8_t macaddr[QDF_MAC_ADDR_SIZE], 26 struct stats_request_params *param) 27 { 28 if (wmi_handle->ops->send_stats_request_cmd) 29 return wmi_handle->ops->send_stats_request_cmd(wmi_handle, 30 macaddr, param); 31 32 return QDF_STATUS_E_FAILURE; 33 } 34 35 QDF_STATUS 36 wmi_extract_stats_param(wmi_unified_t wmi_handle, void *evt_buf, 37 wmi_host_stats_event *stats_param) 38 { 39 if (wmi_handle->ops->extract_all_stats_count) 40 return wmi_handle->ops->extract_all_stats_count(wmi_handle, 41 evt_buf, stats_param); 42 43 return QDF_STATUS_E_FAILURE; 44 } 45 46 QDF_STATUS 47 wmi_extract_pdev_stats(wmi_unified_t wmi_handle, void *evt_buf, 48 uint32_t index, wmi_host_pdev_stats *pdev_stats) 49 { 50 if (wmi_handle->ops->extract_pdev_stats) 51 return wmi_handle->ops->extract_pdev_stats(wmi_handle, 52 evt_buf, index, pdev_stats); 53 54 return QDF_STATUS_E_FAILURE; 55 } 56 57 QDF_STATUS 58 wmi_extract_vdev_stats(wmi_unified_t wmi_handle, void *evt_buf, 59 uint32_t index, wmi_host_vdev_stats *vdev_stats) 60 { 61 if (wmi_handle->ops->extract_vdev_stats) 62 return wmi_handle->ops->extract_vdev_stats(wmi_handle, 63 evt_buf, index, vdev_stats); 64 65 return QDF_STATUS_E_FAILURE; 66 } 67 68 QDF_STATUS 69 wmi_extract_peer_stats(wmi_unified_t wmi_handle, void *evt_buf, 70 uint32_t index, wmi_host_peer_stats *peer_stats) 71 { 72 if (wmi_handle->ops->extract_peer_stats) 73 return wmi_handle->ops->extract_peer_stats(wmi_handle, 74 evt_buf, index, peer_stats); 75 76 return QDF_STATUS_E_FAILURE; 77 } 78 79 QDF_STATUS 80 wmi_extract_peer_extd_stats(wmi_unified_t wmi_handle, void *evt_buf, 81 uint32_t index, 82 wmi_host_peer_extd_stats *peer_extd_stats) 83 { 84 if (wmi_handle->ops->extract_peer_extd_stats) 85 return wmi_handle->ops->extract_peer_extd_stats(wmi_handle, 86 evt_buf, index, peer_extd_stats); 87 88 return QDF_STATUS_E_FAILURE; 89 } 90