dp_cal_client_api.h 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /*
  2. * Copyright (c) 2017-2019 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. * DOC: dp_cal_client_api.h
  21. * define timer to update DP stats
  22. */
  23. #ifndef _DP_CAL_CLIENT_H_
  24. #define _DP_CAL_CLIENT_H_
  25. #include<cdp_txrx_stats_struct.h>
  26. #include <qdf_timer.h>
  27. #include <qdf_mem.h>
  28. #include <cdp_txrx_handle.h>
  29. /*timer will run every 1 sec*/
  30. #define DP_CAL_CLIENT_TIME 1000
  31. struct cal_client {
  32. qdf_timer_t cal_client_timer;
  33. void (*iterate_update_peer_list)(struct cdp_pdev *ctx);
  34. struct cdp_pdev *pdev_hdl;
  35. };
  36. void dp_cal_client_attach(struct cdp_cal_client **cal_client_ctx,
  37. struct cdp_pdev *pdev, qdf_device_t osdev,
  38. void (*iterate_peer_list)(struct cdp_pdev *));
  39. void dp_cal_client_detach(struct cdp_cal_client **cal_client_ctx);
  40. void dp_cal_client_timer_start(void *ctx);
  41. void dp_cal_client_timer_stop(void *ctx);
  42. void dp_cal_client_stats_timer_fn(void *pdev_hdl);
  43. void dp_cal_client_update_peer_stats(struct cdp_peer_stats *peer_stats);
  44. void dp_cal_client_update_peer_stats_wifi3(struct cdp_calibr_stats_intf *stats_intf,
  45. struct cdp_calibr_stats *calibr_stats);
  46. #ifndef ATH_SUPPORT_EXT_STAT
  47. void dp_cal_client_attach(struct cdp_cal_client **cal_client_ctx,
  48. struct cdp_pdev *pdev, qdf_device_t osdev,
  49. void (*iterate_peer_list)(struct cdp_pdev *))
  50. {
  51. }
  52. void dp_cal_client_detach(struct cdp_cal_client **cal_client_ctx)
  53. {
  54. }
  55. void dp_cal_client_timer_start(void *ctx)
  56. {
  57. }
  58. void dp_cal_client_timer_stop(void *ctx)
  59. {
  60. }
  61. void dp_cal_client_stats_timer_fn(void *pdev_hdl)
  62. {
  63. }
  64. void dp_cal_client_update_peer_stats(struct cdp_peer_stats *peer_stats)
  65. {
  66. }
  67. void dp_cal_client_update_peer_stats_wifi3(struct cdp_calibr_stats_intf *stats_intf,
  68. struct cdp_calibr_stats *calibr_stats)
  69. {
  70. }
  71. #endif
  72. #endif /*_DP_CAL_CLIENT_H_*/