wmi_unified_cfr_api.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * Copyright (c) 2019, 2021 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. #ifndef _WMI_UNIFIED_CFR_API_H_
  17. #define _WMI_UNIFIED_CFR_API_H_
  18. #include "wmi_unified_param.h"
  19. #include "wmi_unified_cfr_param.h"
  20. #ifdef WLAN_CFR_ENABLE
  21. /**
  22. * wmi_unified_send_peer_cfr_capture_cmd() - WMI function to start CFR capture
  23. * for a peer
  24. * @wmi_handle: WMI handle
  25. * @param: configuration params for capture
  26. *
  27. * Return: QDF_STATUS_SUCCESS if success, else returns proper error code.
  28. */
  29. QDF_STATUS
  30. wmi_unified_send_peer_cfr_capture_cmd(wmi_unified_t wmi_handle,
  31. struct peer_cfr_params *param);
  32. /**
  33. * wmi_extract_cfr_peer_tx_event_param() - WMI function to extract cfr tx event
  34. * for a peer
  35. * @wmi_handle: WMI handle
  36. * @evt_buf: Buffer holding event data
  37. * @peer_tx_event: pointer to hold tx event data
  38. *
  39. * Return: QDF_STATUS_SUCCESS if success, else returns proper error code.
  40. */
  41. QDF_STATUS
  42. wmi_extract_cfr_peer_tx_event_param(wmi_unified_t wmi_handle, void *evt_buf,
  43. wmi_cfr_peer_tx_event_param *peer_tx_event);
  44. #ifdef WLAN_ENH_CFR_ENABLE
  45. /**
  46. * wmi_unified_send_cfr_rcc_cmd() - WMI function to send CFR RCC param
  47. * @wmi_handle: WMI handle
  48. * @cfg: pointer to RCC param
  49. *
  50. * Return: QDF_STATUS_SUCCESS if success, else returns proper error code.
  51. */
  52. QDF_STATUS wmi_unified_send_cfr_rcc_cmd(wmi_unified_t wmi_handle,
  53. struct cfr_rcc_param *cfg);
  54. /**
  55. * wmi_extract_cfr_pdev_phase_delta_event() - WMI function to extract the
  56. * phase delta information.
  57. * @wmi_handle: WMI handle
  58. * @evt_buf: Buffer holding the event data
  59. * @param: phase delta params to be updated from event
  60. *
  61. * Return: QDF_STATUS_SUCCESS if success, else returns proper error code.
  62. */
  63. QDF_STATUS
  64. wmi_extract_cfr_pdev_phase_delta_event(wmi_unified_t wmi_handle,
  65. void *evt_buf,
  66. struct wmi_cfr_phase_delta_param *param);
  67. #endif
  68. #endif /* WLAN_CFR_ENABLE */
  69. #endif /* _WMI_UNIFIED_CFR_API_H_ */