ofdma_trigger_details.h 102 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641
  1. /* Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved.
  2. *
  3. * Permission to use, copy, modify, and/or distribute this software for any
  4. * purpose with or without fee is hereby granted, provided that the above
  5. * copyright notice and this permission notice appear in all copies.
  6. *
  7. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  8. * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  9. * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  10. * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  11. * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  12. * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  13. * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  14. */
  15. #ifndef _OFDMA_TRIGGER_DETAILS_H_
  16. #define _OFDMA_TRIGGER_DETAILS_H_
  17. #if !defined(__ASSEMBLER__)
  18. #endif
  19. #include "mlo_sta_id_details.h"
  20. #define NUM_OF_DWORDS_OFDMA_TRIGGER_DETAILS 22
  21. #define NUM_OF_QWORDS_OFDMA_TRIGGER_DETAILS 11
  22. struct ofdma_trigger_details {
  23. #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
  24. uint32_t ax_trigger_source : 1, // [0:0]
  25. rx_trigger_frame_user_source : 2, // [2:1]
  26. received_bandwidth : 3, // [5:3]
  27. txop_duration_all_ones : 1, // [6:6]
  28. eht_trigger_response : 1, // [7:7]
  29. pre_rssi_comb : 8, // [15:8]
  30. rssi_comb : 8, // [23:16]
  31. rxpcu_pcie_l0_req_duration : 8; // [31:24]
  32. uint32_t he_trigger_ul_ppdu_length : 5, // [4:0]
  33. he_trigger_ru_allocation : 8, // [12:5]
  34. he_trigger_dl_tx_power : 5, // [17:13]
  35. he_trigger_ul_target_rssi : 5, // [22:18]
  36. he_trigger_ul_mcs : 2, // [24:23]
  37. he_trigger_reserved : 1, // [25:25]
  38. bss_color : 6; // [31:26]
  39. uint32_t trigger_type : 4, // [3:0]
  40. lsig_response_length : 12, // [15:4]
  41. cascade_indication : 1, // [16:16]
  42. carrier_sense : 1, // [17:17]
  43. bandwidth : 2, // [19:18]
  44. cp_ltf_size : 2, // [21:20]
  45. mu_mimo_ltf_mode : 1, // [22:22]
  46. number_of_ltfs : 3, // [25:23]
  47. stbc : 1, // [26:26]
  48. ldpc_extra_symbol : 1, // [27:27]
  49. ap_tx_power_lsb_part : 4; // [31:28]
  50. uint32_t ap_tx_power_msb_part : 2, // [1:0]
  51. packet_extension_a_factor : 2, // [3:2]
  52. packet_extension_pe_disambiguity : 1, // [4:4]
  53. spatial_reuse : 16, // [20:5]
  54. doppler : 1, // [21:21]
  55. he_siga_reserved : 9, // [30:22]
  56. reserved_3b : 1; // [31:31]
  57. uint32_t aid12 : 12, // [11:0]
  58. ru_allocation : 9, // [20:12]
  59. mcs : 4, // [24:21]
  60. dcm : 1, // [25:25]
  61. start_spatial_stream : 3, // [28:26]
  62. number_of_spatial_stream : 3; // [31:29]
  63. uint32_t target_rssi : 7, // [6:0]
  64. coding_type : 1, // [7:7]
  65. mpdu_mu_spacing_factor : 2, // [9:8]
  66. tid_aggregation_limit : 3, // [12:10]
  67. reserved_5b : 1, // [13:13]
  68. prefered_ac : 2, // [15:14]
  69. bar_control_ack_policy : 1, // [16:16]
  70. bar_control_multi_tid : 1, // [17:17]
  71. bar_control_compressed_bitmap : 1, // [18:18]
  72. bar_control_reserved : 9, // [27:19]
  73. bar_control_tid_info : 4; // [31:28]
  74. uint32_t nr0_per_tid_info_reserved : 12, // [11:0]
  75. nr0_per_tid_info_tid_value : 4, // [15:12]
  76. nr0_start_seq_ctrl_frag_number : 4, // [19:16]
  77. nr0_start_seq_ctrl_start_seq_number : 12; // [31:20]
  78. uint32_t nr1_per_tid_info_reserved : 12, // [11:0]
  79. nr1_per_tid_info_tid_value : 4, // [15:12]
  80. nr1_start_seq_ctrl_frag_number : 4, // [19:16]
  81. nr1_start_seq_ctrl_start_seq_number : 12; // [31:20]
  82. uint32_t nr2_per_tid_info_reserved : 12, // [11:0]
  83. nr2_per_tid_info_tid_value : 4, // [15:12]
  84. nr2_start_seq_ctrl_frag_number : 4, // [19:16]
  85. nr2_start_seq_ctrl_start_seq_number : 12; // [31:20]
  86. uint32_t nr3_per_tid_info_reserved : 12, // [11:0]
  87. nr3_per_tid_info_tid_value : 4, // [15:12]
  88. nr3_start_seq_ctrl_frag_number : 4, // [19:16]
  89. nr3_start_seq_ctrl_start_seq_number : 12; // [31:20]
  90. uint32_t nr4_per_tid_info_reserved : 12, // [11:0]
  91. nr4_per_tid_info_tid_value : 4, // [15:12]
  92. nr4_start_seq_ctrl_frag_number : 4, // [19:16]
  93. nr4_start_seq_ctrl_start_seq_number : 12; // [31:20]
  94. uint32_t nr5_per_tid_info_reserved : 12, // [11:0]
  95. nr5_per_tid_info_tid_value : 4, // [15:12]
  96. nr5_start_seq_ctrl_frag_number : 4, // [19:16]
  97. nr5_start_seq_ctrl_start_seq_number : 12; // [31:20]
  98. uint32_t nr6_per_tid_info_reserved : 12, // [11:0]
  99. nr6_per_tid_info_tid_value : 4, // [15:12]
  100. nr6_start_seq_ctrl_frag_number : 4, // [19:16]
  101. nr6_start_seq_ctrl_start_seq_number : 12; // [31:20]
  102. uint32_t nr7_per_tid_info_reserved : 12, // [11:0]
  103. nr7_per_tid_info_tid_value : 4, // [15:12]
  104. nr7_start_seq_ctrl_frag_number : 4, // [19:16]
  105. nr7_start_seq_ctrl_start_seq_number : 12; // [31:20]
  106. uint32_t fb_segment_retransmission_bitmap : 8, // [7:0]
  107. reserved_14a : 2, // [9:8]
  108. u_sig_puncture_pattern_encoding : 6, // [15:10]
  109. dot11be_puncture_bitmap : 16; // [31:16]
  110. uint32_t rx_chain_mask : 8, // [7:0]
  111. rx_duration_field : 16, // [23:8]
  112. scrambler_seed : 7, // [30:24]
  113. rx_chain_mask_type : 1; // [31:31]
  114. struct mlo_sta_id_details mlo_sta_id_details_rx;
  115. uint16_t normalized_pre_rssi_comb : 8, // [23:16]
  116. normalized_rssi_comb : 8; // [31:24]
  117. uint32_t sw_peer_id : 16, // [15:0]
  118. response_tx_duration : 16; // [31:16]
  119. uint32_t ranging_trigger_subtype : 4, // [3:0]
  120. tbr_trigger_common_info_79_68 : 12, // [15:4]
  121. tbr_trigger_sound_reserved_20_12 : 9, // [24:16]
  122. i2r_rep : 3, // [27:25]
  123. tbr_trigger_sound_reserved_25_24 : 2, // [29:28]
  124. reserved_18a : 1, // [30:30]
  125. qos_null_only_response_tx : 1; // [31:31]
  126. uint32_t tbr_trigger_sound_sac : 16, // [15:0]
  127. reserved_19a : 8, // [23:16]
  128. u_sig_reserved2 : 5, // [28:24]
  129. reserved_19b : 3; // [31:29]
  130. uint32_t eht_special_aid12 : 12, // [11:0]
  131. phy_version : 3, // [14:12]
  132. bandwidth_ext : 2, // [16:15]
  133. eht_spatial_reuse : 8, // [24:17]
  134. u_sig_reserved1 : 7; // [31:25]
  135. uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0]
  136. #else
  137. uint32_t rxpcu_pcie_l0_req_duration : 8, // [31:24]
  138. rssi_comb : 8, // [23:16]
  139. pre_rssi_comb : 8, // [15:8]
  140. eht_trigger_response : 1, // [7:7]
  141. txop_duration_all_ones : 1, // [6:6]
  142. received_bandwidth : 3, // [5:3]
  143. rx_trigger_frame_user_source : 2, // [2:1]
  144. ax_trigger_source : 1; // [0:0]
  145. uint32_t bss_color : 6, // [31:26]
  146. he_trigger_reserved : 1, // [25:25]
  147. he_trigger_ul_mcs : 2, // [24:23]
  148. he_trigger_ul_target_rssi : 5, // [22:18]
  149. he_trigger_dl_tx_power : 5, // [17:13]
  150. he_trigger_ru_allocation : 8, // [12:5]
  151. he_trigger_ul_ppdu_length : 5; // [4:0]
  152. uint32_t ap_tx_power_lsb_part : 4, // [31:28]
  153. ldpc_extra_symbol : 1, // [27:27]
  154. stbc : 1, // [26:26]
  155. number_of_ltfs : 3, // [25:23]
  156. mu_mimo_ltf_mode : 1, // [22:22]
  157. cp_ltf_size : 2, // [21:20]
  158. bandwidth : 2, // [19:18]
  159. carrier_sense : 1, // [17:17]
  160. cascade_indication : 1, // [16:16]
  161. lsig_response_length : 12, // [15:4]
  162. trigger_type : 4; // [3:0]
  163. uint32_t reserved_3b : 1, // [31:31]
  164. he_siga_reserved : 9, // [30:22]
  165. doppler : 1, // [21:21]
  166. spatial_reuse : 16, // [20:5]
  167. packet_extension_pe_disambiguity : 1, // [4:4]
  168. packet_extension_a_factor : 2, // [3:2]
  169. ap_tx_power_msb_part : 2; // [1:0]
  170. uint32_t number_of_spatial_stream : 3, // [31:29]
  171. start_spatial_stream : 3, // [28:26]
  172. dcm : 1, // [25:25]
  173. mcs : 4, // [24:21]
  174. ru_allocation : 9, // [20:12]
  175. aid12 : 12; // [11:0]
  176. uint32_t bar_control_tid_info : 4, // [31:28]
  177. bar_control_reserved : 9, // [27:19]
  178. bar_control_compressed_bitmap : 1, // [18:18]
  179. bar_control_multi_tid : 1, // [17:17]
  180. bar_control_ack_policy : 1, // [16:16]
  181. prefered_ac : 2, // [15:14]
  182. reserved_5b : 1, // [13:13]
  183. tid_aggregation_limit : 3, // [12:10]
  184. mpdu_mu_spacing_factor : 2, // [9:8]
  185. coding_type : 1, // [7:7]
  186. target_rssi : 7; // [6:0]
  187. uint32_t nr0_start_seq_ctrl_start_seq_number : 12, // [31:20]
  188. nr0_start_seq_ctrl_frag_number : 4, // [19:16]
  189. nr0_per_tid_info_tid_value : 4, // [15:12]
  190. nr0_per_tid_info_reserved : 12; // [11:0]
  191. uint32_t nr1_start_seq_ctrl_start_seq_number : 12, // [31:20]
  192. nr1_start_seq_ctrl_frag_number : 4, // [19:16]
  193. nr1_per_tid_info_tid_value : 4, // [15:12]
  194. nr1_per_tid_info_reserved : 12; // [11:0]
  195. uint32_t nr2_start_seq_ctrl_start_seq_number : 12, // [31:20]
  196. nr2_start_seq_ctrl_frag_number : 4, // [19:16]
  197. nr2_per_tid_info_tid_value : 4, // [15:12]
  198. nr2_per_tid_info_reserved : 12; // [11:0]
  199. uint32_t nr3_start_seq_ctrl_start_seq_number : 12, // [31:20]
  200. nr3_start_seq_ctrl_frag_number : 4, // [19:16]
  201. nr3_per_tid_info_tid_value : 4, // [15:12]
  202. nr3_per_tid_info_reserved : 12; // [11:0]
  203. uint32_t nr4_start_seq_ctrl_start_seq_number : 12, // [31:20]
  204. nr4_start_seq_ctrl_frag_number : 4, // [19:16]
  205. nr4_per_tid_info_tid_value : 4, // [15:12]
  206. nr4_per_tid_info_reserved : 12; // [11:0]
  207. uint32_t nr5_start_seq_ctrl_start_seq_number : 12, // [31:20]
  208. nr5_start_seq_ctrl_frag_number : 4, // [19:16]
  209. nr5_per_tid_info_tid_value : 4, // [15:12]
  210. nr5_per_tid_info_reserved : 12; // [11:0]
  211. uint32_t nr6_start_seq_ctrl_start_seq_number : 12, // [31:20]
  212. nr6_start_seq_ctrl_frag_number : 4, // [19:16]
  213. nr6_per_tid_info_tid_value : 4, // [15:12]
  214. nr6_per_tid_info_reserved : 12; // [11:0]
  215. uint32_t nr7_start_seq_ctrl_start_seq_number : 12, // [31:20]
  216. nr7_start_seq_ctrl_frag_number : 4, // [19:16]
  217. nr7_per_tid_info_tid_value : 4, // [15:12]
  218. nr7_per_tid_info_reserved : 12; // [11:0]
  219. uint32_t dot11be_puncture_bitmap : 16, // [31:16]
  220. u_sig_puncture_pattern_encoding : 6, // [15:10]
  221. reserved_14a : 2, // [9:8]
  222. fb_segment_retransmission_bitmap : 8; // [7:0]
  223. uint32_t rx_chain_mask_type : 1, // [31:31]
  224. scrambler_seed : 7, // [30:24]
  225. rx_duration_field : 16, // [23:8]
  226. rx_chain_mask : 8; // [7:0]
  227. uint32_t normalized_rssi_comb : 8, // [31:24]
  228. normalized_pre_rssi_comb : 8; // [23:16]
  229. struct mlo_sta_id_details mlo_sta_id_details_rx;
  230. uint32_t response_tx_duration : 16, // [31:16]
  231. sw_peer_id : 16; // [15:0]
  232. uint32_t qos_null_only_response_tx : 1, // [31:31]
  233. reserved_18a : 1, // [30:30]
  234. tbr_trigger_sound_reserved_25_24 : 2, // [29:28]
  235. i2r_rep : 3, // [27:25]
  236. tbr_trigger_sound_reserved_20_12 : 9, // [24:16]
  237. tbr_trigger_common_info_79_68 : 12, // [15:4]
  238. ranging_trigger_subtype : 4; // [3:0]
  239. uint32_t reserved_19b : 3, // [31:29]
  240. u_sig_reserved2 : 5, // [28:24]
  241. reserved_19a : 8, // [23:16]
  242. tbr_trigger_sound_sac : 16; // [15:0]
  243. uint32_t u_sig_reserved1 : 7, // [31:25]
  244. eht_spatial_reuse : 8, // [24:17]
  245. bandwidth_ext : 2, // [16:15]
  246. phy_version : 3, // [14:12]
  247. eht_special_aid12 : 12; // [11:0]
  248. uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0]
  249. #endif
  250. };
  251. /* Description AX_TRIGGER_SOURCE
  252. <enum 0 11ax_trigger_frame>
  253. <enum 1 he_control_based_trigger>
  254. <legal all>
  255. */
  256. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_OFFSET 0x0000000000000000
  257. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_LSB 0
  258. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MSB 0
  259. #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MASK 0x0000000000000001
  260. /* Description RX_TRIGGER_FRAME_USER_SOURCE
  261. Field not really needed by PDG, but is there for debugging
  262. purposes to be put in event.
  263. <enum 0 dot11ax_direct_trigger_frame>
  264. <enum 1 dot11ax_wildcard_trigger_frame> wildcard trigger
  265. for associated STAs
  266. <enum 2 dot11ax_usassoc_wildcard_trigger_frame> wildcard
  267. trigger for unassociated STAs
  268. <legal 0-2>
  269. */
  270. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_OFFSET 0x0000000000000000
  271. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_LSB 1
  272. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MSB 2
  273. #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MASK 0x0000000000000006
  274. /* Description RECEIVED_BANDWIDTH
  275. Received Packet bandwidth of the trigger frame.
  276. Note that this is not the BW indicated within the trigger
  277. frame itself.
  278. <enum 0 20_mhz>20 Mhz BW
  279. <enum 1 40_mhz>40 Mhz BW
  280. <enum 2 80_mhz>80 Mhz BW
  281. <enum 3 160_mhz>160 Mhz BW
  282. <enum 4 320_mhz>320 Mhz BW
  283. <enum 5 240_mhz>240 Mhz BW
  284. */
  285. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_OFFSET 0x0000000000000000
  286. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_LSB 3
  287. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MSB 5
  288. #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MASK 0x0000000000000038
  289. /* Description TXOP_DURATION_ALL_ONES
  290. When set, TXOP_DURATION of the received frame was set to
  291. all 1s.
  292. <legal all>
  293. */
  294. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_OFFSET 0x0000000000000000
  295. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_LSB 6
  296. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MSB 6
  297. #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MASK 0x0000000000000040
  298. /* Description EHT_TRIGGER_RESPONSE
  299. 0: Trigger expects an HE TB PPDU Tx response.
  300. 1: Trigger expects an EHT TB PPDU Tx response.
  301. <legal 0>
  302. */
  303. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_OFFSET 0x0000000000000000
  304. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_LSB 7
  305. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MSB 7
  306. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MASK 0x0000000000000080
  307. /* Description PRE_RSSI_COMB
  308. Combined pre_rssi of all chains. Based on primary channel
  309. RSSI.
  310. RSSI is reported as 8b signed values. Nominally value is
  311. in dB units above or below the noisefloor(minCCApwr).
  312. The resolution can be:
  313. 1dB or 0.5dB. This is statically configured within the PHY
  314. and MAC
  315. In case of 1dB, the Range is:
  316. -128dB to 127dB
  317. In case of 0.5dB, the Range is:
  318. -64dB to 63.5dB
  319. <legal all>
  320. */
  321. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_OFFSET 0x0000000000000000
  322. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_LSB 8
  323. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MSB 15
  324. #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MASK 0x000000000000ff00
  325. /* Description RSSI_COMB
  326. Combined rssi of all chains. Based on primary channel RSSI.
  327. RSSI is reported as 8b signed values. Nominally value is
  328. in dB units above or below the noisefloor(minCCApwr).
  329. The resolution can be:
  330. 1dB or 0.5dB. This is statically configured within the PHY
  331. and MAC
  332. In case of 1dB, the Range is:
  333. -128dB to 127dB
  334. In case of 0.5dB, the Range is:
  335. -64dB to 63.5dB
  336. <legal all>
  337. */
  338. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_OFFSET 0x0000000000000000
  339. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_LSB 16
  340. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MSB 23
  341. #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MASK 0x0000000000ff0000
  342. /* Description RXPCU_PCIE_L0_REQ_DURATION
  343. RXPCU fills the duration in µs for which it has asserted
  344. the 'L0 request' signal to PCIe when it generates this
  345. TLV. This may be capped by either the max. PCIe L1SS exit
  346. latency (~75 µs) or the max. value possible for this field.
  347. This is filled as zero if ILP is unsupported (e.g. in Maple
  348. and Spruce) or disabled.
  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. Napier AX and Hastings:
  809. TXPCU will also evaluate this field, when trigger type is
  810. Basic trigger. In that case, when this field is 0, TXPCU
  811. will not send any data from user 0, but will immediately
  812. go to user 1, which has the QoSNULL data frames...
  813. TODO: change for Hawkeye 2.0
  814. <legal all>
  815. */
  816. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_OFFSET 0x0000000000000010
  817. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_LSB 42
  818. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MSB 44
  819. #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MASK 0x00001c0000000000
  820. /* Description RESERVED_5B
  821. <legal 0>
  822. */
  823. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_OFFSET 0x0000000000000010
  824. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_LSB 45
  825. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MSB 45
  826. #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MASK 0x0000200000000000
  827. /* Description PREFERED_AC
  828. Field only valid when ax_trigger_source = 11ax_trigger_frame
  829. Basic trigger variant user info
  830. <enum 0 Prefered_ac_is_BK>
  831. <enum 1 Prefered_ac_is_BE>
  832. <enum 2 Prefered_ac_is_VI>
  833. <enum 3 Prefered_ac_is_VO>
  834. <legal all>
  835. */
  836. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_OFFSET 0x0000000000000010
  837. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_LSB 46
  838. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MSB 47
  839. #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MASK 0x0000c00000000000
  840. /* Description BAR_CONTROL_ACK_POLICY
  841. Field only valid when ax_trigger_source = 11ax_trigger_frame
  842. MU-BAR trigger variant user info
  843. Bar control field ack policy extracted from the trigger
  844. frame
  845. <legal all>
  846. */
  847. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_OFFSET 0x0000000000000010
  848. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_LSB 48
  849. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MSB 48
  850. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MASK 0x0001000000000000
  851. /* Description BAR_CONTROL_MULTI_TID
  852. Field only valid when ax_trigger_source = 11ax_trigger_frame
  853. MU-BAR trigger variant user info
  854. Bar control field multi_tid extracted from the trigger frame
  855. <legal all>
  856. */
  857. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_OFFSET 0x0000000000000010
  858. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_LSB 49
  859. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MSB 49
  860. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MASK 0x0002000000000000
  861. /* Description BAR_CONTROL_COMPRESSED_BITMAP
  862. Field only valid when ax_trigger_source = 11ax_trigger_frame
  863. MU-BAR trigger variant user info
  864. Bar control field compressed bitmap extracted from the trigger
  865. frame
  866. <legal all>
  867. */
  868. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_OFFSET 0x0000000000000010
  869. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_LSB 50
  870. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MSB 50
  871. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MASK 0x0004000000000000
  872. /* Description BAR_CONTROL_RESERVED
  873. Field only valid when ax_trigger_source = 11ax_trigger_frame
  874. MU-BAR trigger variant user info
  875. Bar control field reserved part extracted from the trigger
  876. frame
  877. <legal all>
  878. */
  879. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_OFFSET 0x0000000000000010
  880. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_LSB 51
  881. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MSB 59
  882. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MASK 0x0ff8000000000000
  883. /* Description BAR_CONTROL_TID_INFO
  884. Field only valid when ax_trigger_source = 11ax_trigger_frame
  885. MU-BAR trigger variant user info
  886. Bar control field tid info extracted from the trigger frame
  887. <legal all>
  888. */
  889. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_OFFSET 0x0000000000000010
  890. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_LSB 60
  891. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MSB 63
  892. #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MASK 0xf000000000000000
  893. /* Description NR0_PER_TID_INFO_RESERVED
  894. Field only valid when ax_trigger_source = 11ax_trigger_frame
  895. MU-BAR trigger variant user info
  896. Field only valid if the BAR control type indicates Multi-TID
  897. and BAR_control_TID_info >=0
  898. Per TID info, field "Reserved
  899. Field"
  900. <legal all>
  901. */
  902. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018
  903. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_LSB 0
  904. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MSB 11
  905. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  906. /* Description NR0_PER_TID_INFO_TID_VALUE
  907. Field only valid when ax_trigger_source = 11ax_trigger_frame
  908. MU-BAR trigger variant user info
  909. Field only valid if the BAR control type indicates Multi-TID
  910. and BAR_control_TID_info >=0
  911. Per TID info, field "TID value"
  912. <legal all>
  913. */
  914. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018
  915. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_LSB 12
  916. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MSB 15
  917. #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  918. /* Description NR0_START_SEQ_CTRL_FRAG_NUMBER
  919. Field only valid when ax_trigger_source = 11ax_trigger_frame
  920. MU-BAR trigger variant user info
  921. Field only valid if the BAR control type indicates Multi-TID
  922. and BAR_control_TID_info >=0
  923. OR
  924. Field only valid if the BAR control type indicates Basic
  925. Block ACK request
  926. Start Sequence control, subfield fragment
  927. <legal all>
  928. */
  929. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018
  930. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  931. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  932. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  933. /* Description NR0_START_SEQ_CTRL_START_SEQ_NUMBER
  934. Field only valid when ax_trigger_source = 11ax_trigger_frame
  935. MU-BAR trigger variant user info
  936. Field valid if the BAR control type indicates Multi-TID
  937. and BAR_control_TID_info >=0
  938. OR
  939. Field valid if the BAR control type indicates Basic Block
  940. ACK request
  941. Start Sequence control, subfield Start sequence number
  942. <legal all>
  943. */
  944. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018
  945. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  946. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  947. #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  948. /* Description NR1_PER_TID_INFO_RESERVED
  949. Field only valid when ax_trigger_source = 11ax_trigger_frame
  950. MU-BAR trigger variant user info
  951. Field only valid if the BAR control type indicates Multi-TID
  952. and BAR_control_TID_info >=1
  953. Per TID info, field "Reserved
  954. Field"
  955. <legal all>
  956. */
  957. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018
  958. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_LSB 32
  959. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MSB 43
  960. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  961. /* Description NR1_PER_TID_INFO_TID_VALUE
  962. Field only valid when ax_trigger_source = 11ax_trigger_frame
  963. MU-BAR trigger variant user info
  964. Field only valid if the BAR control type indicates Multi-TID
  965. and BAR_control_TID_info >=1
  966. Per TID info, field "TID value"
  967. <legal all>
  968. */
  969. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018
  970. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_LSB 44
  971. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MSB 47
  972. #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  973. /* Description NR1_START_SEQ_CTRL_FRAG_NUMBER
  974. Field only valid when ax_trigger_source = 11ax_trigger_frame
  975. MU-BAR trigger variant user info
  976. Field only valid if the BAR control type indicates Multi-TID
  977. and BAR_control_TID_info >=1
  978. Start Sequence control, subfield fragment
  979. <legal all>
  980. */
  981. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018
  982. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  983. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  984. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  985. /* Description NR1_START_SEQ_CTRL_START_SEQ_NUMBER
  986. Field only valid when ax_trigger_source = 11ax_trigger_frame
  987. MU-BAR trigger variant user info
  988. Field valid if the BAR control type indicates Multi-TID
  989. and BAR_control_TID_info >=1
  990. Start Sequence control, subfield Start sequence number
  991. <legal all>
  992. */
  993. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018
  994. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  995. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  996. #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  997. /* Description NR2_PER_TID_INFO_RESERVED
  998. Field only valid when ax_trigger_source = 11ax_trigger_frame
  999. MU-BAR trigger variant user info
  1000. Field only valid if the BAR control type indicates Multi-TID
  1001. and BAR_control_TID_info >=2
  1002. Per TID info, field "Reserved
  1003. Field"
  1004. <legal all>
  1005. */
  1006. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020
  1007. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_LSB 0
  1008. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MSB 11
  1009. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1010. /* Description NR2_PER_TID_INFO_TID_VALUE
  1011. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1012. MU-BAR trigger variant user info
  1013. Field only valid if the BAR control type indicates Multi-TID
  1014. and BAR_control_TID_info >=2
  1015. Per TID info, field "TID value"
  1016. <legal all>
  1017. */
  1018. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020
  1019. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_LSB 12
  1020. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MSB 15
  1021. #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1022. /* Description NR2_START_SEQ_CTRL_FRAG_NUMBER
  1023. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1024. MU-BAR trigger variant user info
  1025. Field only valid if the BAR control type indicates Multi-TID
  1026. and BAR_control_TID_info >=2
  1027. Start Sequence control, subfield fragment
  1028. <legal all>
  1029. */
  1030. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020
  1031. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1032. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1033. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1034. /* Description NR2_START_SEQ_CTRL_START_SEQ_NUMBER
  1035. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1036. MU-BAR trigger variant user info
  1037. Field valid if the BAR control type indicates Multi-TID
  1038. and BAR_control_TID_info >=2
  1039. Start Sequence control, subfield Start sequence number
  1040. <legal all>
  1041. */
  1042. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020
  1043. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1044. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1045. #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1046. /* Description NR3_PER_TID_INFO_RESERVED
  1047. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1048. MU-BAR trigger variant user info
  1049. Field only valid if the BAR control type indicates Multi-TID
  1050. and BAR_control_TID_info >=3
  1051. Per TID info, field "Reserved
  1052. Field"
  1053. <legal all>
  1054. */
  1055. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020
  1056. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_LSB 32
  1057. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MSB 43
  1058. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1059. /* Description NR3_PER_TID_INFO_TID_VALUE
  1060. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1061. MU-BAR trigger variant user info
  1062. Field only valid if the BAR control type indicates Multi-TID
  1063. and BAR_control_TID_info >=3
  1064. Per TID info, field "TID value"
  1065. <legal all>
  1066. */
  1067. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020
  1068. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_LSB 44
  1069. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MSB 47
  1070. #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1071. /* Description NR3_START_SEQ_CTRL_FRAG_NUMBER
  1072. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1073. MU-BAR trigger variant user info
  1074. Field only valid if the BAR control type indicates Multi-TID
  1075. and BAR_control_TID_info >=3
  1076. Start Sequence control, subfield fragment
  1077. <legal all>
  1078. */
  1079. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020
  1080. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1081. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1082. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1083. /* Description NR3_START_SEQ_CTRL_START_SEQ_NUMBER
  1084. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1085. MU-BAR trigger variant user info
  1086. Field valid if the BAR control type indicates Multi-TID
  1087. and BAR_control_TID_info >=3
  1088. Start Sequence control, subfield Start sequence number
  1089. <legal all>
  1090. */
  1091. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020
  1092. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1093. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1094. #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1095. /* Description NR4_PER_TID_INFO_RESERVED
  1096. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1097. MU-BAR trigger variant user info
  1098. Field only valid if the BAR control type indicates Multi-TID
  1099. and BAR_control_TID_info >=4
  1100. Per TID info, field "Reserved
  1101. Field"
  1102. <legal all>
  1103. */
  1104. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028
  1105. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_LSB 0
  1106. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MSB 11
  1107. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1108. /* Description NR4_PER_TID_INFO_TID_VALUE
  1109. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1110. MU-BAR trigger variant user info
  1111. Field only valid if the BAR control type indicates Multi-TID
  1112. and BAR_control_TID_info >=4
  1113. Per TID info, field "TID value"
  1114. <legal all>
  1115. */
  1116. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028
  1117. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_LSB 12
  1118. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MSB 15
  1119. #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1120. /* Description NR4_START_SEQ_CTRL_FRAG_NUMBER
  1121. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1122. MU-BAR trigger variant user info
  1123. Field only valid if the BAR control type indicates Multi-TID
  1124. and BAR_control_TID_info >=4
  1125. Start Sequence control, subfield fragment
  1126. <legal all>
  1127. */
  1128. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028
  1129. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1130. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1131. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1132. /* Description NR4_START_SEQ_CTRL_START_SEQ_NUMBER
  1133. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1134. MU-BAR trigger variant user info
  1135. Field valid if the BAR control type indicates Multi-TID
  1136. and BAR_control_TID_info >=4
  1137. Start Sequence control, subfield Start sequence number
  1138. <legal all>
  1139. */
  1140. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028
  1141. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1142. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1143. #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1144. /* Description NR5_PER_TID_INFO_RESERVED
  1145. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1146. MU-BAR trigger variant user info
  1147. Field only valid if the BAR control type indicates Multi-TID
  1148. and BAR_control_TID_info >=5
  1149. Per TID info, field "Reserved
  1150. Field"
  1151. <legal all>
  1152. */
  1153. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028
  1154. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_LSB 32
  1155. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MSB 43
  1156. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1157. /* Description NR5_PER_TID_INFO_TID_VALUE
  1158. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1159. MU-BAR trigger variant user info
  1160. Field only valid if the BAR control type indicates Multi-TID
  1161. and BAR_control_TID_info >=5
  1162. Per TID info, field "TID value"
  1163. <legal all>
  1164. */
  1165. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028
  1166. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_LSB 44
  1167. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MSB 47
  1168. #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1169. /* Description NR5_START_SEQ_CTRL_FRAG_NUMBER
  1170. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1171. MU-BAR trigger variant user info
  1172. Field only valid if the BAR control type indicates Multi-TID
  1173. and BAR_control_TID_info >=5
  1174. Start Sequence control, subfield fragment
  1175. <legal all>
  1176. */
  1177. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028
  1178. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1179. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1180. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1181. /* Description NR5_START_SEQ_CTRL_START_SEQ_NUMBER
  1182. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1183. MU-BAR trigger variant user info
  1184. Field valid if the BAR control type indicates Multi-TID
  1185. and BAR_control_TID_info >=5
  1186. Start Sequence control, subfield Start sequence number
  1187. <legal all>
  1188. */
  1189. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028
  1190. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1191. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1192. #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1193. /* Description NR6_PER_TID_INFO_RESERVED
  1194. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1195. MU-BAR trigger variant user info
  1196. Field only valid if the BAR control type indicates Multi-TID
  1197. and BAR_control_TID_info >=6
  1198. Per TID info, field "Reserved
  1199. Field"
  1200. <legal all>
  1201. */
  1202. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030
  1203. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_LSB 0
  1204. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MSB 11
  1205. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff
  1206. /* Description NR6_PER_TID_INFO_TID_VALUE
  1207. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1208. MU-BAR trigger variant user info
  1209. Field only valid if the BAR control type indicates Multi-TID
  1210. and BAR_control_TID_info >=6
  1211. Per TID info, field "TID value"
  1212. <legal all>
  1213. */
  1214. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030
  1215. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_LSB 12
  1216. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MSB 15
  1217. #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000
  1218. /* Description NR6_START_SEQ_CTRL_FRAG_NUMBER
  1219. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1220. MU-BAR trigger variant user info
  1221. Field only valid if the BAR control type indicates Multi-TID
  1222. and BAR_control_TID_info >=6
  1223. Start Sequence control, subfield fragment
  1224. <legal all>
  1225. */
  1226. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030
  1227. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_LSB 16
  1228. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MSB 19
  1229. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000
  1230. /* Description NR6_START_SEQ_CTRL_START_SEQ_NUMBER
  1231. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1232. MU-BAR trigger variant user info
  1233. Field valid if the BAR control type indicates Multi-TID
  1234. and BAR_control_TID_info >=6
  1235. Start Sequence control, subfield Start sequence number
  1236. <legal all>
  1237. */
  1238. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030
  1239. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20
  1240. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31
  1241. #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000
  1242. /* Description NR7_PER_TID_INFO_RESERVED
  1243. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1244. MU-BAR trigger variant user info
  1245. Field only valid if the BAR control type indicates Multi-TID
  1246. and BAR_control_TID_info >=7
  1247. Per TID info, field "Reserved
  1248. Field"
  1249. <legal all>
  1250. */
  1251. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030
  1252. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_LSB 32
  1253. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MSB 43
  1254. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000
  1255. /* Description NR7_PER_TID_INFO_TID_VALUE
  1256. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1257. MU-BAR trigger variant user info
  1258. Field only valid if the BAR control type indicates Multi-TID
  1259. and BAR_control_TID_info >=7
  1260. Per TID info, field "TID value"
  1261. <legal all>
  1262. */
  1263. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030
  1264. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_LSB 44
  1265. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MSB 47
  1266. #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000
  1267. /* Description NR7_START_SEQ_CTRL_FRAG_NUMBER
  1268. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1269. MU-BAR trigger variant user info
  1270. Field only valid if the BAR control type indicates Multi-TID
  1271. and BAR_control_TID_info >=7
  1272. Start Sequence control, subfield fragment
  1273. <legal all>
  1274. */
  1275. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030
  1276. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_LSB 48
  1277. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MSB 51
  1278. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000
  1279. /* Description NR7_START_SEQ_CTRL_START_SEQ_NUMBER
  1280. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1281. MU-BAR trigger variant user info
  1282. Field valid if the BAR control type indicates Multi-TID
  1283. and BAR_control_TID_info >=7
  1284. Start Sequence control, subfield Start sequence number
  1285. <legal all>
  1286. */
  1287. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030
  1288. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52
  1289. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63
  1290. #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000
  1291. /* Description FB_SEGMENT_RETRANSMISSION_BITMAP
  1292. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1293. Beamforming_report_poll trigger variant user info
  1294. Segment information field extracted from the trigger frame
  1295. <legal all>
  1296. */
  1297. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_OFFSET 0x0000000000000038
  1298. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_LSB 0
  1299. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MSB 7
  1300. #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MASK 0x00000000000000ff
  1301. /* Description RESERVED_14A
  1302. <legal 0>
  1303. */
  1304. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_OFFSET 0x0000000000000038
  1305. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_LSB 8
  1306. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MSB 9
  1307. #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MASK 0x0000000000000300
  1308. /* Description U_SIG_PUNCTURE_PATTERN_ENCODING
  1309. This field is only valid if the trigger was received in
  1310. an EHT PPDU.
  1311. The 6-bit value used in U-SIG and/or EHT-SIG Common field
  1312. for the puncture pattern
  1313. <legal 0-29>
  1314. */
  1315. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET 0x0000000000000038
  1316. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB 10
  1317. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB 15
  1318. #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK 0x000000000000fc00
  1319. /* Description DOT11BE_PUNCTURE_BITMAP
  1320. This field is only valid if the trigger was received in
  1321. an EHT PPDU.
  1322. The bitmap of 20 MHz sub-bands valid in the EHT PPDU reception
  1323. RXPCU gets this from the received U-SIG and/or EHT-SIG via
  1324. PHY microcode.
  1325. <legal all>
  1326. */
  1327. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_OFFSET 0x0000000000000038
  1328. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_LSB 16
  1329. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MSB 31
  1330. #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MASK 0x00000000ffff0000
  1331. /* Description RX_CHAIN_MASK
  1332. Description dependent on the setting of field Rx_chain_mask_type.
  1333. The chain mask at the start of the reception of this frame
  1334. when Rx_chain_mask_type is set to 1'b0. In this mode used
  1335. in 11ax TPC calculations for UL OFDMA/MIMO and has to be
  1336. in sync with the rssi_comb value as this is also used by
  1337. the MAC for the TPC calculations.
  1338. The final rx chain mask used for the frame reception when
  1339. Rx_chain_mask_type is set to 1'b1
  1340. each bit is one antenna
  1341. 0: the chain is NOT used
  1342. 1: the chain is used
  1343. Supports up to 8 chains
  1344. <legal all>
  1345. */
  1346. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_OFFSET 0x0000000000000038
  1347. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_LSB 32
  1348. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MSB 39
  1349. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MASK 0x000000ff00000000
  1350. /* Description RX_DURATION_FIELD
  1351. The duration field embedded in the received trigger frame.
  1352. PDG uses this field to calculate what the duration field
  1353. value should be in the response frame.
  1354. This is returned to the TX PCU
  1355. <legal all>
  1356. */
  1357. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_OFFSET 0x0000000000000038
  1358. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_LSB 40
  1359. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MSB 55
  1360. #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MASK 0x00ffff0000000000
  1361. /* Description SCRAMBLER_SEED
  1362. This field provides the 7-bit seed for the data scrambler.
  1363. Used in response generation to MU-RTS trigger, where CTS
  1364. needs to have the same scrambler seed as the RTS
  1365. <legal all>
  1366. */
  1367. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_OFFSET 0x0000000000000038
  1368. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_LSB 56
  1369. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MSB 62
  1370. #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MASK 0x7f00000000000000
  1371. /* Description RX_CHAIN_MASK_TYPE
  1372. Indicates if the field rx_chain_mask represents the mask
  1373. at start of reception (on which the Rssi_comb value is
  1374. based), or the setting used during the remainder of the
  1375. reception
  1376. 1'b0: rxtd.listen_pri80_mask
  1377. 1'b1: Final receive mask
  1378. <legal all>
  1379. */
  1380. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_OFFSET 0x0000000000000038
  1381. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_LSB 63
  1382. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MSB 63
  1383. #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MASK 0x8000000000000000
  1384. /* Description MLO_STA_ID_DETAILS_RX
  1385. Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID'
  1386. from address search.
  1387. See definition of mlo_sta_id_details.
  1388. Hamilton v1 filled 'Bss_color' in bits [5:0] and 'Qos_null_only_response_tx'
  1389. in bit [6] here.
  1390. */
  1391. /* Description NSTR_MLO_STA_ID
  1392. ID of peer participating in non-STR MLO
  1393. */
  1394. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET 0x0000000000000040
  1395. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB 0
  1396. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB 9
  1397. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK 0x00000000000003ff
  1398. /* Description BLOCK_SELF_ML_SYNC
  1399. Only valid for TX
  1400. When set, this provides an indication to block the peer
  1401. for self-link.
  1402. */
  1403. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET 0x0000000000000040
  1404. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB 10
  1405. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB 10
  1406. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK 0x0000000000000400
  1407. /* Description BLOCK_PARTNER_ML_SYNC
  1408. Only valid for TX
  1409. When set, this provides an indication to block the peer
  1410. for partner links.
  1411. */
  1412. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x0000000000000040
  1413. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB 11
  1414. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB 11
  1415. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK 0x0000000000000800
  1416. /* Description NSTR_MLO_STA_ID_VALID
  1417. All the fields in this TLV are valid only if this bit is
  1418. set.
  1419. */
  1420. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x0000000000000040
  1421. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB 12
  1422. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB 12
  1423. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK 0x0000000000001000
  1424. /* Description RESERVED_0A
  1425. <legal 0>
  1426. */
  1427. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET 0x0000000000000040
  1428. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB 13
  1429. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB 15
  1430. #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK 0x000000000000e000
  1431. /* Description NORMALIZED_PRE_RSSI_COMB
  1432. Combined pre_rssi of all chains, but "normalized" back to
  1433. a single chain. This avoids PDG from having to evaluate
  1434. this in combination with receive chain mask and perform
  1435. all kinds of pre-processing algorithms.
  1436. Based on primary channel RSSI.
  1437. RSSI is reported as 8b signed values. Nominally value is
  1438. in dB units above or below the noisefloor(minCCApwr).
  1439. The resolution can be:
  1440. 1dB or 0.5dB. This is statically configured within the PHY
  1441. and MAC
  1442. In case of 1dB, the Range is:
  1443. -128dB to 127dB
  1444. In case of 0.5dB, the Range is:
  1445. -64dB to 63.5dB
  1446. <legal all>
  1447. */
  1448. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_OFFSET 0x0000000000000040
  1449. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_LSB 16
  1450. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MSB 23
  1451. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MASK 0x0000000000ff0000
  1452. /* Description NORMALIZED_RSSI_COMB
  1453. Combined rssi of all chains, but "normalized" back to a
  1454. single chain. This avoids PDG from having to evaluate this
  1455. in combination with receive chain mask and perform all
  1456. kinds of pre-processing algorithms.
  1457. Based on primary channel RSSI.
  1458. RSSI is reported as 8b signed values. Nominally value is
  1459. in dB units above or below the noisefloor(minCCApwr).
  1460. The resolution can be:
  1461. 1dB or 0.5dB. This is statically configured within the PHY
  1462. and MAC
  1463. In case of 1dB, the Range is:
  1464. -128dB to 127dB
  1465. In case of 0.5dB, the Range is:
  1466. -64dB to 63.5dB
  1467. <legal all>
  1468. */
  1469. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_OFFSET 0x0000000000000040
  1470. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_LSB 24
  1471. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MSB 31
  1472. #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MASK 0x00000000ff000000
  1473. /* Description SW_PEER_ID
  1474. Used by the PHY to correlated received trigger frames with
  1475. an AP and calculate long term statistics for this AP
  1476. <legal all>
  1477. */
  1478. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_OFFSET 0x0000000000000040
  1479. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_LSB 32
  1480. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MSB 47
  1481. #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MASK 0x0000ffff00000000
  1482. /* Description RESPONSE_TX_DURATION
  1483. Field filled in by PDG based on the value that is given
  1484. in field response_Length in the RECEIVED_TRIGGER_INFO TLV
  1485. The amount of time the transmission of the HW response shall
  1486. take (in us)
  1487. <legal all>
  1488. */
  1489. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_OFFSET 0x0000000000000040
  1490. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_LSB 48
  1491. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MSB 63
  1492. #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MASK 0xffff000000000000
  1493. /* Description RANGING_TRIGGER_SUBTYPE
  1494. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1495. Indicates the Trigger subtype for the current ranging TF
  1496. <enum 0 TF_Poll>
  1497. <enum 1 TF_Sound>
  1498. <enum 2 TF_Secure_Sound>
  1499. <enum 3 TF_Report>
  1500. Hamilton v1 did not include this (and any subsequent) word.
  1501. <legal 0-3>
  1502. */
  1503. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_OFFSET 0x0000000000000048
  1504. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_LSB 0
  1505. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MSB 3
  1506. #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MASK 0x000000000000000f
  1507. /* Description TBR_TRIGGER_COMMON_INFO_79_68
  1508. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1509. Ranging trigger variant common info
  1510. Includes fields "Reserved," "Token," "Sounding Dialog Token
  1511. Number"
  1512. If the Trigger Dependent Common Info sub-field is less than
  1513. 16 bits, the upper bits are set to 0.
  1514. <legal all>
  1515. */
  1516. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_OFFSET 0x0000000000000048
  1517. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_LSB 4
  1518. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MSB 15
  1519. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MASK 0x000000000000fff0
  1520. /* Description TBR_TRIGGER_SOUND_RESERVED_20_12
  1521. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1522. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1523. Ranging trigger variant sounding/secure sounding sub-variant
  1524. user info bits [20:12]
  1525. <legal all>
  1526. */
  1527. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_OFFSET 0x0000000000000048
  1528. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_LSB 16
  1529. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MSB 24
  1530. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MASK 0x0000000001ff0000
  1531. /* Description I2R_REP
  1532. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1533. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1534. Ranging trigger variant sounding/secure sounding sub-variant
  1535. user info field "I2R Rep"
  1536. PDG uses this to to populate Nrep in 'MACTX_11AZ_USER_DESC_PER_USER.'
  1537. <legal all>
  1538. */
  1539. #define OFDMA_TRIGGER_DETAILS_I2R_REP_OFFSET 0x0000000000000048
  1540. #define OFDMA_TRIGGER_DETAILS_I2R_REP_LSB 25
  1541. #define OFDMA_TRIGGER_DETAILS_I2R_REP_MSB 27
  1542. #define OFDMA_TRIGGER_DETAILS_I2R_REP_MASK 0x000000000e000000
  1543. /* Description TBR_TRIGGER_SOUND_RESERVED_25_24
  1544. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1545. and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
  1546. Ranging trigger variant sounding/secure sounding sub-variant
  1547. user info bits [25:24]
  1548. <legal all>
  1549. */
  1550. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_OFFSET 0x0000000000000048
  1551. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_LSB 28
  1552. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MSB 29
  1553. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MASK 0x0000000030000000
  1554. /* Description RESERVED_18A
  1555. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1556. User trigger info
  1557. Reserved bit 39 in the Trigger 'User Info'
  1558. In case of an EHT AP, the bit 39 of the Trigger 'User Info'
  1559. called 'PS160' is used along with HE_SIGA_Reserved to determine
  1560. EHT_trigger_response. In case of EHT, 'PS160' is also included
  1561. in the MSB of field RU_allocation.
  1562. <legal all>
  1563. */
  1564. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_OFFSET 0x0000000000000048
  1565. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_LSB 30
  1566. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MSB 30
  1567. #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MASK 0x0000000040000000
  1568. /* Description QOS_NULL_ONLY_RESPONSE_TX
  1569. Field filled in by PDG based on Rxpcu_PCIe_L0_req_duration
  1570. If based on the duration for which RXPCU has asserted the
  1571. 'L0 request' signal to PCIe and the PCIe L1SS exit + MAC
  1572. + PHY Tx latencies, PDG determines that null delimiters
  1573. + a programmable minimum MPDU size cannot fit the trigger
  1574. response, PDG sets this bit.
  1575. HWSCH uses this bit to determine whether to select only
  1576. the 'SCHEDULER_CMD' with Trig_resp_qos_null_only set, i.e.
  1577. which transmit only QoS Nulls.
  1578. This is filled as zero if ILP is unsupported (e.g. in Maple
  1579. and Spruce) or disabled.
  1580. <legal all>
  1581. */
  1582. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_OFFSET 0x0000000000000048
  1583. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_LSB 31
  1584. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MSB 31
  1585. #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MASK 0x0000000080000000
  1586. /* Description TBR_TRIGGER_SOUND_SAC
  1587. Field only valid if Trigger_type = ax_tb_ranging_trigger
  1588. and Ranging_Trigger_Subtype = TF_Secure_Sound
  1589. Ranging trigger variant secure sounding sub-variant user
  1590. info field "SAC"
  1591. <legal all>
  1592. */
  1593. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_OFFSET 0x0000000000000048
  1594. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_LSB 32
  1595. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MSB 47
  1596. #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MASK 0x0000ffff00000000
  1597. /* Description RESERVED_19A
  1598. <legal 0>
  1599. */
  1600. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_OFFSET 0x0000000000000048
  1601. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_LSB 48
  1602. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MSB 55
  1603. #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MASK 0x00ff000000000000
  1604. /* Description U_SIG_RESERVED2
  1605. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1606. EHT Special User Info
  1607. Indicates the values of the 5 'disregard' bits [41:37] in
  1608. the U-SIG of the EHT_TRIG PPDU transmitted as a response
  1609. to the Trigger frame
  1610. <legal all>
  1611. */
  1612. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_OFFSET 0x0000000000000048
  1613. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_LSB 56
  1614. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MSB 60
  1615. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MASK 0x1f00000000000000
  1616. /* Description RESERVED_19B
  1617. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1618. EHT Special User Info
  1619. Reserved bits in the Trigger
  1620. <legal all>
  1621. */
  1622. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_OFFSET 0x0000000000000048
  1623. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_LSB 61
  1624. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MSB 63
  1625. #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MASK 0xe000000000000000
  1626. /* Description EHT_SPECIAL_AID12
  1627. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1628. EHT Special User Info
  1629. The AID12 subfield of the Special User Info field should
  1630. be '2007' for EHT R1 triggers.
  1631. Note strictly needed, but added here for debugging purposes.
  1632. <legal all>
  1633. */
  1634. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_OFFSET 0x0000000000000050
  1635. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_LSB 0
  1636. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MSB 11
  1637. #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MASK 0x0000000000000fff
  1638. /* Description PHY_VERSION
  1639. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1640. EHT Special User Info
  1641. The PHY version should be '0' for EHT R1 triggers.
  1642. Note strictly needed, but added here for debugging purposes.
  1643. <legal all>
  1644. */
  1645. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_OFFSET 0x0000000000000050
  1646. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_LSB 12
  1647. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MSB 14
  1648. #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MASK 0x0000000000007000
  1649. /* Description BANDWIDTH_EXT
  1650. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1651. EHT Special User Info
  1652. This along with the field Bandwidth determines the HE-SIG-A/U-SIG
  1653. BW value for the HE/EHT Trigger-based PPDU.
  1654. Bandwidth/Bandwidth_ext:
  1655. 0/0: 20 MHz
  1656. 1/0: 40 MHz
  1657. 2/0: 80 MHz
  1658. 3/1: 160 MHz
  1659. 3/2: 320 MHz channelization 1
  1660. 3/3: 320 MHz channelization 2
  1661. All other cominations are reserved.
  1662. <legal all>
  1663. */
  1664. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_OFFSET 0x0000000000000050
  1665. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_LSB 15
  1666. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MSB 16
  1667. #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MASK 0x0000000000018000
  1668. /* Description EHT_SPATIAL_REUSE
  1669. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1670. EHT Special User Info
  1671. Indicates the value of the Spatial Reuse in the U-SIG of
  1672. the EHT_TRIG PPDU transmitted as a response to the Trigger
  1673. frame
  1674. <legal all>
  1675. */
  1676. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_OFFSET 0x0000000000000050
  1677. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_LSB 17
  1678. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MSB 24
  1679. #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MASK 0x0000000001fe0000
  1680. /* Description U_SIG_RESERVED1
  1681. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1682. EHT Special User Info
  1683. Indicates the values of the 6 'disregard' bits [25:20] and
  1684. 1 'validate' bit [28] in the U-SIG of the EHT_TRIG PPDU
  1685. transmitted as a response to the Trigger frame
  1686. <legal all>
  1687. */
  1688. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_OFFSET 0x0000000000000050
  1689. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_LSB 25
  1690. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MSB 31
  1691. #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MASK 0x00000000fe000000
  1692. /* Description EHT_TRIGGER_SPECIAL_USER_INFO_71_40
  1693. Field only valid when ax_trigger_source = 11ax_trigger_frame
  1694. EHT Trigger Dependent field in Special User Info
  1695. If the Trigger Dependent User Info sub-field is less than
  1696. 32 bits, the upper bits are set to 0.
  1697. <legal all>
  1698. */
  1699. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_OFFSET 0x0000000000000050
  1700. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_LSB 32
  1701. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MSB 63
  1702. #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MASK 0xffffffff00000000
  1703. #endif // OFDMA_TRIGGER_DETAILS