pktlog_wifi2.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  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. #include "ol_txrx_types.h"
  17. #include "ol_htt_tx_api.h"
  18. #include "ol_tx_desc.h"
  19. #include "qdf_mem.h"
  20. #include "htt.h"
  21. #include "htt_internal.h"
  22. #include "pktlog_ac_i.h"
  23. #include "wma_api.h"
  24. #include "wlan_logging_sock_svc.h"
  25. #define TX_DESC_ID_LOW_MASK 0xffff
  26. #define TX_DESC_ID_LOW_SHIFT 0
  27. #define TX_DESC_ID_HIGH_MASK 0xffff0000
  28. #define TX_DESC_ID_HIGH_SHIFT 16
  29. #ifndef REMOVE_PKT_LOG
  30. /**
  31. * process_tx_info() - process tx pktlog buffers
  32. * @txrx_pdev: ol pdev handle
  33. * @data: pktlog buffer
  34. *
  35. * Return: 0 - success/non-zero - failure
  36. */
  37. A_STATUS process_tx_info(struct cdp_pdev *txrx_pdev, void *data);
  38. /**
  39. * process_rx_info_remote() - process rx pktlog buffers
  40. * @txrx_pdev: ol pdev handle
  41. * @data: pktlog buffer
  42. *
  43. * Return: 0 - success/non-zero - failure
  44. */
  45. A_STATUS process_rx_info_remote(void *pdev, void *data);
  46. /**
  47. * process_rx_info() - process rx pktlog buffers
  48. * @txrx_pdev: ol pdev handle
  49. * @data: pktlog buffer
  50. *
  51. * Return: 0 - success/non-zero - failure
  52. */
  53. A_STATUS process_rx_info(void *pdev, void *data);
  54. /**
  55. * process_rate_find() - process rate event pktlog buffers
  56. * @txrx_pdev: ol pdev handle
  57. * @data: pktlog buffer
  58. *
  59. * Return: 0 - success/non-zero - failure
  60. */
  61. A_STATUS process_rate_find(void *pdev, void *data);
  62. /**
  63. * process_rate_update() - process rate event pktlog buffers
  64. * @txrx_pdev: ol pdev handle
  65. * @data: pktlog buffer
  66. *
  67. * Return: 0 - success/non-zero - failure
  68. */
  69. A_STATUS process_rate_update(void *pdev, void *data);
  70. /**
  71. * process_sw_event() - process sw event pktlog buffers
  72. * @txrx_pdev: ol pdev handle
  73. * @data: pktlog buffer
  74. *
  75. * Return: 0 - success/non-zero - failure
  76. */
  77. A_STATUS process_sw_event(void *pdev, void *data);
  78. #else
  79. static inline
  80. A_STATUS process_tx_info(struct cdp_pdev *txrx_pdev, void *data)
  81. {
  82. return 0;
  83. }
  84. static inline
  85. A_STATUS process_rx_info_remote(void *pdev, void *data)
  86. {
  87. return 0;
  88. }
  89. static inline
  90. A_STATUS process_rx_info(void *pdev, void *data)
  91. {
  92. return 0;
  93. }
  94. static inline
  95. A_STATUS process_rate_find(void *pdev, void *data)
  96. {
  97. return 0;
  98. }
  99. static inline
  100. A_STATUS process_rate_update(void *pdev, void *data)
  101. {
  102. return 0;
  103. }
  104. static inline
  105. A_STATUS process_sw_event(void *pdev, void *data)
  106. {
  107. return 0;
  108. }
  109. #endif /* REMOVE_PKT_LOG */
  110. /**
  111. * process_offload_pktlog_wifi3() - Process full pktlog events
  112. * pdev: abstract pdev handle
  113. * data: pktlog buffer
  114. *
  115. * Return: zero on success, non-zero on failure
  116. */
  117. static inline A_STATUS
  118. process_offload_pktlog_wifi3(struct cdp_pdev *pdev, void *data)
  119. {
  120. return 0;
  121. }
  122. /**
  123. * process_rx_desc_remote_wifi3() - Process pktlog buffers received
  124. * from monitor status ring
  125. * @pdev: pdev handle
  126. * @data: pktlog buffer pointer
  127. *
  128. * Return: 0 - success/non-zero - failure
  129. */
  130. static inline int
  131. process_rx_desc_remote_wifi3(void *pdev, void *data)
  132. {
  133. return 0;
  134. }
  135. /**
  136. * process_pktlog_lite_wifi3() - Process pktlog buffers received
  137. * from monitor status ring
  138. * @pdev: pdev handle
  139. * @data: pktlog buffer pointer
  140. *
  141. * Return: 0 - success/non-zero - failure
  142. */
  143. static inline int
  144. process_pktlog_lite_wifi3(void *context, void *log_data,
  145. uint16_t log_type)
  146. {
  147. return 0;
  148. }