rftest.h 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. /*
  2. ** Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/rftest.h#1
  3. */
  4. /*! \file "rftest.h"
  5. \brief definitions for RF Productino test
  6. */
  7. #ifndef _RFTEST_H
  8. #define _RFTEST_H
  9. /*******************************************************************************
  10. * C O M P I L E R F L A G S
  11. ********************************************************************************
  12. */
  13. /*******************************************************************************
  14. * E X T E R N A L R E F E R E N C E S
  15. ********************************************************************************
  16. */
  17. /*******************************************************************************
  18. * C O N S T A N T S
  19. ********************************************************************************
  20. */
  21. /* Table Version */
  22. #define RF_AUTO_TEST_FUNCTION_TABLE_VERSION 0x01000001
  23. /* Power */
  24. #define RF_AT_PARAM_POWER_MASK BITS(0, 7)
  25. #define RF_AT_PARAM_POWER_MAX RF_AT_PARAM_POWER_MASK
  26. /* Rate */
  27. #define RF_AT_PARAM_RATE_MCS_MASK BIT(31)
  28. #define RF_AT_PARAM_RATE_MASK BITS(0, 7)
  29. #define RF_AT_PARAM_RATE_CCK_MAX 3
  30. #define RF_AT_PARAM_RATE_1M 0
  31. #define RF_AT_PARAM_RATE_2M 1
  32. #define RF_AT_PARAM_RATE_5_5M 2
  33. #define RF_AT_PARAM_RATE_11M 3
  34. #define RF_AT_PARAM_RATE_6M 4
  35. #define RF_AT_PARAM_RATE_9M 5
  36. #define RF_AT_PARAM_RATE_12M 6
  37. #define RF_AT_PARAM_RATE_18M 7
  38. #define RF_AT_PARAM_RATE_24M 8
  39. #define RF_AT_PARAM_RATE_36M 9
  40. #define RF_AT_PARAM_RATE_48M 10
  41. #define RF_AT_PARAM_RATE_54M 11
  42. /* Antenna */
  43. #define RF_AT_PARAM_ANTENNA_ID_MASK BITS(0, 7)
  44. #define RF_AT_PARAM_ANTENNA_ID_MAX 1
  45. /* Packet Length */
  46. #define RF_AT_PARAM_TX_80211HDR_BYTE_MAX (32)
  47. #define RF_AT_PARAM_TX_80211PAYLOAD_BYTE_MAX (2048)
  48. #define RF_AT_PARAM_TX_PKTLEN_BYTE_DEFAULT 1024
  49. #define RF_AT_PARAM_TX_PKTLEN_BYTE_MAX \
  50. ((UINT_16)(RF_AT_PARAM_TX_80211HDR_BYTE_MAX + RF_AT_PARAM_TX_80211PAYLOAD_BYTE_MAX))
  51. /* Packet Count */
  52. #define RF_AT_PARAM_TX_PKTCNT_DEFAULT 1000
  53. #define RF_AT_PARAM_TX_PKTCNT_UNLIMITED 0
  54. /* Packet Interval */
  55. #define RF_AT_PARAM_TX_PKT_INTERVAL_US_DEFAULT 50
  56. /* ALC */
  57. #define RF_AT_PARAM_ALC_DISABLE 0
  58. #define RF_AT_PARAM_ALC_ENABLE 1
  59. /* TXOP */
  60. #define RF_AT_PARAM_TXOP_DEFAULT 0
  61. #define RF_AT_PARAM_TXOPQUE_QMASK BITS(16, 31)
  62. #define RF_AT_PARAM_TXOPQUE_TMASK BITS(0, 15)
  63. #define RF_AT_PARAM_TXOPQUE_AC0 (0<<16)
  64. #define RF_AT_PARAM_TXOPQUE_AC1 (1<<16)
  65. #define RF_AT_PARAM_TXOPQUE_AC2 (2<<16)
  66. #define RF_AT_PARAM_TXOPQUE_AC3 (3<<16)
  67. #define RF_AT_PARAM_TXOPQUE_AC4 (4<<16)
  68. #define RF_AT_PARAM_TXOPQUE_QOFFSET 16
  69. /* Retry Limit */
  70. #define RF_AT_PARAM_TX_RETRY_DEFAULT 0
  71. #define RF_AT_PARAM_TX_RETRY_MAX 6
  72. /* QoS Queue */
  73. #define RF_AT_PARAM_QOSQUE_AC0 0
  74. #define RF_AT_PARAM_QOSQUE_AC1 1
  75. #define RF_AT_PARAM_QOSQUE_AC2 2
  76. #define RF_AT_PARAM_QOSQUE_AC3 3
  77. #define RF_AT_PARAM_QOSQUE_AC4 4
  78. #define RF_AT_PARAM_QOSQUE_DEFAULT RF_AT_PARAM_QOSQUE_AC0
  79. /* Bandwidth */
  80. #define RF_AT_PARAM_BANDWIDTH_20MHZ 0
  81. #define RF_AT_PARAM_BANDWIDTH_40MHZ 1
  82. #define RF_AT_PARAM_BANDWIDTH_U20_IN_40MHZ 2
  83. #define RF_AT_PARAM_BANDWIDTH_D20_IN_40MHZ 3
  84. #define RF_AT_PARAM_BANDWIDTH_DEFAULT RF_AT_PARAM_BANDWIDTH_20MHZ
  85. /* GI (Guard Interval) */
  86. #define RF_AT_PARAM_GI_800NS 0
  87. #define RF_AT_PARAM_GI_400NS 1
  88. #define RF_AT_PARAM_GI_DEFAULT RF_AT_PARAM_GI_800NS
  89. /* STBC */
  90. #define RF_AT_PARAM_STBC_DISABLE 0
  91. #define RF_AT_PARAM_STBC_ENABLE 1
  92. /* RIFS */
  93. #define RF_AT_PARAM_RIFS_DISABLE 0
  94. #define RF_AT_PARAM_RIFS_ENABLE 1
  95. /*******************************************************************************
  96. * D A T A T Y P E S
  97. ********************************************************************************
  98. */
  99. /* Function ID List */
  100. typedef enum _ENUM_RF_AT_FUNCID_T {
  101. RF_AT_FUNCID_VERSION = 0,
  102. RF_AT_FUNCID_COMMAND,
  103. RF_AT_FUNCID_POWER,
  104. RF_AT_FUNCID_RATE,
  105. RF_AT_FUNCID_PREAMBLE,
  106. RF_AT_FUNCID_ANTENNA,
  107. RF_AT_FUNCID_PKTLEN,
  108. RF_AT_FUNCID_PKTCNT,
  109. RF_AT_FUNCID_PKTINTERVAL,
  110. RF_AT_FUNCID_TEMP_COMPEN,
  111. RF_AT_FUNCID_TXOPLIMIT,
  112. RF_AT_FUNCID_ACKPOLICY,
  113. RF_AT_FUNCID_PKTCONTENT,
  114. RF_AT_FUNCID_RETRYLIMIT,
  115. RF_AT_FUNCID_QUEUE,
  116. RF_AT_FUNCID_BANDWIDTH,
  117. RF_AT_FUNCID_GI,
  118. RF_AT_FUNCID_STBC,
  119. RF_AT_FUNCID_CHNL_FREQ,
  120. RF_AT_FUNCID_RIFS,
  121. RF_AT_FUNCID_TRSW_TYPE,
  122. RF_AT_FUNCID_RF_SX_SHUTDOWN,
  123. RF_AT_FUNCID_PLL_SHUTDOWN,
  124. RF_AT_FUNCID_SLOW_CLK_MODE,
  125. RF_AT_FUNCID_ADC_CLK_MODE,
  126. RF_AT_FUNCID_MEASURE_MODE,
  127. RF_AT_FUNCID_VOLT_COMPEN,
  128. RF_AT_FUNCID_DPD_TX_GAIN,
  129. RF_AT_FUNCID_DPD_MODE,
  130. RF_AT_FUNCID_TSSI_MODE,
  131. RF_AT_FUNCID_TX_GAIN_CODE,
  132. RF_AT_FUNCID_TX_PWR_MODE,
  133. /* Query command */
  134. RF_AT_FUNCID_TXED_COUNT = 32,
  135. RF_AT_FUNCID_TXOK_COUNT,
  136. RF_AT_FUNCID_RXOK_COUNT,
  137. RF_AT_FUNCID_RXERROR_COUNT,
  138. RF_AT_FUNCID_RESULT_INFO,
  139. RF_AT_FUNCID_TRX_IQ_RESULT,
  140. RF_AT_FUNCID_TSSI_RESULT,
  141. RF_AT_FUNCID_DPD_RESULT,
  142. RF_AT_FUNCID_RXV_DUMP,
  143. RF_AT_FUNCID_RX_PHY_STATIS,
  144. RF_AT_FUNCID_MEASURE_RESULT,
  145. RF_AT_FUNCID_TEMP_SENSOR,
  146. RF_AT_FUNCID_VOLT_SENSOR,
  147. RF_AT_FUNCID_READ_EFUSE,
  148. RF_AT_FUNCID_RX_RSSI,
  149. RF_AT_FUNCID_FW_INFO,
  150. RF_AT_FUNCID_DRV_INFO,
  151. RF_AT_FUNCID_PWR_DETECTOR,
  152. RF_AT_FUNCID_WBRSSI_IBSSI,
  153. /* Set command */
  154. RF_AT_FUNCID_SET_DPD_RESULT = 64,
  155. RF_AT_FUNCID_SET_CW_MODE,
  156. RF_AT_FUNCID_SET_JAPAN_CH14_FILTER,
  157. RF_AT_FUNCID_WRITE_EFUSE,
  158. RF_AT_FUNCID_SET_MAC_ADDRESS,
  159. RF_AT_FUNCID_SET_TA,
  160. RF_AT_FUNCID_SET_RX_MATCH_RULE,
  161. /*80211AC & Jmode */
  162. RF_AT_FUNCID_SET_CBW = 71,
  163. RF_AT_FUNCID_SET_DBW,
  164. RF_AT_FUNCID_SET_PRIMARY_CH,
  165. RF_AT_FUNCID_SET_ENCODE_MODE,
  166. RF_AT_FUNCID_SET_J_MODE,
  167. /*ICAP command */
  168. RF_AT_FUNCID_SET_ICAP_CONTENT = 80,
  169. RF_AT_FUNCID_SET_ICAP_MODE,
  170. RF_AT_FUNCID_SET_ICAP_STARTCAP,
  171. RF_AT_FUNCID_SET_ICAP_SIZE = 83,
  172. RF_AT_FUNCID_SET_ICAP_TRIGGER_EVENT,
  173. RF_AT_FUNCID_QUERY_ICAP_DUMP_FILE = 85
  174. } ENUM_RF_AT_FUNCID_T;
  175. /* Command */
  176. typedef enum _ENUM_RF_AT_COMMAND_T {
  177. RF_AT_COMMAND_STOPTEST = 0,
  178. RF_AT_COMMAND_STARTTX,
  179. RF_AT_COMMAND_STARTRX,
  180. RF_AT_COMMAND_RESET,
  181. RF_AT_COMMAND_OUTPUT_POWER, /* Payload */
  182. RF_AT_COMMAND_LO_LEAKAGE, /* Local freq is renamed to Local leakage */
  183. RF_AT_COMMAND_CARRIER_SUPPR, /* OFDM (LTF/STF), CCK (PI,PI/2) */
  184. RF_AT_COMMAND_TRX_IQ_CAL,
  185. RF_AT_COMMAND_TSSI_CAL,
  186. RF_AT_COMMAND_DPD_CAL,
  187. RF_AT_COMMAND_CW,
  188. RF_AT_COMMAND_ICAP,
  189. RF_AT_COMMAND_RDD,
  190. RF_AT_COMMAND_CH_SWITCH_FOR_ICAP,
  191. RF_AT_COMMAND_RESET_DUMP_NAME,
  192. RF_AT_COMMAND_NUM
  193. } ENUM_RF_AT_COMMAND_T;
  194. /* Preamble */
  195. typedef enum _ENUM_RF_AT_PREAMBLE_T {
  196. RF_AT_PREAMBLE_NORMAL = 0,
  197. RF_AT_PREAMBLE_CCK_SHORT,
  198. RF_AT_PREAMBLE_11N_MM,
  199. RF_AT_PREAMBLE_11N_GF,
  200. RF_AT_PREAMBLE_11AC,
  201. RF_AT_PREAMBLE_NUM
  202. } ENUM_RF_AT_PREAMBLE_T;
  203. /* Ack Policy */
  204. typedef enum _ENUM_RF_AT_ACK_POLICY_T {
  205. RF_AT_ACK_POLICY_NORMAL = 0,
  206. RF_AT_ACK_POLICY_NOACK,
  207. RF_AT_ACK_POLICY_NOEXPLICTACK,
  208. RF_AT_ACK_POLICY_BLOCKACK,
  209. RF_AT_ACK_POLICY_NUM
  210. } ENUM_RF_AT_ACK_POLICY_T;
  211. typedef enum _ENUM_RF_AUTOTEST_STATE_T {
  212. RF_AUTOTEST_STATE_STANDBY = 0,
  213. RF_AUTOTEST_STATE_TX,
  214. RF_AUTOTEST_STATE_RX,
  215. RF_AUTOTEST_STATE_RESET,
  216. RF_AUTOTEST_STATE_OUTPUT_POWER,
  217. RF_AUTOTEST_STATE_LOCA_FREQUENCY,
  218. RF_AUTOTEST_STATE_CARRIER_SUPRRESION,
  219. RF_AUTOTEST_STATE_NUM
  220. } ENUM_RF_AUTOTEST_STATE_T;
  221. /*******************************************************************************
  222. * P U B L I C D A T A
  223. ********************************************************************************
  224. */
  225. /*******************************************************************************
  226. * P R I V A T E D A T A
  227. ********************************************************************************
  228. */
  229. /*******************************************************************************
  230. * M A C R O S
  231. ********************************************************************************
  232. */
  233. /*******************************************************************************
  234. * F U N C T I O N D E C L A R A T I O N S
  235. ********************************************************************************
  236. */
  237. WLAN_STATUS rftestSetATInfo(IN P_ADAPTER_T prAdapter, UINT_32 u4FuncIndex, UINT_32 u4FuncData);
  238. WLAN_STATUS
  239. rftestQueryATInfo(IN P_ADAPTER_T prAdapter,
  240. UINT_32 u4FuncIndex, UINT_32 u4FuncData, OUT PVOID pvQueryBuffer, IN UINT_32 u4QueryBufferLen);
  241. WLAN_STATUS rftestSetFrequency(IN P_ADAPTER_T prAdapter, IN UINT_32 u4FreqInKHz, IN PUINT_32 pu4SetInfoLen);
  242. #endif /* _RFTEST_H */