wlan_coex_public_structs.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /*
  2. * Copyright (c) 2022 Qualcomm Innovation Center, Inc. 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: contains coex public structure definitions
  18. */
  19. #ifndef _WLAN_COEX_PUBLIC_STRUCTS_H_
  20. #define _WLAN_COEX_PUBLIC_STRUCTS_H_
  21. #ifdef WLAN_FEATURE_DBAM_CONFIG
  22. #define WLAN_SET_DBAM_CONFIG_TIMEOUT 5000
  23. /**
  24. * enum coex_dbam_config_mode - dbam config mode
  25. * @COEX_DBAM_DISABLE: Disable DBAM
  26. * @COEX_DBAM_ENABLE: ENABLE DBAM opportunistically when internal
  27. * conditions are met.
  28. * @COEX_DBAM_FORCE_ENABLE: Enable DBAM forcefully
  29. */
  30. enum coex_dbam_config_mode {
  31. COEX_DBAM_DISABLE = 0,
  32. COEX_DBAM_ENABLE = 1,
  33. COEX_DBAM_FORCE_ENABLE = 2,
  34. };
  35. /**
  36. * enum coex_dbam_comp_status - dbam config response
  37. * @COEX_DBAM_COMP_SUCCESS: FW enabled/disabled DBAM mode succssfully
  38. * @COEX_DBAM_COMP_NOT_SUPPORT: DBAM mode is not supported
  39. * @COEX_DBAM_COMP_FAIL: FW failed to enable/disable DBAM mode
  40. */
  41. enum coex_dbam_comp_status {
  42. COEX_DBAM_COMP_SUCCESS = 0,
  43. COEX_DBAM_COMP_NOT_SUPPORT = 1,
  44. COEX_DBAM_COMP_FAIL = 2,
  45. };
  46. /**
  47. * struct coex_dbam_config_params - Coex DBAM config command params
  48. * @vdev_id: Virtual device identifier
  49. * @dbam_mode: DBAM configuration mode - coex_dbam_config_mode enum
  50. */
  51. struct coex_dbam_config_params {
  52. uint32_t vdev_id;
  53. enum coex_dbam_config_mode dbam_mode;
  54. };
  55. /**
  56. * struct coex_dbam_config_resp - Coex DBAM config response
  57. * @dbam_resp: DBAM config request response - coex_dbam_comp_status enum
  58. */
  59. struct coex_dbam_config_resp {
  60. enum coex_dbam_comp_status dbam_resp;
  61. };
  62. #endif
  63. #endif