ofdma_trigger_details.h 102 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619
  1. /*
  2. * Copyright (c) 2023 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. #ifndef _OFDMA_TRIGGER_DETAILS_H_
  17. #define _OFDMA_TRIGGER_DETAILS_H_
  18. #if !defined(__ASSEMBLER__)
  19. #endif
  20. #include "mlo_sta_id_details.h"
  21. #define NUM_OF_DWORDS_OFDMA_TRIGGER_DETAILS 22
  22. #define NUM_OF_QWORDS_OFDMA_TRIGGER_DETAILS 11
  23. struct ofdma_trigger_details {
  24. #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
  25. uint32_t ax_trigger_source : 1, // [0:0]
  26. rx_trigger_frame_user_source : 2, // [2:1]
  27. received_bandwidth : 3, // [5:3]
  28. txop_duration_all_ones : 1, // [6:6]
  29. eht_trigger_response : 1, // [7:7]
  30. pre_rssi_comb : 8, // [15:8]
  31. rssi_comb : 8, // [23:16]
  32. rxpcu_pcie_l0_req_duration : 8; // [31:24]
  33. uint32_t he_trigger_ul_ppdu_length : 5, // [4:0]
  34. he_trigger_ru_allocation : 8, // [12:5]
  35. he_trigger_dl_tx_power : 5, // [17:13]
  36. he_trigger_ul_target_rssi : 5, // [22:18]
  37. he_trigger_ul_mcs : 2, // [24:23]
  38. he_trigger_reserved : 1, // [25:25]
  39. bss_color : 6; // [31:26]
  40. uint32_t trigger_type : 4, // [3:0]
  41. lsig_response_length : 12, // [15:4]
  42. cascade_indication : 1, // [16:16]
  43. carrier_sense : 1, // [17:17]
  44. bandwidth : 2, // [19:18]
  45. cp_ltf_size : 2, // [21:20]
  46. mu_mimo_ltf_mode : 1, // [22:22]
  47. number_of_ltfs : 3, // [25:23]
  48. stbc : 1, // [26:26]
  49. ldpc_extra_symbol : 1, // [27:27]
  50. ap_tx_power_lsb_part : 4; // [31:28]
  51. uint32_t ap_tx_power_msb_part : 2, // [1:0]
  52. packet_extension_a_factor : 2, // [3:2]
  53. packet_extension_pe_disambiguity : 1, // [4:4]
  54. spatial_reuse : 16, // [20:5]
  55. doppler : 1, // [21:21]
  56. he_siga_reserved : 9, // [30:22]
  57. reserved_3b : 1; // [31:31]
  58. uint32_t aid12 : 12, // [11:0]
  59. ru_allocation : 9, // [20:12]
  60. mcs : 4, // [24:21]
  61. dcm : 1, // [25:25]
  62. start_spatial_stream : 3, // [28:26]
  63. number_of_spatial_stream : 3; // [31:29]
  64. uint32_t target_rssi : 7, // [6:0]
  65. coding_type : 1, // [7:7]
  66. mpdu_mu_spacing_factor : 2, // [9:8]
  67. tid_aggregation_limit : 3, // [12:10]
  68. reserved_5b : 1, // [13:13]
  69. prefered_ac : 2, // [15:14]
  70. bar_control_ack_policy : 1, // [16:16]
  71. bar_control_multi_tid : 1, // [17:17]
  72. bar_control_compressed_bitmap : 1, // [18:18]
  73. bar_control_reserved : 9, // [27:19]
  74. bar_control_tid_info : 4; // [31:28]
  75. uint32_t nr0_per_tid_info_reserved : 12, // [11:0]
  76. nr0_per_tid_info_tid_value : 4, // [15:12]
  77. nr0_start_seq_ctrl_frag_number : 4, // [19:16]
  78. nr0_start_seq_ctrl_start_seq_number : 12; // [31:20]
  79. uint32_t nr1_per_tid_info_reserved : 12, // [11:0]
  80. nr1_per_tid_info_tid_value : 4, // [15:12]
  81. nr1_start_seq_ctrl_frag_number : 4, // [19:16]
  82. nr1_start_seq_ctrl_start_seq_number : 12; // [31:20]
  83. uint32_t nr2_per_tid_info_reserved : 12, // [11:0]
  84. nr2_per_tid_info_tid_value : 4, // [15:12]
  85. nr2_start_seq_ctrl_frag_number : 4, // [19:16]
  86. nr2_start_seq_ctrl_start_seq_number : 12; // [31:20]
  87. uint32_t nr3_per_tid_info_reserved : 12, // [11:0]
  88. nr3_per_tid_info_tid_value : 4, // [15:12]
  89. nr3_start_seq_ctrl_frag_number : 4, // [19:16]
  90. nr3_start_seq_ctrl_start_seq_number : 12; // [31:20]
  91. uint32_t nr4_per_tid_info_reserved : 12, // [11:0]
  92. nr4_per_tid_info_tid_value : 4, // [15:12]
  93. nr4_start_seq_ctrl_frag_number : 4, // [19:16]
  94. nr4_start_seq_ctrl_start_seq_number : 12; // [31:20]
  95. uint32_t nr5_per_tid_info_reserved : 12, // [11:0]
  96. nr5_per_tid_info_tid_value : 4, // [15:12]
  97. nr5_start_seq_ctrl_frag_number : 4, // [19:16]
  98. nr5_start_seq_ctrl_start_seq_number : 12; // [31:20]
  99. uint32_t nr6_per_tid_info_reserved : 12, // [11:0]
  100. nr6_per_tid_info_tid_value : 4, // [15:12]
  101. nr6_start_seq_ctrl_frag_number : 4, // [19:16]
  102. nr6_start_seq_ctrl_start_seq_number : 12; // [31:20]
  103. uint32_t nr7_per_tid_info_reserved : 12, // [11:0]
  104. nr7_per_tid_info_tid_value : 4, // [15:12]
  105. nr7_start_seq_ctrl_frag_number : 4, // [19:16]
  106. nr7_start_seq_ctrl_start_seq_number : 12; // [31:20]
  107. uint32_t fb_segment_retransmission_bitmap : 8, // [7:0]
  108. reserved_14a : 2, // [9:8]
  109. u_sig_puncture_pattern_encoding : 6, // [15:10]
  110. dot11be_puncture_bitmap : 16; // [31:16]
  111. uint32_t rx_chain_mask : 8, // [7:0]
  112. rx_duration_field : 16, // [23:8]
  113. scrambler_seed : 7, // [30:24]
  114. rx_chain_mask_type : 1; // [31:31]
  115. struct mlo_sta_id_details mlo_sta_id_details_rx;
  116. uint16_t normalized_pre_rssi_comb : 8, // [23:16]
  117. normalized_rssi_comb : 8; // [31:24]
  118. uint32_t sw_peer_id : 16, // [15:0]
  119. response_tx_duration : 16; // [31:16]
  120. uint32_t ranging_trigger_subtype : 4, // [3:0]
  121. tbr_trigger_common_info_79_68 : 12, // [15:4]
  122. tbr_trigger_sound_reserved_20_12 : 9, // [24:16]
  123. i2r_rep : 3, // [27:25]
  124. tbr_trigger_sound_reserved_25_24 : 2, // [29:28]
  125. reserved_18a : 1, // [30:30]
  126. qos_null_only_response_tx : 1; // [31:31]
  127. uint32_t tbr_trigger_sound_sac : 16, // [15:0]
  128. reserved_19a : 8, // [23:16]
  129. u_sig_reserved2 : 5, // [28:24]
  130. reserved_19b : 3; // [31:29]
  131. uint32_t eht_special_aid12 : 12, // [11:0]
  132. phy_version : 3, // [14:12]
  133. bandwidth_ext : 2, // [16:15]
  134. eht_spatial_reuse : 8, // [24:17]
  135. u_sig_reserved1 : 7; // [31:25]
  136. uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0]
  137. #else
  138. uint32_t rxpcu_pcie_l0_req_duration : 8, // [31:24]
  139. rssi_comb : 8, // [23:16]
  140. pre_rssi_comb : 8, // [15:8]
  141. eht_trigger_response : 1, // [7:7]
  142. txop_duration_all_ones : 1, // [6:6]
  143. received_bandwidth : 3, // [5:3]
  144. rx_trigger_frame_user_source : 2, // [2:1]
  145. ax_trigger_source : 1; // [0:0]
  146. uint32_t bss_color : 6, // [31:26]
  147. he_trigger_reserved : 1, // [25:25]
  148. he_trigger_ul_mcs : 2, // [24:23]
  149. he_trigger_ul_target_rssi : 5, // [22:18]
  150. he_trigger_dl_tx_power : 5, // [17:13]
  151. he_trigger_ru_allocation : 8, // [12:5]
  152. he_trigger_ul_ppdu_length : 5; // [4:0]
  153. uint32_t ap_tx_power_lsb_part : 4, // [31:28]
  154. ldpc_extra_symbol : 1, // [27:27]
  155. stbc : 1, // [26:26]
  156. number_of_ltfs : 3, // [25:23]
  157. mu_mimo_ltf_mode : 1, // [22:22]
  158. cp_ltf_size : 2, // [21:20]
  159. bandwidth : 2, // [19:18]
  160. carrier_sense : 1, // [17:17]
  161. cascade_indication : 1, // [16:16]
  162. lsig_response_length : 12, // [15:4]
  163. trigger_type : 4; // [3:0]
  164. uint32_t reserved_3b : 1, // [31:31]
  165. he_siga_reserved : 9, // [30:22]
  166. doppler : 1, // [21:21]
  167. spatial_reuse : 16, // [20:5]
  168. packet_extension_pe_disambiguity : 1, // [4:4]
  169. packet_extension_a_factor : 2, // [3:2]
  170. ap_tx_power_msb_part : 2; // [1:0]
  171. uint32_t number_of_spatial_stream : 3, // [31:29]
  172. start_spatial_stream : 3, // [28:26]
  173. dcm : 1, // [25:25]
  174. mcs : 4, // [24:21]
  175. ru_allocation : 9, // [20:12]
  176. aid12 : 12; // [11:0]
  177. uint32_t bar_control_tid_info : 4, // [31:28]
  178. bar_control_reserved : 9, // [27:19]
  179. bar_control_compressed_bitmap : 1, // [18:18]
  180. bar_control_multi_tid : 1, // [17:17]
  181. bar_control_ack_policy : 1, // [16:16]
  182. prefered_ac : 2, // [15:14]
  183. reserved_5b : 1, // [13:13]
  184. tid_aggregation_limit : 3, // [12:10]
  185. mpdu_mu_spacing_factor : 2, // [9:8]
  186. coding_type : 1, // [7:7]
  187. target_rssi : 7; // [6:0]
  188. uint32_t nr0_start_seq_ctrl_start_seq_number : 12, // [31:20]
  189. nr0_start_seq_ctrl_frag_number : 4, // [19:16]
  190. nr0_per_tid_info_tid_value : 4, // [15:12]
  191. nr0_per_tid_info_reserved : 12; // [11:0]
  192. uint32_t nr1_start_seq_ctrl_start_seq_number : 12, // [31:20]
  193. nr1_start_seq_ctrl_frag_number : 4, // [19:16]
  194. nr1_per_tid_info_tid_value : 4, // [15:12]
  195. nr1_per_tid_info_reserved : 12; // [11:0]
  196. uint32_t nr2_start_seq_ctrl_start_seq_number : 12, // [31:20]
  197. nr2_start_seq_ctrl_frag_number : 4, // [19:16]
  198. nr2_per_tid_info_tid_value : 4, // [15:12]
  199. nr2_per_tid_info_reserved : 12; // [11:0]
  200. uint32_t nr3_start_seq_ctrl_start_seq_number : 12, // [31:20]
  201. nr3_start_seq_ctrl_frag_number : 4, // [19:16]
  202. nr3_per_tid_info_tid_value : 4, // [15:12]
  203. nr3_per_tid_info_reserved : 12; // [11:0]
  204. uint32_t nr4_start_seq_ctrl_start_seq_number : 12, // [31:20]
  205. nr4_start_seq_ctrl_frag_number : 4, // [19:16]
  206. nr4_per_tid_info_tid_value : 4, // [15:12]
  207. nr4_per_tid_info_reserved : 12; // [11:0]
  208. uint32_t nr5_start_seq_ctrl_start_seq_number : 12, // [31:20]
  209. nr5_start_seq_ctrl_frag_number : 4, // [19:16]
  210. nr5_per_tid_info_tid_value : 4, // [15:12]
  211. nr5_per_tid_info_reserved : 12; // [11:0]
  212. uint32_t nr6_start_seq_ctrl_start_seq_number : 12, // [31:20]
  213. nr6_start_seq_ctrl_frag_number : 4, // [19:16]
  214. nr6_per_tid_info_tid_value : 4, // [15:12]
  215. nr6_per_tid_info_reserved : 12; // [11:0]
  216. uint32_t nr7_start_seq_ctrl_start_seq_number : 12, // [31:20]
  217. nr7_start_seq_ctrl_frag_number : 4, // [19:16]
  218. nr7_per_tid_info_tid_value : 4, // [15:12]
  219. nr7_per_tid_info_reserved : 12; // [11:0]
  220. uint32_t dot11be_puncture_bitmap : 16, // [31:16]
  221. u_sig_puncture_pattern_encoding : 6, // [15:10]
  222. reserved_14a : 2, // [9:8]
  223. fb_segment_retransmission_bitmap : 8; // [7:0]
  224. uint32_t rx_chain_mask_type : 1, // [31:31]
  225. scrambler_seed : 7, // [30:24]
  226. rx_duration_field : 16, // [23:8]
  227. rx_chain_mask : 8; // [7:0]
  228. uint32_t normalized_rssi_comb : 8, // [31:24]
  229. normalized_pre_rssi_comb : 8; // [23:16]
  230. struct mlo_sta_id_details mlo_sta_id_details_rx;
  231. uint32_t response_tx_duration : 16, // [31:16]
  232. sw_peer_id : 16; // [15:0]
  233. uint32_t qos_null_only_response_tx : 1, // [31:31]
  234. reserved_18a : 1, // [30:30]
  235. tbr_trigger_sound_reserved_25_24 : 2, // [29:28]
  236. i2r_rep : 3, // [27:25]
  237. tbr_trigger_sound_reserved_20_12 : 9, // [24:16]
  238. tbr_trigger_common_info_79_68 : 12, // [15:4]
  239. ranging_trigger_subtype : 4; // [3:0]
  240. uint32_t reserved_19b : 3, // [31:29]
  241. u_sig_reserved2 : 5, // [28:24]
  242. reserved_19a : 8, // [23:16]
  243. tbr_trigger_sound_sac : 16; // [15:0]
  244. uint32_t u_sig_reserved1 : 7, // [31:25]
  245. eht_spatial_reuse : 8, // [24:17]
  246. bandwidth_ext : 2, // [16:15]
  247. phy_version : 3, // [14:12]
  248. eht_special_aid12 : 12; // [11:0]
  249. uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0]
  250. #endif
  251. };
  252. /* Description AX_TRIGGER_SOURCE
  253. <enum 0 11ax_trigger_frame>
  254. <enum 1 he_control_based_trigger>
  255. <legal all>
  256. */
  257. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_OFFSET 0x0000000000000000
  258. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_LSB 0
  259. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MSB 0
  260. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MASK 0x0000000000000001
  261. /* Description RX_TRIGGER_FRAME_USER_SOURCE
  262. Field not really needed by PDG, but is there for debugging
  263. purposes to be put in event.
  264. <enum 0 dot11ax_direct_trigger_frame>
  265. <enum 1 dot11ax_wildcard_trigger_frame> wildcard trigger
  266. for associated STAs
  267. <enum 2 dot11ax_usassoc_wildcard_trigger_frame> wildcard
  268. trigger for unassociated STAs
  269. <legal 0-2>
  270. */
  271. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_OFFSET 0x0000000000000000
  272. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_LSB 1
  273. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MSB 2
  274. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MASK 0x0000000000000006
  275. /* Description RECEIVED_BANDWIDTH
  276. Received Packet bandwidth of the trigger frame.
  277. Note that this is not the BW indicated within the trigger
  278. frame itself.
  279. <enum 0 20_mhz>20 Mhz BW
  280. <enum 1 40_mhz>40 Mhz BW
  281. <enum 2 80_mhz>80 Mhz BW
  282. <enum 3 160_mhz>160 Mhz BW
  283. <enum 4 320_mhz>320 Mhz BW
  284. <enum 5 240_mhz>240 Mhz BW
  285. */
  286. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_OFFSET 0x0000000000000000
  287. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_LSB 3
  288. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MSB 5
  289. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MASK 0x0000000000000038
  290. /* Description TXOP_DURATION_ALL_ONES
  291. When set, TXOP_DURATION of the received frame was set to
  292. all 1s.
  293. <legal all>
  294. */
  295. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_OFFSET 0x0000000000000000
  296. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_LSB 6
  297. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MSB 6
  298. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MASK 0x0000000000000040
  299. /* Description EHT_TRIGGER_RESPONSE
  300. 0: Trigger expects an HE TB PPDU Tx response.
  301. 1: Trigger expects an EHT TB PPDU Tx response.
  302. <legal 0>
  303. */
  304. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_OFFSET 0x0000000000000000
  305. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_LSB 7
  306. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MSB 7
  307. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MASK 0x0000000000000080
  308. /* Description PRE_RSSI_COMB
  309. Combined pre_rssi of all chains. Based on primary channel
  310. RSSI.
  311. RSSI is reported as 8b signed values. Nominally value is
  312. in dB units above or below the noisefloor(minCCApwr).
  313. The resolution can be:
  314. 1dB or 0.5dB. This is statically configured within the PHY
  315. and MAC
  316. In case of 1dB, the Range is:
  317. -128dB to 127dB
  318. In case of 0.5dB, the Range is:
  319. -64dB to 63.5dB
  320. <legal all>
  321. */
  322. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_OFFSET 0x0000000000000000
  323. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_LSB 8
  324. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MSB 15
  325. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MASK 0x000000000000ff00
  326. /* Description RSSI_COMB
  327. Combined rssi of all chains. Based on primary channel RSSI.
  328. RSSI is reported as 8b signed values. Nominally value is
  329. in dB units above or below the noisefloor(minCCApwr).
  330. The resolution can be:
  331. 1dB or 0.5dB. This is statically configured within the PHY
  332. and MAC
  333. In case of 1dB, the Range is:
  334. -128dB to 127dB
  335. In case of 0.5dB, the Range is:
  336. -64dB to 63.5dB
  337. <legal all>
  338. */
  339. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_OFFSET 0x0000000000000000
  340. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_LSB 16
  341. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MSB 23
  342. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MASK 0x0000000000ff0000
  343. /* Description RXPCU_PCIE_L0_REQ_DURATION
  344. RXPCU fills the duration in µs for which it has asserted
  345. the 'L0 request' signal to PCIe when it generates this
  346. TLV. This may be capped by either the max. PCIe L1SS exit
  347. latency (~75 µs) or the max. value possible for this field.
  348. This is filled as zero if ILP is unsupported
  349. PDG uses this to fill Qos_null_only_response_tx.
  350. <legal all>
  351. */
  352. #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_OFFSET 0x0000000000000000
  353. #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_LSB 24
  354. #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MSB 31
  355. #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MASK 0x00000000ff000000
  356. /* Description HE_TRIGGER_UL_PPDU_LENGTH
  357. Field only valid when ax_trigger_source = he_control_based_trigger
  358. Field extracted from the HE control field.
  359. length of the HE trigger-based PPDU response.
  360. <legal all>
  361. */
  362. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_OFFSET 0x0000000000000000
  363. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_LSB 32
  364. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MSB 36
  365. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MASK 0x0000001f00000000
  366. /* Description HE_TRIGGER_RU_ALLOCATION
  367. Field only valid when ax_trigger_source = he_control_based_trigger
  368. Field extracted from the HE control field.
  369. RU allocation for HE based trigger
  370. <legal all>
  371. */
  372. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_OFFSET 0x0000000000000000
  373. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_LSB 37
  374. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MSB 44
  375. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MASK 0x00001fe000000000
  376. /* Description HE_TRIGGER_DL_TX_POWER
  377. Field only valid when ax_trigger_source = he_control_based_trigger
  378. Field extracted from the HE control field.
  379. Downlink TX power
  380. <legal all>
  381. */
  382. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_OFFSET 0x0000000000000000
  383. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_LSB 45
  384. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MSB 49
  385. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MASK 0x0003e00000000000
  386. /* Description HE_TRIGGER_UL_TARGET_RSSI
  387. Field only valid when ax_trigger_source = he_control_based_trigger
  388. Field extracted from the HE control field.
  389. Ul target RSSI
  390. <legal all>
  391. */
  392. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_OFFSET 0x0000000000000000
  393. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_LSB 50
  394. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MSB 54
  395. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MASK 0x007c000000000000
  396. /* Description HE_TRIGGER_UL_MCS
  397. Field only valid when ax_trigger_source = he_control_based_trigger
  398. Field extracted from the HE control field.
  399. UL MCS
  400. <legal all>
  401. */
  402. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_OFFSET 0x0000000000000000
  403. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_LSB 55
  404. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MSB 56
  405. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MASK 0x0180000000000000
  406. /* Description HE_TRIGGER_RESERVED
  407. Field only valid when ax_trigger_source = he_control_based_trigger
  408. Field extracted from the HE control field.
  409. Reserved field
  410. <legal all>
  411. */
  412. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_OFFSET 0x0000000000000000
  413. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_LSB 57
  414. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MSB 57
  415. #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MASK 0x0200000000000000
  416. /* Description BSS_COLOR
  417. The BSS color of the AP
  418. <legal all>
  419. */
  420. #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_OFFSET 0x0000000000000000
  421. #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_LSB 58
  422. #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MSB 63
  423. #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MASK 0xfc00000000000000
  424. /* Description TRIGGER_TYPE
  425. Field only valid when ax_trigger_source = 11ax_trigger_frame
  426. Common trigger info
  427. Indicates what kind of response is required to the received
  428. OFDMA trigger...
  429. Field not really needed by PDG, but is there for debugging
  430. purposes to be put in event.
  431. <enum 0 ax_trigger_basic> TXPCU sends back whatever SW has
  432. programmed...for the basic response..
  433. <enum 1 ax_trigger_brpoll> TXPCU is only allowed to send
  434. CBF frame(s) back
  435. <enum 2 ax_trigger_mu_bar> TXPCU shall first send BA info,
  436. and optionally followed with data. No info from SCH is expected
  437. <enum 3 ax_trigger_mu_rts> TXPCU shall only send CTS back.
  438. No info from SCH is expected
  439. <enum 4 ax_trigger_buffer_size> Also known as the BSRP trigger.
  440. TXPCU sends back whatever SW has programmed...for the basic
  441. response..
  442. <enum 5 ax_trigger_gcr_mu_bar>
  443. <enum 6 ax_trigger_BQRP> Bandwidth Query Report Poll
  444. <enum 7 ax_trigger_NDP_fb_report_poll> NDP feedback report
  445. Poll
  446. <enum 8 ax_tb_ranging_trigger> ranging Trigger Frame of
  447. subvariant indicated by Ranging_Trigger_Subtype
  448. <enum 9 ax_trigger_reserved_9>
  449. <enum 10 ax_trigger_reserved_10>
  450. <enum 11 ax_trigger_reserved_11>
  451. <enum 12 ax_trigger_reserved_12>
  452. <enum 13 ax_trigger_reserved_13>
  453. <enum 14 ax_trigger_reserved_14>
  454. <enum 15 ax_trigger_reserved_15>
  455. <legal all>
  456. */
  457. #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_OFFSET 0x0000000000000008
  458. #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_LSB 0
  459. #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MSB 3
  460. #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MASK 0x000000000000000f
  461. /* Description LSIG_RESPONSE_LENGTH
  462. Field only valid when ax_trigger_source = 11ax_trigger_frame
  463. Common trigger info
  464. Indicates the value of the L-SIG Length field of the HE
  465. trigger-based PPDU that is the response to the Trigger frame
  466. <legal all>
  467. */
  468. #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_OFFSET 0x0000000000000008
  469. #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_LSB 4
  470. #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MSB 15
  471. #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MASK 0x000000000000fff0
  472. /* Description CASCADE_INDICATION
  473. Field only valid when ax_trigger_source = 11ax_trigger_frame
  474. Common trigger info
  475. When set to 1, then a subsequent Trigger frame follows the
  476. current Trigger frame.
  477. <legal all>
  478. */
  479. #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_OFFSET 0x0000000000000008
  480. #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_LSB 16
  481. #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MSB 16
  482. #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MASK 0x0000000000010000
  483. /* Description CARRIER_SENSE
  484. Field only valid when ax_trigger_source = 11ax_trigger_frame
  485. Common trigger info
  486. Need to sense the energy before transmit when CS=1 if allocated
  487. channel is not available do not transmit . If CS=0 no need
  488. to check for idle channel. For region based restrict ignore
  489. this bit and always check channel before transmit.
  490. <legal all>
  491. */
  492. #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_OFFSET 0x0000000000000008
  493. #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_LSB 17
  494. #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MSB 17
  495. #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MASK 0x0000000000020000
  496. /* Description BANDWIDTH
  497. Field only valid when ax_trigger_source = 11ax_trigger_frame
  498. Common trigger info
  499. Indicates the bandwidth in the HE-SIG-A/U-SIG of the HE/EHT
  500. Trigger based PPDU
  501. Also see field Bandwidth_ext that determines 320 MHz bandwidth
  502. for EHT.
  503. <enum 0 HE_SIG_A_BW20> 20 Mhz
  504. <enum 1 HE_SIG_A_BW40> 40 Mhz
  505. <enum 2 HE_SIG_A_BW80> 80 Mhz
  506. <enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz
  507. <legal all>
  508. */
  509. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_OFFSET 0x0000000000000008
  510. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_LSB 18
  511. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MSB 19
  512. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MASK 0x00000000000c0000
  513. /* Description CP_LTF_SIZE
  514. Field only valid when ax_trigger_source = 11ax_trigger_frame
  515. Common trigger info
  516. Indicates the CP and HE-LTF type
  517. <enum 0 Trig_OneX_LTF_1_6CP> 1xLTF + 1.6 us CP
  518. <enum 1 Trig_TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP
  519. <enum 2 Trig_FourX_LTF_3_2CP> 4x LTF + 3.2 µs CP
  520. <legal 0-2>
  521. */
  522. #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_OFFSET 0x0000000000000008
  523. #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_LSB 20
  524. #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MSB 21
  525. #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MASK 0x0000000000300000
  526. /* Description MU_MIMO_LTF_MODE
  527. Field only valid when ax_trigger_source = 11ax_trigger_frame
  528. Common trigger info
  529. MU MIMO LTF mode field indicates the mode in which pilots
  530. are allocated
  531. Must be set to 0 for HE-Ranging NDPs (11az) or Short-NDP
  532. 0: Single-stream pilot
  533. 1: Mask LTF sequence of each spatial stream by a distinct
  534. orthogonal code
  535. <legal all>
  536. */
  537. #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_OFFSET 0x0000000000000008
  538. #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_LSB 22
  539. #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MSB 22
  540. #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MASK 0x0000000000400000
  541. /* Description NUMBER_OF_LTFS
  542. Field only valid when ax_trigger_source = 11ax_trigger_frame
  543. Common trigger info
  544. includes the total number of LTFs the STA must include in
  545. the response TRIG PPDU
  546. <legal all>
  547. */
  548. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_OFFSET 0x0000000000000008
  549. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_LSB 23
  550. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MSB 25
  551. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MASK 0x0000000003800000
  552. /* Description STBC
  553. Field only valid when ax_trigger_source = 11ax_trigger_frame
  554. Common trigger info
  555. indicates whether STBS is used (for all STAs)
  556. It is set to 1 if STBC encoding is used and set to 0 otherwise.
  557. <legal all>
  558. */
  559. #define OFDMA_TRIGGER_DETAILS_STBC_OFFSET 0x0000000000000008
  560. #define OFDMA_TRIGGER_DETAILS_STBC_LSB 26
  561. #define OFDMA_TRIGGER_DETAILS_STBC_MSB 26
  562. #define OFDMA_TRIGGER_DETAILS_STBC_MASK 0x0000000004000000
  563. /* Description LDPC_EXTRA_SYMBOL
  564. Field only valid when ax_trigger_source = 11ax_trigger_frame
  565. Common trigger info
  566. indicates the status of LDPC Extra Symbol. It is set to
  567. 1 when LDPC extra symbol is present and set to 0 otherwise
  568. <legal all>
  569. */
  570. #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_OFFSET 0x0000000000000008
  571. #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_LSB 27
  572. #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MSB 27
  573. #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MASK 0x0000000008000000
  574. /* Description AP_TX_POWER_LSB_PART
  575. Field only valid when ax_trigger_source = 11ax_trigger_frame
  576. Common trigger info
  577. Bits [3:0] of the ap_tx_power
  578. indicates the combined average power per 20 MHz bandwidth
  579. of all transmit antennas used to transmit the trigger frame
  580. at the HE AP. The resolution for the transmit power reported
  581. in the Common Info field is 1dB
  582. Values 0 to 61 maps to -20 dBm to 40 dBm
  583. Other values are reserved.
  584. <legal all>
  585. */
  586. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_OFFSET 0x0000000000000008
  587. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_LSB 28
  588. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MSB 31
  589. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MASK 0x00000000f0000000
  590. /* Description AP_TX_POWER_MSB_PART
  591. Field only valid when ax_trigger_source = 11ax_trigger_frame
  592. Common trigger info
  593. Bits [5:4] of the ap_tx_power
  594. See description above
  595. <legal all>
  596. */
  597. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_OFFSET 0x0000000000000008
  598. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_LSB 32
  599. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MSB 33
  600. #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MASK 0x0000000300000000
  601. /* Description PACKET_EXTENSION_A_FACTOR
  602. Field only valid when ax_trigger_source = 11ax_trigger_frame
  603. Common trigger info
  604. the packet extension duration of the trigger-based PPDU
  605. response with these two bits indicating the "a-factor"
  606. <enum 0 a_factor_4>
  607. <enum 1 a_factor_1>
  608. <enum 2 a_factor_2>
  609. <enum 3 a_factor_3>
  610. <legal all>
  611. */
  612. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_OFFSET 0x0000000000000008
  613. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_LSB 34
  614. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MSB 35
  615. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MASK 0x0000000c00000000
  616. /* Description PACKET_EXTENSION_PE_DISAMBIGUITY
  617. Field only valid when ax_trigger_source = 11ax_trigger_frame
  618. Common trigger info
  619. the packet extension duration of the trigger-based PPDU
  620. response with this bit indicating the PE-Disambiguity
  621. <legal all>
  622. */
  623. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_OFFSET 0x0000000000000008
  624. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_LSB 36
  625. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MSB 36
  626. #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MASK 0x0000001000000000
  627. /* Description SPATIAL_REUSE
  628. Field only valid when ax_trigger_source = 11ax_trigger_frame
  629. Common trigger info
  630. indicates the value of the Spatial Reuse in the HE-SIGA
  631. of the HE_TRIG PPDU transmitted as a response to the Trigger
  632. frame
  633. <legal all>
  634. */
  635. #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_OFFSET 0x0000000000000008
  636. #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_LSB 37
  637. #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MSB 52
  638. #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MASK 0x001fffe000000000
  639. /* Description DOPPLER
  640. Field only valid when ax_trigger_source = 11ax_trigger_frame
  641. Common trigger info
  642. TODO: add description
  643. <legal all>
  644. */
  645. #define OFDMA_TRIGGER_DETAILS_DOPPLER_OFFSET 0x0000000000000008
  646. #define OFDMA_TRIGGER_DETAILS_DOPPLER_LSB 53
  647. #define OFDMA_TRIGGER_DETAILS_DOPPLER_MSB 53
  648. #define OFDMA_TRIGGER_DETAILS_DOPPLER_MASK 0x0020000000000000
  649. /* Description HE_SIGA_RESERVED
  650. Field only valid when ax_trigger_source = 11ax_trigger_frame
  651. Common trigger info
  652. indicates the values of the reserved bits in the HE-SIGA
  653. of the HE_TRIG PPDU transmitted as a response to the Trigger
  654. frame
  655. In case of an EHT AP, bits [23:22] indicate the bits [55:54]
  656. of the Trigger 'Common Info' called 'Special User Info Field
  657. Present' and 'HE/EHT P160.' These are used along with Reserved_18a
  658. to determine the presence of the EHT 'Special User Info'
  659. field and EHT_trigger_response.
  660. */
  661. #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_OFFSET 0x0000000000000008
  662. #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_LSB 54
  663. #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MSB 62
  664. #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MASK 0x7fc0000000000000
  665. /* Description RESERVED_3B
  666. Field only valid when ax_trigger_source = 11ax_trigger_frame
  667. Common trigger info
  668. Reserved bit 63 in the Trigger 'Common Info'
  669. <legal all>
  670. */
  671. #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_OFFSET 0x0000000000000008
  672. #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_LSB 63
  673. #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MSB 63
  674. #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MASK 0x8000000000000000
  675. /* Description AID12
  676. Field only valid when ax_trigger_source = 11ax_trigger_frame
  677. User trigger info
  678. The AID12 subfield of the Per User Info field indicates
  679. the LSB 12 bits of the AID of the STA allocated the RU to
  680. transmit the MPDU(s) in the HE trigger-based PPDU
  681. Note strictly needed, but added here for debugging purposes.
  682. <legal all>
  683. */
  684. #define OFDMA_TRIGGER_DETAILS_AID12_OFFSET 0x0000000000000010
  685. #define OFDMA_TRIGGER_DETAILS_AID12_LSB 0
  686. #define OFDMA_TRIGGER_DETAILS_AID12_MSB 11
  687. #define OFDMA_TRIGGER_DETAILS_AID12_MASK 0x0000000000000fff
  688. /* Description RU_ALLOCATION
  689. Field only valid when ax_trigger_source = 11ax_trigger_frame
  690. User trigger info
  691. trigger based RU definition
  692. If EHT_trigger_response = 0, only lower 8 bits are valid.
  693. If EHT_trigger_response = 1, all 9 bits re valid.
  694. <legal all>
  695. */
  696. #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_OFFSET 0x0000000000000010
  697. #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_LSB 12
  698. #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MSB 20
  699. #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MASK 0x00000000001ff000
  700. /* Description MCS
  701. Field only valid when ax_trigger_source = 11ax_trigger_frame
  702. User trigger info
  703. indicates the MCS of the HE trigger-based PPDU response
  704. of the STA identified by User Identifier field
  705. <legal all>
  706. */
  707. #define OFDMA_TRIGGER_DETAILS_MCS_OFFSET 0x0000000000000010
  708. #define OFDMA_TRIGGER_DETAILS_MCS_LSB 21
  709. #define OFDMA_TRIGGER_DETAILS_MCS_MSB 24
  710. #define OFDMA_TRIGGER_DETAILS_MCS_MASK 0x0000000001e00000
  711. /* Description DCM
  712. Field only valid when ax_trigger_source = 11ax_trigger_frame
  713. User trigger info
  714. indicates dual carrier modulation of the HE trigger-based
  715. PPDU response of the STA identified by User Identifier
  716. subfield. A value of 1 indicates that the HE trigger-based
  717. PPDU response shall use DCM.
  718. Set to 0 to indicate that DCM shall not be used
  719. <legal all>
  720. */
  721. #define OFDMA_TRIGGER_DETAILS_DCM_OFFSET 0x0000000000000010
  722. #define OFDMA_TRIGGER_DETAILS_DCM_LSB 25
  723. #define OFDMA_TRIGGER_DETAILS_DCM_MSB 25
  724. #define OFDMA_TRIGGER_DETAILS_DCM_MASK 0x0000000002000000
  725. /* Description START_SPATIAL_STREAM
  726. Field only valid when ax_trigger_source = 11ax_trigger_frame
  727. User trigger info
  728. Indicates the starting spatial stream, STARTING_SS_NUM,
  729. and is set to STARTING_SS_NUM - 1 of the HE trigger-based
  730. PPDU response of the STA identified by User Identifier
  731. field.
  732. <legal all>
  733. */
  734. #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_OFFSET 0x0000000000000010
  735. #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_LSB 26
  736. #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MSB 28
  737. #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MASK 0x000000001c000000
  738. /* Description NUMBER_OF_SPATIAL_STREAM
  739. Field only valid when ax_trigger_source = 11ax_trigger_frame
  740. User trigger info
  741. indicates the number of spatial streams, NUM_SS and is set
  742. to NUM_SS - 1, of the HE trigger-based PPDU response of
  743. the STA identified by User Identifier field.
  744. In case of EHT_trigger_response=1, RXPCU fills the MSB of
  745. STARTING_SS_NUM in bit 31. If this is set, it will cause
  746. PDG to indicate to PHY > 4-stream transmission resulting
  747. in an abort in EHT R1 chips.
  748. TODO: Cleanup for EHT R2 chips
  749. <legal all>
  750. */
  751. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_OFFSET 0x0000000000000010
  752. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_LSB 29
  753. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MSB 31
  754. #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MASK 0x00000000e0000000
  755. /* Description TARGET_RSSI
  756. Field only valid when ax_trigger_source = 11ax_trigger_frame
  757. User trigger info
  758. Indicates the target received signal power of the the HE
  759. trigger-based PPDU response. The resolution for the Target
  760. RSSI in the Per User Info field is 1dB
  761. Values 0 to 90 maps to -110 dBm to -20 dBm
  762. Other values are reserved.
  763. Value 127 indicates to the STA to transmit an HE triggerbased
  764. PPDU response at its maximum transmit power for the assigned
  765. MCS. If Trigger_type = ax_tb_ranging_trigger and Ranging_Trigger_Subtype
  766. = TF_Sound or TF_Secure_Sound, value 127 indicates to the
  767. STA to transmit an HE TB-ranging NDP response at its maximum
  768. transmit power for MCS 0.
  769. Used for power control algorithm
  770. <legal all>
  771. */
  772. #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_OFFSET 0x0000000000000010
  773. #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_LSB 32
  774. #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MSB 38
  775. #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MASK 0x0000007f00000000
  776. /* Description CODING_TYPE
  777. Field only valid when ax_trigger_source = 11ax_trigger_frame
  778. User trigger info
  779. indicates the code type of the HE trigger-based PPDU response
  780. of the STA identified by User Identifier subfield.
  781. 0: BCC
  782. 1: LDPC
  783. <legal all>
  784. */
  785. #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_OFFSET 0x0000000000000010
  786. #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_LSB 39
  787. #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MSB 39
  788. #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MASK 0x0000008000000000
  789. /* Description MPDU_MU_SPACING_FACTOR
  790. Field only valid when ax_trigger_source = 11ax_trigger_frame
  791. Basic trigger variant user info
  792. <enum 0 Spacing_multiplier_is_1>
  793. <enum 1 Spacing_multiplier_is_2>
  794. <enum 2 Spacing_multiplier_is_4>
  795. <enum 3 Spacing_multiplier_is_8>
  796. <legal all>
  797. */
  798. #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_OFFSET 0x0000000000000010
  799. #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_LSB 40
  800. #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MSB 41
  801. #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MASK 0x0000030000000000
  802. /* Description TID_AGGREGATION_LIMIT
  803. Field only valid when ax_trigger_source = 11ax_trigger_frame
  804. Basic trigger variant user info
  805. indicates the of the number of TIDs that can be aggregated
  806. by a STA in a multi-TID A-MPDU carried in the responding
  807. Trigger-based PPDU
  808. TXPCU will also evaluate this field, when trigger type is
  809. Basic trigger. In that case, when this field is 0, TXPCU
  810. will not send any data from user 0, but will immediately
  811. go to user 1, which has the QoSNULL data frames...
  812. <legal all>
  813. */
  814. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_OFFSET 0x0000000000000010
  815. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_LSB 42
  816. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MSB 44
  817. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MASK 0x00001c0000000000
  818. /* Description RESERVED_5B
  819. <legal 0>
  820. */
  821. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_OFFSET 0x0000000000000010
  822. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_LSB 45
  823. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MSB 45
  824. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MASK 0x0000200000000000
  825. /* Description PREFERED_AC
  826. Field only valid when ax_trigger_source = 11ax_trigger_frame
  827. Basic trigger variant user info
  828. <enum 0 Prefered_ac_is_BK>
  829. <enum 1 Prefered_ac_is_BE>
  830. <enum 2 Prefered_ac_is_VI>
  831. <enum 3 Prefered_ac_is_VO>
  832. <legal all>
  833. */
  834. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_OFFSET 0x0000000000000010
  835. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_LSB 46
  836. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MSB 47
  837. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MASK 0x0000c00000000000
  838. /* Description BAR_CONTROL_ACK_POLICY
  839. Field only valid when ax_trigger_source = 11ax_trigger_frame
  840. MU-BAR trigger variant user info
  841. Bar control field ack policy extracted from the trigger
  842. frame
  843. <legal all>
  844. */
  845. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_OFFSET 0x0000000000000010
  846. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_LSB 48
  847. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MSB 48
  848. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MASK 0x0001000000000000
  849. /* Description BAR_CONTROL_MULTI_TID
  850. Field only valid when ax_trigger_source = 11ax_trigger_frame
  851. MU-BAR trigger variant user info
  852. Bar control field multi_tid extracted from the trigger frame
  853. <legal all>
  854. */
  855. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_OFFSET 0x0000000000000010
  856. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_LSB 49
  857. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MSB 49
  858. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MASK 0x0002000000000000
  859. /* Description BAR_CONTROL_COMPRESSED_BITMAP
  860. Field only valid when ax_trigger_source = 11ax_trigger_frame
  861. MU-BAR trigger variant user info
  862. Bar control field compressed bitmap extracted from the trigger
  863. frame
  864. <legal all>
  865. */
  866. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_OFFSET 0x0000000000000010
  867. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_LSB 50
  868. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MSB 50
  869. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MASK 0x0004000000000000
  870. /* Description BAR_CONTROL_RESERVED
  871. Field only valid when ax_trigger_source = 11ax_trigger_frame
  872. MU-BAR trigger variant user info
  873. Bar control field reserved part extracted from the trigger
  874. frame
  875. <legal all>
  876. */
  877. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_OFFSET 0x0000000000000010
  878. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_LSB 51
  879. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MSB 59
  880. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MASK 0x0ff8000000000000
  881. /* Description BAR_CONTROL_TID_INFO
  882. Field only valid when ax_trigger_source = 11ax_trigger_frame
  883. MU-BAR trigger variant user info
  884. Bar control field tid info extracted from the trigger frame
  885. <legal all>
  886. */
  887. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_OFFSET 0x0000000000000010
  888. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_LSB 60
  889. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MSB 63
  890. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MASK 0xf000000000000000
  891. /* Description NR0_PER_TID_INFO_RESERVED
  892. Field only valid when ax_trigger_source = 11ax_trigger_frame
  893. MU-BAR trigger variant user info
  894. Field only valid if the BAR control type indicates Multi-TID
  895. and BAR_control_TID_info >=0
  896. Per TID info, field "Reserved
  897. Field"
  898. <legal all>
  899. */
  900. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018
  901. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_LSB 0
  902. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MSB 11
  903. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  904. /* Description NR0_PER_TID_INFO_TID_VALUE
  905. Field only valid when ax_trigger_source = 11ax_trigger_frame
  906. MU-BAR trigger variant user info
  907. Field only valid if the BAR control type indicates Multi-TID
  908. and BAR_control_TID_info >=0
  909. Per TID info, field "TID value"
  910. <legal all>
  911. */
  912. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018
  913. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_LSB 12
  914. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MSB 15
  915. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  916. /* Description NR0_START_SEQ_CTRL_FRAG_NUMBER
  917. Field only valid when ax_trigger_source = 11ax_trigger_frame
  918. MU-BAR trigger variant user info
  919. Field only valid if the BAR control type indicates Multi-TID
  920. and BAR_control_TID_info >=0
  921. OR
  922. Field only valid if the BAR control type indicates Basic
  923. Block ACK request
  924. Start Sequence control, subfield fragment
  925. <legal all>
  926. */
  927. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018
  928. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  929. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  930. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  931. /* Description NR0_START_SEQ_CTRL_START_SEQ_NUMBER
  932. Field only valid when ax_trigger_source = 11ax_trigger_frame
  933. MU-BAR trigger variant user info
  934. Field valid if the BAR control type indicates Multi-TID
  935. and BAR_control_TID_info >=0
  936. OR
  937. Field valid if the BAR control type indicates Basic Block
  938. ACK request
  939. Start Sequence control, subfield Start sequence number
  940. <legal all>
  941. */
  942. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018
  943. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  944. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  945. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  946. /* Description NR1_PER_TID_INFO_RESERVED
  947. Field only valid when ax_trigger_source = 11ax_trigger_frame
  948. MU-BAR trigger variant user info
  949. Field only valid if the BAR control type indicates Multi-TID
  950. and BAR_control_TID_info >=1
  951. Per TID info, field "Reserved
  952. Field"
  953. <legal all>
  954. */
  955. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018
  956. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_LSB 32
  957. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MSB 43
  958. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  959. /* Description NR1_PER_TID_INFO_TID_VALUE
  960. Field only valid when ax_trigger_source = 11ax_trigger_frame
  961. MU-BAR trigger variant user info
  962. Field only valid if the BAR control type indicates Multi-TID
  963. and BAR_control_TID_info >=1
  964. Per TID info, field "TID value"
  965. <legal all>
  966. */
  967. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018
  968. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_LSB 44
  969. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MSB 47
  970. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  971. /* Description NR1_START_SEQ_CTRL_FRAG_NUMBER
  972. Field only valid when ax_trigger_source = 11ax_trigger_frame
  973. MU-BAR trigger variant user info
  974. Field only valid if the BAR control type indicates Multi-TID
  975. and BAR_control_TID_info >=1
  976. Start Sequence control, subfield fragment
  977. <legal all>
  978. */
  979. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018
  980. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  981. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  982. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  983. /* Description NR1_START_SEQ_CTRL_START_SEQ_NUMBER
  984. Field only valid when ax_trigger_source = 11ax_trigger_frame
  985. MU-BAR trigger variant user info
  986. Field valid if the BAR control type indicates Multi-TID
  987. and BAR_control_TID_info >=1
  988. Start Sequence control, subfield Start sequence number
  989. <legal all>
  990. */
  991. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018
  992. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  993. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  994. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  995. /* Description NR2_PER_TID_INFO_RESERVED
  996. Field only valid when ax_trigger_source = 11ax_trigger_frame
  997. MU-BAR trigger variant user info
  998. Field only valid if the BAR control type indicates Multi-TID
  999. and BAR_control_TID_info >=2
  1000. Per TID info, field "Reserved
  1001. Field"
  1002. <legal all>
  1003. */
  1004. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020
  1005. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_LSB 0
  1006. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MSB 11
  1007. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1008. /* Description NR2_PER_TID_INFO_TID_VALUE
  1009. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1010. MU-BAR trigger variant user info
  1011. Field only valid if the BAR control type indicates Multi-TID
  1012. and BAR_control_TID_info >=2
  1013. Per TID info, field "TID value"
  1014. <legal all>
  1015. */
  1016. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020
  1017. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_LSB 12
  1018. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MSB 15
  1019. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1020. /* Description NR2_START_SEQ_CTRL_FRAG_NUMBER
  1021. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1022. MU-BAR trigger variant user info
  1023. Field only valid if the BAR control type indicates Multi-TID
  1024. and BAR_control_TID_info >=2
  1025. Start Sequence control, subfield fragment
  1026. <legal all>
  1027. */
  1028. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020
  1029. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1030. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1031. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1032. /* Description NR2_START_SEQ_CTRL_START_SEQ_NUMBER
  1033. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1034. MU-BAR trigger variant user info
  1035. Field valid if the BAR control type indicates Multi-TID
  1036. and BAR_control_TID_info >=2
  1037. Start Sequence control, subfield Start sequence number
  1038. <legal all>
  1039. */
  1040. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020
  1041. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1042. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1043. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1044. /* Description NR3_PER_TID_INFO_RESERVED
  1045. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1046. MU-BAR trigger variant user info
  1047. Field only valid if the BAR control type indicates Multi-TID
  1048. and BAR_control_TID_info >=3
  1049. Per TID info, field "Reserved
  1050. Field"
  1051. <legal all>
  1052. */
  1053. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020
  1054. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_LSB 32
  1055. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MSB 43
  1056. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1057. /* Description NR3_PER_TID_INFO_TID_VALUE
  1058. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1059. MU-BAR trigger variant user info
  1060. Field only valid if the BAR control type indicates Multi-TID
  1061. and BAR_control_TID_info >=3
  1062. Per TID info, field "TID value"
  1063. <legal all>
  1064. */
  1065. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020
  1066. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_LSB 44
  1067. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MSB 47
  1068. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1069. /* Description NR3_START_SEQ_CTRL_FRAG_NUMBER
  1070. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1071. MU-BAR trigger variant user info
  1072. Field only valid if the BAR control type indicates Multi-TID
  1073. and BAR_control_TID_info >=3
  1074. Start Sequence control, subfield fragment
  1075. <legal all>
  1076. */
  1077. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020
  1078. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1079. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1080. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1081. /* Description NR3_START_SEQ_CTRL_START_SEQ_NUMBER
  1082. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1083. MU-BAR trigger variant user info
  1084. Field valid if the BAR control type indicates Multi-TID
  1085. and BAR_control_TID_info >=3
  1086. Start Sequence control, subfield Start sequence number
  1087. <legal all>
  1088. */
  1089. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020
  1090. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1091. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1092. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1093. /* Description NR4_PER_TID_INFO_RESERVED
  1094. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1095. MU-BAR trigger variant user info
  1096. Field only valid if the BAR control type indicates Multi-TID
  1097. and BAR_control_TID_info >=4
  1098. Per TID info, field "Reserved
  1099. Field"
  1100. <legal all>
  1101. */
  1102. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028
  1103. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_LSB 0
  1104. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MSB 11
  1105. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1106. /* Description NR4_PER_TID_INFO_TID_VALUE
  1107. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1108. MU-BAR trigger variant user info
  1109. Field only valid if the BAR control type indicates Multi-TID
  1110. and BAR_control_TID_info >=4
  1111. Per TID info, field "TID value"
  1112. <legal all>
  1113. */
  1114. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028
  1115. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_LSB 12
  1116. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MSB 15
  1117. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1118. /* Description NR4_START_SEQ_CTRL_FRAG_NUMBER
  1119. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1120. MU-BAR trigger variant user info
  1121. Field only valid if the BAR control type indicates Multi-TID
  1122. and BAR_control_TID_info >=4
  1123. Start Sequence control, subfield fragment
  1124. <legal all>
  1125. */
  1126. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028
  1127. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1128. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1129. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1130. /* Description NR4_START_SEQ_CTRL_START_SEQ_NUMBER
  1131. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1132. MU-BAR trigger variant user info
  1133. Field valid if the BAR control type indicates Multi-TID
  1134. and BAR_control_TID_info >=4
  1135. Start Sequence control, subfield Start sequence number
  1136. <legal all>
  1137. */
  1138. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028
  1139. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1140. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1141. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1142. /* Description NR5_PER_TID_INFO_RESERVED
  1143. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1144. MU-BAR trigger variant user info
  1145. Field only valid if the BAR control type indicates Multi-TID
  1146. and BAR_control_TID_info >=5
  1147. Per TID info, field "Reserved
  1148. Field"
  1149. <legal all>
  1150. */
  1151. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028
  1152. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_LSB 32
  1153. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MSB 43
  1154. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1155. /* Description NR5_PER_TID_INFO_TID_VALUE
  1156. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1157. MU-BAR trigger variant user info
  1158. Field only valid if the BAR control type indicates Multi-TID
  1159. and BAR_control_TID_info >=5
  1160. Per TID info, field "TID value"
  1161. <legal all>
  1162. */
  1163. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028
  1164. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_LSB 44
  1165. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MSB 47
  1166. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1167. /* Description NR5_START_SEQ_CTRL_FRAG_NUMBER
  1168. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1169. MU-BAR trigger variant user info
  1170. Field only valid if the BAR control type indicates Multi-TID
  1171. and BAR_control_TID_info >=5
  1172. Start Sequence control, subfield fragment
  1173. <legal all>
  1174. */
  1175. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028
  1176. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1177. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1178. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1179. /* Description NR5_START_SEQ_CTRL_START_SEQ_NUMBER
  1180. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1181. MU-BAR trigger variant user info
  1182. Field valid if the BAR control type indicates Multi-TID
  1183. and BAR_control_TID_info >=5
  1184. Start Sequence control, subfield Start sequence number
  1185. <legal all>
  1186. */
  1187. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028
  1188. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1189. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1190. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1191. /* Description NR6_PER_TID_INFO_RESERVED
  1192. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1193. MU-BAR trigger variant user info
  1194. Field only valid if the BAR control type indicates Multi-TID
  1195. and BAR_control_TID_info >=6
  1196. Per TID info, field "Reserved
  1197. Field"
  1198. <legal all>
  1199. */
  1200. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030
  1201. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_LSB 0
  1202. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MSB 11
  1203. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1204. /* Description NR6_PER_TID_INFO_TID_VALUE
  1205. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1206. MU-BAR trigger variant user info
  1207. Field only valid if the BAR control type indicates Multi-TID
  1208. and BAR_control_TID_info >=6
  1209. Per TID info, field "TID value"
  1210. <legal all>
  1211. */
  1212. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030
  1213. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_LSB 12
  1214. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MSB 15
  1215. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1216. /* Description NR6_START_SEQ_CTRL_FRAG_NUMBER
  1217. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1218. MU-BAR trigger variant user info
  1219. Field only valid if the BAR control type indicates Multi-TID
  1220. and BAR_control_TID_info >=6
  1221. Start Sequence control, subfield fragment
  1222. <legal all>
  1223. */
  1224. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030
  1225. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1226. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1227. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1228. /* Description NR6_START_SEQ_CTRL_START_SEQ_NUMBER
  1229. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1230. MU-BAR trigger variant user info
  1231. Field valid if the BAR control type indicates Multi-TID
  1232. and BAR_control_TID_info >=6
  1233. Start Sequence control, subfield Start sequence number
  1234. <legal all>
  1235. */
  1236. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030
  1237. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1238. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1239. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1240. /* Description NR7_PER_TID_INFO_RESERVED
  1241. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1242. MU-BAR trigger variant user info
  1243. Field only valid if the BAR control type indicates Multi-TID
  1244. and BAR_control_TID_info >=7
  1245. Per TID info, field "Reserved
  1246. Field"
  1247. <legal all>
  1248. */
  1249. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030
  1250. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_LSB 32
  1251. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MSB 43
  1252. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1253. /* Description NR7_PER_TID_INFO_TID_VALUE
  1254. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1255. MU-BAR trigger variant user info
  1256. Field only valid if the BAR control type indicates Multi-TID
  1257. and BAR_control_TID_info >=7
  1258. Per TID info, field "TID value"
  1259. <legal all>
  1260. */
  1261. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030
  1262. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_LSB 44
  1263. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MSB 47
  1264. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1265. /* Description NR7_START_SEQ_CTRL_FRAG_NUMBER
  1266. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1267. MU-BAR trigger variant user info
  1268. Field only valid if the BAR control type indicates Multi-TID
  1269. and BAR_control_TID_info >=7
  1270. Start Sequence control, subfield fragment
  1271. <legal all>
  1272. */
  1273. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030
  1274. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1275. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1276. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1277. /* Description NR7_START_SEQ_CTRL_START_SEQ_NUMBER
  1278. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1279. MU-BAR trigger variant user info
  1280. Field valid if the BAR control type indicates Multi-TID
  1281. and BAR_control_TID_info >=7
  1282. Start Sequence control, subfield Start sequence number
  1283. <legal all>
  1284. */
  1285. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030
  1286. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1287. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1288. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1289. /* Description FB_SEGMENT_RETRANSMISSION_BITMAP
  1290. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1291. Beamforming_report_poll trigger variant user info
  1292. Segment information field extracted from the trigger frame
  1293. <legal all>
  1294. */
  1295. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_OFFSET 0x0000000000000038
  1296. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_LSB 0
  1297. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MSB 7
  1298. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MASK 0x00000000000000ff
  1299. /* Description RESERVED_14A
  1300. <legal 0>
  1301. */
  1302. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_OFFSET 0x0000000000000038
  1303. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_LSB 8
  1304. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MSB 9
  1305. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MASK 0x0000000000000300
  1306. /* Description U_SIG_PUNCTURE_PATTERN_ENCODING
  1307. This field is only valid if the trigger was received in
  1308. an EHT PPDU.
  1309. The 6-bit value used in U-SIG and/or EHT-SIG Common field
  1310. for the puncture pattern
  1311. <legal 0-29>
  1312. */
  1313. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET 0x0000000000000038
  1314. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB 10
  1315. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB 15
  1316. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK 0x000000000000fc00
  1317. /* Description DOT11BE_PUNCTURE_BITMAP
  1318. This field is only valid if the trigger was received in
  1319. an EHT PPDU.
  1320. The bitmap of 20 MHz sub-bands valid in the EHT PPDU reception
  1321. RXPCU gets this from the received U-SIG and/or EHT-SIG via
  1322. PHY microcode.
  1323. <legal all>
  1324. */
  1325. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_OFFSET 0x0000000000000038
  1326. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_LSB 16
  1327. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MSB 31
  1328. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MASK 0x00000000ffff0000
  1329. /* Description RX_CHAIN_MASK
  1330. Description dependent on the setting of field Rx_chain_mask_type.
  1331. The chain mask at the start of the reception of this frame
  1332. when Rx_chain_mask_type is set to 1'b0. In this mode used
  1333. in 11ax TPC calculations for UL OFDMA/MIMO and has to be
  1334. in sync with the rssi_comb value as this is also used by
  1335. the MAC for the TPC calculations.
  1336. The final rx chain mask used for the frame reception when
  1337. Rx_chain_mask_type is set to 1'b1
  1338. each bit is one antenna
  1339. 0: the chain is NOT used
  1340. 1: the chain is used
  1341. Supports up to 8 chains
  1342. <legal all>
  1343. */
  1344. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_OFFSET 0x0000000000000038
  1345. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_LSB 32
  1346. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MSB 39
  1347. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MASK 0x000000ff00000000
  1348. /* Description RX_DURATION_FIELD
  1349. The duration field embedded in the received trigger frame.
  1350. PDG uses this field to calculate what the duration field
  1351. value should be in the response frame.
  1352. This is returned to the TX PCU
  1353. <legal all>
  1354. */
  1355. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_OFFSET 0x0000000000000038
  1356. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_LSB 40
  1357. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MSB 55
  1358. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MASK 0x00ffff0000000000
  1359. /* Description SCRAMBLER_SEED
  1360. This field provides the 7-bit seed for the data scrambler.
  1361. Used in response generation to MU-RTS trigger, where CTS
  1362. needs to have the same scrambler seed as the RTS
  1363. <legal all>
  1364. */
  1365. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_OFFSET 0x0000000000000038
  1366. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_LSB 56
  1367. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MSB 62
  1368. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MASK 0x7f00000000000000
  1369. /* Description RX_CHAIN_MASK_TYPE
  1370. Indicates if the field rx_chain_mask represents the mask
  1371. at start of reception (on which the Rssi_comb value is
  1372. based), or the setting used during the remainder of the
  1373. reception
  1374. 1'b0: rxtd.listen_pri80_mask
  1375. 1'b1: Final receive mask
  1376. <legal all>
  1377. */
  1378. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_OFFSET 0x0000000000000038
  1379. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_LSB 63
  1380. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MSB 63
  1381. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MASK 0x8000000000000000
  1382. /* Description MLO_STA_ID_DETAILS_RX
  1383. Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID'
  1384. from address search.
  1385. */
  1386. /* Description NSTR_MLO_STA_ID
  1387. ID of peer participating in non-STR MLO
  1388. */
  1389. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET 0x0000000000000040
  1390. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB 0
  1391. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB 9
  1392. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK 0x00000000000003ff
  1393. /* Description BLOCK_SELF_ML_SYNC
  1394. Only valid for TX
  1395. When set, this provides an indication to block the peer
  1396. for self-link.
  1397. */
  1398. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET 0x0000000000000040
  1399. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB 10
  1400. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB 10
  1401. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK 0x0000000000000400
  1402. /* Description BLOCK_PARTNER_ML_SYNC
  1403. Only valid for TX
  1404. When set, this provides an indication to block the peer
  1405. for partner links.
  1406. */
  1407. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x0000000000000040
  1408. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB 11
  1409. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB 11
  1410. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK 0x0000000000000800
  1411. /* Description NSTR_MLO_STA_ID_VALID
  1412. All the fields in this TLV are valid only if this bit is
  1413. set.
  1414. */
  1415. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x0000000000000040
  1416. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB 12
  1417. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB 12
  1418. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK 0x0000000000001000
  1419. /* Description RESERVED_0A
  1420. <legal 0>
  1421. */
  1422. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET 0x0000000000000040
  1423. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB 13
  1424. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB 15
  1425. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK 0x000000000000e000
  1426. /* Description NORMALIZED_PRE_RSSI_COMB
  1427. Combined pre_rssi of all chains, but "normalized" back to
  1428. a single chain. This avoids PDG from having to evaluate
  1429. this in combination with receive chain mask and perform
  1430. all kinds of pre-processing algorithms.
  1431. Based on primary channel RSSI.
  1432. RSSI is reported as 8b signed values. Nominally value is
  1433. in dB units above or below the noisefloor(minCCApwr).
  1434. The resolution can be:
  1435. 1dB or 0.5dB. This is statically configured within the PHY
  1436. and MAC
  1437. In case of 1dB, the Range is:
  1438. -128dB to 127dB
  1439. In case of 0.5dB, the Range is:
  1440. -64dB to 63.5dB
  1441. <legal all>
  1442. */
  1443. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_OFFSET 0x0000000000000040
  1444. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_LSB 16
  1445. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MSB 23
  1446. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MASK 0x0000000000ff0000
  1447. /* Description NORMALIZED_RSSI_COMB
  1448. Combined rssi of all chains, but "normalized" back to a
  1449. single chain. This avoids PDG from having to evaluate this
  1450. in combination with receive chain mask and perform all
  1451. kinds of pre-processing algorithms.
  1452. Based on primary channel RSSI.
  1453. RSSI is reported as 8b signed values. Nominally value is
  1454. in dB units above or below the noisefloor(minCCApwr).
  1455. The resolution can be:
  1456. 1dB or 0.5dB. This is statically configured within the PHY
  1457. and MAC
  1458. In case of 1dB, the Range is:
  1459. -128dB to 127dB
  1460. In case of 0.5dB, the Range is:
  1461. -64dB to 63.5dB
  1462. <legal all>
  1463. */
  1464. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_OFFSET 0x0000000000000040
  1465. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_LSB 24
  1466. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MSB 31
  1467. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MASK 0x00000000ff000000
  1468. /* Description SW_PEER_ID
  1469. Used by the PHY to correlated received trigger frames with
  1470. an AP and calculate long term statistics for this AP
  1471. <legal all>
  1472. */
  1473. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_OFFSET 0x0000000000000040
  1474. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_LSB 32
  1475. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MSB 47
  1476. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MASK 0x0000ffff00000000
  1477. /* Description RESPONSE_TX_DURATION
  1478. Field filled in by PDG based on the value that is given
  1479. in field response_Length in the RECEIVED_TRIGGER_INFO TLV
  1480. The amount of time the transmission of the HW response shall
  1481. take (in us)
  1482. <legal all>
  1483. */
  1484. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_OFFSET 0x0000000000000040
  1485. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_LSB 48
  1486. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MSB 63
  1487. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MASK 0xffff000000000000
  1488. /* Description RANGING_TRIGGER_SUBTYPE
  1489. Indicates the Trigger subtype for the current ranging TF
  1490. <enum 0 TF_Poll>
  1491. <enum 1 TF_Sound>
  1492. <enum 2 TF_Secure_Sound>
  1493. <enum 3 TF_Report>
  1494. <legal 0-3>
  1495. */
  1496. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_OFFSET 0x0000000000000048
  1497. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_LSB 0
  1498. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MSB 3
  1499. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MASK 0x000000000000000f
  1500. /* Description TBR_TRIGGER_COMMON_INFO_79_68
  1501. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1502. Ranging trigger variant common info
  1503. Includes fields "Reserved," "Token," "Sounding Dialog Token
  1504. Number"
  1505. If the Trigger Dependent Common Info sub-field is less than
  1506. 16 bits, the upper bits are set to 0.
  1507. <legal all>
  1508. */
  1509. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_OFFSET 0x0000000000000048
  1510. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_LSB 4
  1511. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MSB 15
  1512. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MASK 0x000000000000fff0
  1513. /* Description TBR_TRIGGER_SOUND_RESERVED_20_12
  1514. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1515. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1516. Ranging trigger variant sounding/secure sounding sub-variant
  1517. user info bits [20:12]
  1518. <legal all>
  1519. */
  1520. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_OFFSET 0x0000000000000048
  1521. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_LSB 16
  1522. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MSB 24
  1523. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MASK 0x0000000001ff0000
  1524. /* Description I2R_REP
  1525. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1526. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1527. Ranging trigger variant sounding/secure sounding sub-variant
  1528. user info field "I2R Rep"
  1529. PDG uses this to to populate Nrep in 'MACTX_11AZ_USER_DESC_PER_USER.'
  1530. <legal all>
  1531. */
  1532. #define OFDMA_TRIGGER_DETAILS_I2R_REP_OFFSET 0x0000000000000048
  1533. #define OFDMA_TRIGGER_DETAILS_I2R_REP_LSB 25
  1534. #define OFDMA_TRIGGER_DETAILS_I2R_REP_MSB 27
  1535. #define OFDMA_TRIGGER_DETAILS_I2R_REP_MASK 0x000000000e000000
  1536. /* Description TBR_TRIGGER_SOUND_RESERVED_25_24
  1537. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1538. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1539. Ranging trigger variant sounding/secure sounding sub-variant
  1540. user info bits [25:24]
  1541. <legal all>
  1542. */
  1543. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_OFFSET 0x0000000000000048
  1544. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_LSB 28
  1545. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MSB 29
  1546. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MASK 0x0000000030000000
  1547. /* Description RESERVED_18A
  1548. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1549. User trigger info
  1550. Reserved bit 39 in the Trigger 'User Info'
  1551. In case of an EHT AP, the bit 39 of the Trigger 'User Info'
  1552. called 'PS160' is used along with HE_SIGA_Reserved to determine
  1553. EHT_trigger_response. In case of EHT, 'PS160' is also included
  1554. in the MSB of field RU_allocation.
  1555. <legal all>
  1556. */
  1557. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_OFFSET 0x0000000000000048
  1558. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_LSB 30
  1559. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MSB 30
  1560. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MASK 0x0000000040000000
  1561. /* Description QOS_NULL_ONLY_RESPONSE_TX
  1562. Field filled in by PDG based on Rxpcu_PCIe_L0_req_duration
  1563. If based on the duration for which RXPCU has asserted the
  1564. 'L0 request' signal to PCIe and the PCIe L1SS exit + MAC
  1565. + PHY Tx latencies, PDG determines that null delimiters
  1566. + a programmable minimum MPDU size cannot fit the trigger
  1567. response, PDG sets this bit.
  1568. HWSCH uses this bit to determine whether to select only
  1569. the 'SCHEDULER_CMD' with Trig_resp_qos_null_only set, i.e.
  1570. which transmit only QoS Nulls.
  1571. This is filled as zero if ILP is unsupported or disabled
  1572. <legal all>
  1573. */
  1574. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_OFFSET 0x0000000000000048
  1575. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_LSB 31
  1576. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MSB 31
  1577. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MASK 0x0000000080000000
  1578. /* Description TBR_TRIGGER_SOUND_SAC
  1579. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1580. and Ranging_Trigger_Subtype = TF_Secure_Sound
  1581. Ranging trigger variant secure sounding sub-variant user
  1582. info field "SAC"
  1583. <legal all>
  1584. */
  1585. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_OFFSET 0x0000000000000048
  1586. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_LSB 32
  1587. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MSB 47
  1588. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MASK 0x0000ffff00000000
  1589. /* Description RESERVED_19A
  1590. <legal 0>
  1591. */
  1592. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_OFFSET 0x0000000000000048
  1593. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_LSB 48
  1594. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MSB 55
  1595. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MASK 0x00ff000000000000
  1596. /* Description U_SIG_RESERVED2
  1597. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1598. EHT Special User Info
  1599. Indicates the values of the 5 'disregard' bits [41:37] in
  1600. the U-SIG of the EHT_TRIG PPDU transmitted as a response
  1601. to the Trigger frame
  1602. <legal all>
  1603. */
  1604. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_OFFSET 0x0000000000000048
  1605. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_LSB 56
  1606. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MSB 60
  1607. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MASK 0x1f00000000000000
  1608. /* Description RESERVED_19B
  1609. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1610. EHT Special User Info
  1611. Reserved bits in the Trigger
  1612. <legal all>
  1613. */
  1614. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_OFFSET 0x0000000000000048
  1615. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_LSB 61
  1616. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MSB 63
  1617. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MASK 0xe000000000000000
  1618. /* Description EHT_SPECIAL_AID12
  1619. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1620. EHT Special User Info
  1621. The AID12 subfield of the Special User Info field should
  1622. be '2007' for EHT R1 triggers.
  1623. Note strictly needed, but added here for debugging purposes.
  1624. <legal all>
  1625. */
  1626. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_OFFSET 0x0000000000000050
  1627. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_LSB 0
  1628. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MSB 11
  1629. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MASK 0x0000000000000fff
  1630. /* Description PHY_VERSION
  1631. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1632. EHT Special User Info
  1633. The PHY version should be '0' for EHT R1 triggers.
  1634. Note strictly needed, but added here for debugging purposes.
  1635. <legal all>
  1636. */
  1637. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_OFFSET 0x0000000000000050
  1638. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_LSB 12
  1639. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MSB 14
  1640. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MASK 0x0000000000007000
  1641. /* Description BANDWIDTH_EXT
  1642. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1643. EHT Special User Info
  1644. This along with the field Bandwidth determines the HE-SIG-A/U-SIG
  1645. BW value for the HE/EHT Trigger-based PPDU.
  1646. Bandwidth/Bandwidth_ext:
  1647. 0/0: 20 MHz
  1648. 1/0: 40 MHz
  1649. 2/0: 80 MHz
  1650. 3/1: 160 MHz
  1651. 3/2: 320 MHz channelization 1
  1652. 3/3: 320 MHz channelization 2
  1653. All other cominations are reserved.
  1654. <legal all>
  1655. */
  1656. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_OFFSET 0x0000000000000050
  1657. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_LSB 15
  1658. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MSB 16
  1659. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MASK 0x0000000000018000
  1660. /* Description EHT_SPATIAL_REUSE
  1661. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1662. EHT Special User Info
  1663. Indicates the value of the Spatial Reuse in the U-SIG of
  1664. the EHT_TRIG PPDU transmitted as a response to the Trigger
  1665. frame
  1666. <legal all>
  1667. */
  1668. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_OFFSET 0x0000000000000050
  1669. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_LSB 17
  1670. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MSB 24
  1671. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MASK 0x0000000001fe0000
  1672. /* Description U_SIG_RESERVED1
  1673. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1674. EHT Special User Info
  1675. Indicates the values of the 6 'disregard' bits [25:20] and
  1676. 1 'validate' bit [28] in the U-SIG of the EHT_TRIG PPDU
  1677. transmitted as a response to the Trigger frame
  1678. <legal all>
  1679. */
  1680. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_OFFSET 0x0000000000000050
  1681. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_LSB 25
  1682. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MSB 31
  1683. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MASK 0x00000000fe000000
  1684. /* Description EHT_TRIGGER_SPECIAL_USER_INFO_71_40
  1685. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1686. EHT Trigger Dependent field in Special User Info
  1687. If the Trigger Dependent User Info sub-field is less than
  1688. 32 bits, the upper bits are set to 0.
  1689. <legal all>
  1690. */
  1691. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_OFFSET 0x0000000000000050
  1692. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_LSB 32
  1693. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MSB 63
  1694. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MASK 0xffffffff00000000
  1695. #endif // OFDMA_TRIGGER_DETAILS