phydm_ccx.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #ifndef __PHYDMCCX_H__
  2. #define __PHYDMCCX_H__
  3. #define CCX_EN 1
  4. #define SET_NHM_SETTING 0
  5. #define STORE_NHM_SETTING 1
  6. #define RESTORE_NHM_SETTING 2
  7. /*
  8. #define NHM_EXCLUDE_CCA 0
  9. #define NHM_INCLUDE_CCA 1
  10. #define NHM_EXCLUDE_TXON 0
  11. #define NHM_INCLUDE_TXON 1
  12. */
  13. enum nhm_inexclude_cca {
  14. NHM_EXCLUDE_CCA,
  15. NHM_INCLUDE_CCA
  16. };
  17. enum nhm_inexclude_txon {
  18. NHM_EXCLUDE_TXON,
  19. NHM_INCLUDE_TXON
  20. };
  21. struct _CCX_INFO {
  22. /*Settings*/
  23. u8 NHM_th[11];
  24. u16 NHM_period; /* 4us per unit */
  25. u16 CLM_period; /* 4us per unit */
  26. enum nhm_inexclude_txon nhm_inexclude_txon;
  27. enum nhm_inexclude_cca nhm_inexclude_cca;
  28. /*Previous Settings*/
  29. u8 NHM_th_restore[11];
  30. u16 NHM_period_restore; /* 4us per unit */
  31. u16 CLM_period_restore; /* 4us per unit */
  32. enum nhm_inexclude_txon NHM_inexclude_txon_restore;
  33. enum nhm_inexclude_cca NHM_inexclude_cca_restore;
  34. /*Report*/
  35. u8 NHM_result[12];
  36. u16 NHM_duration;
  37. u16 CLM_result;
  38. boolean echo_NHM_en;
  39. boolean echo_CLM_en;
  40. u8 echo_IGI;
  41. };
  42. /*NHM*/
  43. void
  44. phydm_nhm_setting(
  45. void *p_dm_void,
  46. u8 nhm_setting
  47. );
  48. void
  49. phydm_nhm_trigger(
  50. void *p_dm_void
  51. );
  52. void
  53. phydm_get_nhm_result(
  54. void *p_dm_void
  55. );
  56. boolean
  57. phydm_check_nhm_ready(
  58. void *p_dm_void
  59. );
  60. /*CLM*/
  61. void
  62. phydm_clm_setting(
  63. void *p_dm_void
  64. );
  65. void
  66. phydm_clm_trigger(
  67. void *p_dm_void
  68. );
  69. boolean
  70. phydm_check_cl_mready(
  71. void *p_dm_void
  72. );
  73. void
  74. phydm_get_cl_mresult(
  75. void *p_dm_void
  76. );
  77. #endif