phyrx_pkt_end_info.h 67 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903
  1. /*
  2. * Copyright (c) 2020 The Linux Foundation. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for
  5. * any purpose with or without fee is hereby granted, provided that the
  6. * above copyright notice and this permission notice appear in all
  7. * copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  10. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  11. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  12. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  13. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  14. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  15. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  16. * PERFORMANCE OF THIS SOFTWARE.
  17. */
  18. //
  19. // DO NOT EDIT! This file is automatically generated
  20. // These definitions are tied to a particular hardware layout
  21. #ifndef _PHYRX_PKT_END_INFO_H_
  22. #define _PHYRX_PKT_END_INFO_H_
  23. #if !defined(__ASSEMBLER__)
  24. #endif
  25. #include "rx_location_info.h"
  26. #include "rx_timing_offset_info.h"
  27. #include "receive_rssi_info.h"
  28. // ################ START SUMMARY #################
  29. //
  30. // Dword Fields
  31. // 0 phy_internal_nap[0], location_info_valid[1], timing_info_valid[2], rssi_info_valid[3], rx_frame_correction_needed[4], frameless_frame_received[5], reserved_0a[11:6], dl_ofdma_info_valid[12], dl_ofdma_ru_start_index[19:13], dl_ofdma_ru_width[26:20], reserved_0b[31:27]
  32. // 1 phy_timestamp_1_lower_32[31:0]
  33. // 2 phy_timestamp_1_upper_32[31:0]
  34. // 3 phy_timestamp_2_lower_32[31:0]
  35. // 4 phy_timestamp_2_upper_32[31:0]
  36. // 5-13 struct rx_location_info rx_location_info_details;
  37. // 14 struct rx_timing_offset_info rx_timing_offset_info_details;
  38. // 15-30 struct receive_rssi_info post_rssi_info_details;
  39. // 31 phy_sw_status_31_0[31:0]
  40. // 32 phy_sw_status_63_32[31:0]
  41. //
  42. // ################ END SUMMARY #################
  43. #define NUM_OF_DWORDS_PHYRX_PKT_END_INFO 33
  44. struct phyrx_pkt_end_info {
  45. uint32_t phy_internal_nap : 1, //[0]
  46. location_info_valid : 1, //[1]
  47. timing_info_valid : 1, //[2]
  48. rssi_info_valid : 1, //[3]
  49. rx_frame_correction_needed : 1, //[4]
  50. frameless_frame_received : 1, //[5]
  51. reserved_0a : 6, //[11:6]
  52. dl_ofdma_info_valid : 1, //[12]
  53. dl_ofdma_ru_start_index : 7, //[19:13]
  54. dl_ofdma_ru_width : 7, //[26:20]
  55. reserved_0b : 5; //[31:27]
  56. uint32_t phy_timestamp_1_lower_32 : 32; //[31:0]
  57. uint32_t phy_timestamp_1_upper_32 : 32; //[31:0]
  58. uint32_t phy_timestamp_2_lower_32 : 32; //[31:0]
  59. uint32_t phy_timestamp_2_upper_32 : 32; //[31:0]
  60. struct rx_location_info rx_location_info_details;
  61. struct rx_timing_offset_info rx_timing_offset_info_details;
  62. struct receive_rssi_info post_rssi_info_details;
  63. uint32_t phy_sw_status_31_0 : 32; //[31:0]
  64. uint32_t phy_sw_status_63_32 : 32; //[31:0]
  65. };
  66. /*
  67. phy_internal_nap
  68. When set, PHY RX entered an internal NAP state, as PHY
  69. determined that this reception was not destined to this
  70. device
  71. location_info_valid
  72. Indicates that the RX_LOCATION_INFO structure later on
  73. in the TLV contains valid info
  74. timing_info_valid
  75. Indicates that the RX_TIMING_OFFSET_INFO structure later
  76. on in the TLV contains valid info
  77. rssi_info_valid
  78. Indicates that the RECEIVE_RSSI_INFO structure later on
  79. in the TLV contains valid info
  80. rx_frame_correction_needed
  81. When clear, no action is needed in the MAC.
  82. When set, the falling edge of the rx_frame happened 4us
  83. too late. MAC will need to compensate for this delay in
  84. order to maintain proper SIFS timing and/or not to get
  85. de-slotted.
  86. PHY uses this for very short 11a frames.
  87. When set, PHY will have passed this TLV to the MAC up to
  88. 8 us into the 'real SIFS' time, and thus within 4us from the
  89. falling edge of the rx_frame.
  90. <legal all>
  91. frameless_frame_received
  92. When set, PHY has received the 'frameless frame' . Can
  93. be used in the 'MU-RTS -CTS exchange where CTS reception can
  94. be problematic.
  95. <legal all>
  96. reserved_0a
  97. <legal 0>
  98. dl_ofdma_info_valid
  99. When set, the following DL_ofdma_... fields are valid.
  100. It provides the MAC insight into which RU was allocated
  101. to this device.
  102. <legal all>
  103. dl_ofdma_ru_start_index
  104. RU index number to which User is assigned
  105. RU numbering is over the entire BW, starting from 0 and
  106. in increasing frequency order and not primary-secondary
  107. order
  108. <legal 0-73>
  109. dl_ofdma_ru_width
  110. The size of the RU for this user.
  111. In units of 1 (26 tone) RU
  112. <legal 1-74>
  113. reserved_0b
  114. <legal 0>
  115. phy_timestamp_1_lower_32
  116. TODO PHY: cleanup descriptionThe PHY timestamp in the
  117. AMPI of the first rising edge of rx_clear_pri after
  118. TX_PHY_DESC. . This field should set to 0 by the PHY and
  119. should be updated by the AMPI before being forwarded to the
  120. rest of the MAC. This field indicates the lower 32 bits of
  121. the timestamp
  122. phy_timestamp_1_upper_32
  123. TODO PHY: cleanup description
  124. The PHY timestamp in the AMPI of the first rising edge
  125. of rx_clear_pri after TX_PHY_DESC. This field should set to
  126. 0 by the PHY and should be updated by the AMPI before being
  127. forwarded to the rest of the MAC. This field indicates the
  128. upper 32 bits of the timestamp
  129. phy_timestamp_2_lower_32
  130. TODO PHY: cleanup description
  131. The PHY timestamp in the AMPI of the rising edge of
  132. rx_clear_pri after RX_RSSI_LEGACY. This field should set to
  133. 0 by the PHY and should be updated by the AMPI before being
  134. forwarded to the rest of the MAC. This field indicates the
  135. lower 32 bits of the timestamp
  136. phy_timestamp_2_upper_32
  137. TODO PHY: cleanup description
  138. The PHY timestamp in the AMPI of the rising edge of
  139. rx_clear_pri after RX_RSSI_LEGACY. This field should set to
  140. 0 by the PHY and should be updated by the AMPI before being
  141. forwarded to the rest of the MAC. This field indicates the
  142. upper 32 bits of the timestamp
  143. struct rx_location_info rx_location_info_details
  144. Overview of location related info
  145. struct rx_timing_offset_info rx_timing_offset_info_details
  146. Overview of timing offset related info
  147. struct receive_rssi_info post_rssi_info_details
  148. Overview of the post-RSSI values.
  149. phy_sw_status_31_0
  150. Some PHY micro code status that can be put in here.
  151. Details of definition within SW specification
  152. This field can be used for debugging, FW - SW message
  153. exchange, etc.
  154. It could for example be a pointer to a DDR memory
  155. location where PHY FW put some debug info.
  156. <legal all>
  157. phy_sw_status_63_32
  158. Some PHY micro code status that can be put in here.
  159. Details of definition within SW specification
  160. This field can be used for debugging, FW - SW message
  161. exchange, etc.
  162. It could for example be a pointer to a DDR memory
  163. location where PHY FW put some debug info.
  164. <legal all>
  165. */
  166. /* Description PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP
  167. When set, PHY RX entered an internal NAP state, as PHY
  168. determined that this reception was not destined to this
  169. device
  170. */
  171. #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_OFFSET 0x00000000
  172. #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_LSB 0
  173. #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_MASK 0x00000001
  174. /* Description PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID
  175. Indicates that the RX_LOCATION_INFO structure later on
  176. in the TLV contains valid info
  177. */
  178. #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_OFFSET 0x00000000
  179. #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_LSB 1
  180. #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_MASK 0x00000002
  181. /* Description PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID
  182. Indicates that the RX_TIMING_OFFSET_INFO structure later
  183. on in the TLV contains valid info
  184. */
  185. #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_OFFSET 0x00000000
  186. #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_LSB 2
  187. #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_MASK 0x00000004
  188. /* Description PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID
  189. Indicates that the RECEIVE_RSSI_INFO structure later on
  190. in the TLV contains valid info
  191. */
  192. #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_OFFSET 0x00000000
  193. #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_LSB 3
  194. #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_MASK 0x00000008
  195. /* Description PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED
  196. When clear, no action is needed in the MAC.
  197. When set, the falling edge of the rx_frame happened 4us
  198. too late. MAC will need to compensate for this delay in
  199. order to maintain proper SIFS timing and/or not to get
  200. de-slotted.
  201. PHY uses this for very short 11a frames.
  202. When set, PHY will have passed this TLV to the MAC up to
  203. 8 us into the 'real SIFS' time, and thus within 4us from the
  204. falling edge of the rx_frame.
  205. <legal all>
  206. */
  207. #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_OFFSET 0x00000000
  208. #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_LSB 4
  209. #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_MASK 0x00000010
  210. /* Description PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED
  211. When set, PHY has received the 'frameless frame' . Can
  212. be used in the 'MU-RTS -CTS exchange where CTS reception can
  213. be problematic.
  214. <legal all>
  215. */
  216. #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_OFFSET 0x00000000
  217. #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_LSB 5
  218. #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_MASK 0x00000020
  219. /* Description PHYRX_PKT_END_INFO_0_RESERVED_0A
  220. <legal 0>
  221. */
  222. #define PHYRX_PKT_END_INFO_0_RESERVED_0A_OFFSET 0x00000000
  223. #define PHYRX_PKT_END_INFO_0_RESERVED_0A_LSB 6
  224. #define PHYRX_PKT_END_INFO_0_RESERVED_0A_MASK 0x00000fc0
  225. /* Description PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID
  226. When set, the following DL_ofdma_... fields are valid.
  227. It provides the MAC insight into which RU was allocated
  228. to this device.
  229. <legal all>
  230. */
  231. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_OFFSET 0x00000000
  232. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_LSB 12
  233. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_MASK 0x00001000
  234. /* Description PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX
  235. RU index number to which User is assigned
  236. RU numbering is over the entire BW, starting from 0 and
  237. in increasing frequency order and not primary-secondary
  238. order
  239. <legal 0-73>
  240. */
  241. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_OFFSET 0x00000000
  242. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_LSB 13
  243. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_MASK 0x000fe000
  244. /* Description PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH
  245. The size of the RU for this user.
  246. In units of 1 (26 tone) RU
  247. <legal 1-74>
  248. */
  249. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_OFFSET 0x00000000
  250. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_LSB 20
  251. #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_MASK 0x07f00000
  252. /* Description PHYRX_PKT_END_INFO_0_RESERVED_0B
  253. <legal 0>
  254. */
  255. #define PHYRX_PKT_END_INFO_0_RESERVED_0B_OFFSET 0x00000000
  256. #define PHYRX_PKT_END_INFO_0_RESERVED_0B_LSB 27
  257. #define PHYRX_PKT_END_INFO_0_RESERVED_0B_MASK 0xf8000000
  258. /* Description PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32
  259. TODO PHY: cleanup descriptionThe PHY timestamp in the
  260. AMPI of the first rising edge of rx_clear_pri after
  261. TX_PHY_DESC. . This field should set to 0 by the PHY and
  262. should be updated by the AMPI before being forwarded to the
  263. rest of the MAC. This field indicates the lower 32 bits of
  264. the timestamp
  265. */
  266. #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_OFFSET 0x00000004
  267. #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_LSB 0
  268. #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_MASK 0xffffffff
  269. /* Description PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32
  270. TODO PHY: cleanup description
  271. The PHY timestamp in the AMPI of the first rising edge
  272. of rx_clear_pri after TX_PHY_DESC. This field should set to
  273. 0 by the PHY and should be updated by the AMPI before being
  274. forwarded to the rest of the MAC. This field indicates the
  275. upper 32 bits of the timestamp
  276. */
  277. #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_OFFSET 0x00000008
  278. #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_LSB 0
  279. #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_MASK 0xffffffff
  280. /* Description PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32
  281. TODO PHY: cleanup description
  282. The PHY timestamp in the AMPI of the rising edge of
  283. rx_clear_pri after RX_RSSI_LEGACY. This field should set to
  284. 0 by the PHY and should be updated by the AMPI before being
  285. forwarded to the rest of the MAC. This field indicates the
  286. lower 32 bits of the timestamp
  287. */
  288. #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_OFFSET 0x0000000c
  289. #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_LSB 0
  290. #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_MASK 0xffffffff
  291. /* Description PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32
  292. TODO PHY: cleanup description
  293. The PHY timestamp in the AMPI of the rising edge of
  294. rx_clear_pri after RX_RSSI_LEGACY. This field should set to
  295. 0 by the PHY and should be updated by the AMPI before being
  296. forwarded to the rest of the MAC. This field indicates the
  297. upper 32 bits of the timestamp
  298. */
  299. #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_OFFSET 0x00000010
  300. #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_LSB 0
  301. #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_MASK 0xffffffff
  302. /* EXTERNAL REFERENCE : struct rx_location_info rx_location_info_details */
  303. /* Description PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY
  304. For 20/40/80, this field shows the RTT first arrival
  305. correction value computed from L-LTF on the first selected
  306. Rx chain
  307. For 80+80, this field shows the RTT first arrival
  308. correction value computed from L-LTF on pri80 on the
  309. selected pri80 Rx chain
  310. 16 bits, signed 12.4. 12 bits integer to cover -6.4us to
  311. 6.4us, and 4 bits fraction to cover pri80 and 32x FAC
  312. interpolation
  313. clock unit is 320MHz
  314. <legal all>
  315. */
  316. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_OFFSET 0x00000014
  317. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_LSB 0
  318. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_MASK 0x0000ffff
  319. /* Description PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80
  320. For 20/40/80, this field shows the RTT first arrival
  321. correction value computed from L-LTF on the second selected
  322. Rx chain
  323. For 80+80, this field shows the RTT first arrival
  324. correction value computed from L-LTF on ext80 on the
  325. selected ext80 Rx chain
  326. 16 bits, signed 12.4. 12 bits integer to cover -6.4us to
  327. 6.4us, and 4 bits fraction to cover ext80 and 32x FAC
  328. interpolation
  329. clock unit is 320MHz
  330. <legal all>
  331. */
  332. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_OFFSET 0x00000014
  333. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_LSB 16
  334. #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_MASK 0xffff0000
  335. /* Description PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT
  336. For 20/40/80, this field shows the RTT first arrival
  337. correction value computed from (V)HT/HE-LTF on the first
  338. selected Rx chain
  339. For 80+80, this field shows the RTT first arrival
  340. correction value computed from (V)HT/HE-LTF on pri80 on the
  341. selected pri80 Rx chain
  342. 16 bits, signed 12.4. 12 bits integer to cover -6.4us to
  343. 6.4us, and 4 bits fraction to cover pri80 and 32x FAC
  344. interpolation
  345. clock unit is 320MHz
  346. <legal all>
  347. */
  348. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_OFFSET 0x00000018
  349. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_LSB 0
  350. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_MASK 0x0000ffff
  351. /* Description PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80
  352. For 20/40/80, this field shows the RTT first arrival
  353. correction value computed from (V)HT/HE-LTF on the second
  354. selected Rx chain
  355. For 80+80, this field shows the RTT first arrival
  356. correction value computed from (V)HT/HE-LTF on ext80 on the
  357. selected ext80 Rx chain
  358. 16 bits, signed 12.4. 12 bits integer to cover -6.4us to
  359. 6.4us, and 4 bits fraction to cover ext80 and 32x FAC
  360. interpolation
  361. clock unit is 320MHz
  362. <legal all>
  363. */
  364. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_OFFSET 0x00000018
  365. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_LSB 16
  366. #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_MASK 0xffff0000
  367. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS
  368. Status of rtt_fac_legacy
  369. <enum 0 location_fac_legacy_status_not_valid>
  370. <enum 1 location_fac_legacy_status_valid>
  371. <legal all>
  372. */
  373. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_OFFSET 0x0000001c
  374. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_LSB 0
  375. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_MASK 0x00000001
  376. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS
  377. Status of rtt_fac_legacy_ext80
  378. <enum 0 location_fac_legacy_ext80_status_not_valid>
  379. <enum 1 location_fac_legacy_ext80_status_valid>
  380. <legal all>
  381. */
  382. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_OFFSET 0x0000001c
  383. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_LSB 1
  384. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_MASK 0x00000002
  385. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS
  386. Status of rtt_fac_vht
  387. <enum 0 location_fac_vht_status_not_valid>
  388. <enum 1 location_fac_vht_status_valid>
  389. <legal all>
  390. */
  391. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_OFFSET 0x0000001c
  392. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_LSB 2
  393. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_MASK 0x00000004
  394. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS
  395. Status of rtt_fac_vht_ext80
  396. <enum 0 location_fac_vht_ext80_status_not_valid>
  397. <enum 1 location_fac_vht_ext80_status_valid>
  398. <legal all>
  399. */
  400. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_OFFSET 0x0000001c
  401. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_LSB 3
  402. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_MASK 0x00000008
  403. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS
  404. To support fine SIFS adjustment, need to provide FAC
  405. value @ integer number of 320 MHz clock cycles to MAC.  It
  406. is from L-LTF if it is a Legacy packet and from (V)HT/HE-LTF
  407. if it is a (V)HT/HE packet
  408. 12 bits, signed, no fractional part
  409. <legal all>
  410. */
  411. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_OFFSET 0x0000001c
  412. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_LSB 4
  413. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_MASK 0x0000fff0
  414. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS
  415. Status of rtt_fac_sifs
  416. 0: not valid
  417. 1: valid and from L-LTF
  418. 2: valid and from (V)HT/HE-LTF
  419. 3: reserved
  420. <legal 0-2>
  421. */
  422. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_OFFSET 0x0000001c
  423. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_LSB 16
  424. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_MASK 0x00030000
  425. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS
  426. Status of channel frequency response dump
  427. <enum 0 location_CFR_dump_not_valid>
  428. <enum 1 location_CFR_dump_valid>
  429. <legal all>
  430. */
  431. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_OFFSET 0x0000001c
  432. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_LSB 18
  433. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_MASK 0x00040000
  434. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS
  435. Status of channel impulse response dump
  436. <enum 0 location_CIR_dump_not_valid>
  437. <enum 1 location_CIR_dump_valid>
  438. <legal all>
  439. */
  440. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_OFFSET 0x0000001c
  441. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_LSB 19
  442. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_MASK 0x00080000
  443. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE
  444. Channel dump size.  It shows how many tones in CFR in
  445. one chain, for example, it will show 52 for Legacy20 and 484
  446. for VHT160
  447. <legal all>
  448. */
  449. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_OFFSET 0x0000001c
  450. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_LSB 20
  451. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_MASK 0x7ff00000
  452. /* Description PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE
  453. Indicator showing if HW IFFT mode or SW IFFT mode
  454. <enum 0 location_sw_ifft_mode>
  455. <enum 1 location_hw_ifft_mode>
  456. <legal all>
  457. */
  458. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_OFFSET 0x0000001c
  459. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_LSB 31
  460. #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_MASK 0x80000000
  461. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS
  462. Indicate if BTCF is used to capture the timestamps
  463. <enum 0 location_not_BTCF_based_ts>
  464. <enum 1 location_BTCF_based_ts>
  465. <legal all>
  466. */
  467. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_OFFSET 0x00000020
  468. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_LSB 0
  469. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_MASK 0x00000001
  470. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE
  471. Indicate preamble type
  472. <enum 0 location_preamble_type_legacy>
  473. <enum 1 location_preamble_type_ht>
  474. <enum 2 location_preamble_type_vht>
  475. <enum 3 location_preamble_type_he_su_4xltf>
  476. <enum 4 location_preamble_type_he_su_2xltf>
  477. <enum 5 location_preamble_type_he_su_1xltf>
  478. <enum 6
  479. location_preamble_type_he_trigger_based_ul_4xltf>
  480. <enum 7
  481. location_preamble_type_he_trigger_based_ul_2xltf>
  482. <enum 8
  483. location_preamble_type_he_trigger_based_ul_1xltf>
  484. <enum 9 location_preamble_type_he_mu_4xltf>
  485. <enum 10 location_preamble_type_he_mu_2xltf>
  486. <enum 11 location_preamble_type_he_mu_1xltf>
  487. <enum 12
  488. location_preamble_type_he_extended_range_su_4xltf>
  489. <enum 13
  490. location_preamble_type_he_extended_range_su_2xltf>
  491. <enum 14
  492. location_preamble_type_he_extended_range_su_1xltf>
  493. <legal 0-14>
  494. */
  495. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_OFFSET 0x00000020
  496. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_LSB 1
  497. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_MASK 0x0000003e
  498. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG
  499. Indicate the bandwidth of L-LTF
  500. <enum 0 location_pkt_bw_20MHz>
  501. <enum 1 location_pkt_bw_40MHz>
  502. <enum 2 location_pkt_bw_80MHz>
  503. <enum 3 location_pkt_bw_160MHz>
  504. <legal all>
  505. */
  506. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_OFFSET 0x00000020
  507. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_LSB 6
  508. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_MASK 0x000000c0
  509. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT
  510. Indicate the bandwidth of (V)HT/HE-LTF
  511. <enum 0 location_pkt_bw_20MHz>
  512. <enum 1 location_pkt_bw_40MHz>
  513. <enum 2 location_pkt_bw_80MHz>
  514. <enum 3 location_pkt_bw_160MHz>
  515. <legal all>
  516. */
  517. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_OFFSET 0x00000020
  518. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_LSB 8
  519. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_MASK 0x00000300
  520. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE
  521. Indicate GI (guard interval) type
  522. <enum 0 gi_0_8_us > HE related GI. Can also be used
  523. for HE
  524. <enum 1 gi_0_4_us > HE related GI. Can also be used
  525. for HE
  526. <enum 2 gi_1_6_us > HE related GI
  527. <enum 3 gi_3_2_us > HE related GI
  528. <legal 0 - 3>
  529. */
  530. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_OFFSET 0x00000020
  531. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_LSB 10
  532. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_MASK 0x00000c00
  533. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE
  534. Bits 0~4 indicate MCS rate, if Legacy,
  535. 0: 48 Mbps,
  536. 1: 24 Mbps,
  537. 2: 12 Mbps,
  538. 3: 6 Mbps,
  539. 4: 54 Mbps,
  540. 5: 36 Mbps,
  541. 6: 18 Mbps,
  542. 7: 9 Mbps,
  543. if HT, 0-7: MCS0-MCS7,
  544. if VHT, 0-9: MCS0-MCS9,
  545. <legal all>
  546. */
  547. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_OFFSET 0x00000020
  548. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_LSB 12
  549. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_MASK 0x0001f000
  550. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN
  551. For 20/40/80, this field shows the first selected Rx
  552. chain that is used in HW IFFT mode
  553. For 80+80, this field shows the selected pri80 Rx chain
  554. that is used in HW IFFT mode
  555. <enum 0 location_strongest_chain_is_0>
  556. <enum 1 location_strongest_chain_is_1>
  557. <enum 2 location_strongest_chain_is_2>
  558. <enum 3 location_strongest_chain_is_3>
  559. <enum 4 location_strongest_chain_is_4>
  560. <enum 5 location_strongest_chain_is_5>
  561. <enum 6 location_strongest_chain_is_6>
  562. <enum 7 location_strongest_chain_is_7>
  563. <legal all>
  564. */
  565. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_OFFSET 0x00000020
  566. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_LSB 17
  567. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_MASK 0x000e0000
  568. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80
  569. For 20/40/80, this field shows the second selected Rx
  570. chain that is used in HW IFFT mode
  571. For 80+80, this field shows the selected ext80 Rx chain
  572. that is used in HW IFFT mode
  573. <enum 0 location_strongest_chain_is_0>
  574. <enum 1 location_strongest_chain_is_1>
  575. <enum 2 location_strongest_chain_is_2>
  576. <enum 3 location_strongest_chain_is_3>
  577. <enum 4 location_strongest_chain_is_4>
  578. <enum 5 location_strongest_chain_is_5>
  579. <enum 6 location_strongest_chain_is_6>
  580. <enum 7 location_strongest_chain_is_7>
  581. <legal all>
  582. */
  583. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_OFFSET 0x00000020
  584. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_LSB 20
  585. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_MASK 0x00700000
  586. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK
  587. Rx chain mask, each bit is a Rx chain
  588. 0: the Rx chain is not used
  589. 1: the Rx chain is used
  590. Support up to 8 Rx chains
  591. <legal all>
  592. */
  593. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_OFFSET 0x00000020
  594. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_LSB 23
  595. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_MASK 0x7f800000
  596. /* Description PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3
  597. <legal 0>
  598. */
  599. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_OFFSET 0x00000020
  600. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_LSB 31
  601. #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_MASK 0x80000000
  602. /* Description PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS
  603. RX packet start timestamp
  604. It reports the time the first L-STF ADC sample arrived
  605. at RX antenna
  606. clock unit is 480MHz
  607. <legal all>
  608. */
  609. #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_OFFSET 0x00000024
  610. #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_LSB 0
  611. #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_MASK 0xffffffff
  612. /* Description PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS
  613. RX packet end timestamp
  614. It reports the time the last symbol's last ADC sample
  615. arrived at RX antenna
  616. clock unit is 480MHz
  617. <legal all>
  618. */
  619. #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_OFFSET 0x00000028
  620. #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_LSB 0
  621. #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_MASK 0xffffffff
  622. /* Description PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START
  623. The phase of the SFO of the first symbol's first FFT
  624. input sample
  625. 12 bits, signed 6.6. 6 bits integer to cover -66.7ns to
  626. 66.7ns, and 6 bits fraction to provide a resolution of
  627. 0.03ns
  628. clock unit is 480MHz
  629. <legal all>
  630. */
  631. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_OFFSET 0x0000002c
  632. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_LSB 0
  633. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_MASK 0x00000fff
  634. /* Description PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END
  635. The phase of the SFO of the last symbol's last FFT input
  636. sample
  637. 12 bits, signed 6.6. 6 bits integer to cover -66.7ns to
  638. 66.7ns, and 6 bits fraction to provide a resolution of
  639. 0.03ns
  640. clock unit is 480MHz
  641. <legal all>
  642. */
  643. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_OFFSET 0x0000002c
  644. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_LSB 12
  645. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_MASK 0x00fff000
  646. /* Description PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8
  647. The high 8 bits of the 40 bits pointer pointed to the
  648. external RTT channel information buffer
  649. 8 bits
  650. <legal all>
  651. */
  652. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_OFFSET 0x0000002c
  653. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_LSB 24
  654. #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_MASK 0xff000000
  655. /* Description PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32
  656. The low 32 bits of the 40 bits pointer pointed to the
  657. external RTT channel information buffer
  658. 32 bits
  659. <legal all>
  660. */
  661. #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_OFFSET 0x00000030
  662. #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_LSB 0
  663. #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_MASK 0xffffffff
  664. /* Description PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT
  665. CFO measurement. Needed for passive locationing
  666. 14 bits, signed 1.13. 13 bits fraction to provide a
  667. resolution of 153 Hz
  668. In units of cycles/800 ns
  669. <legal all>
  670. */
  671. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_OFFSET 0x00000034
  672. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_LSB 0
  673. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_MASK 0x00003fff
  674. /* Description PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD
  675. Channel delay spread measurement. Needed for selecting
  676. GI length
  677. 8 bits, unsigned. At 25 ns step. Can represent up to
  678. 6375 ns
  679. In units of cycles @ 40 MHz
  680. <legal all>
  681. */
  682. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_OFFSET 0x00000034
  683. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_LSB 14
  684. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_MASK 0x003fc000
  685. /* Description PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL
  686. Indicate which timing backoff value is used
  687. <enum 0 timing_backoff_low_rssi>
  688. <enum 1 timing_backoff_mid_rssi>
  689. <enum 2 timing_backoff_high_rssi>
  690. <enum 3 reserved>
  691. <legal all>
  692. */
  693. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_OFFSET 0x00000034
  694. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_LSB 22
  695. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_MASK 0x00c00000
  696. /* Description PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8
  697. <legal 0>
  698. */
  699. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_OFFSET 0x00000034
  700. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_LSB 24
  701. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_MASK 0x7f000000
  702. /* Description PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID
  703. <enum 0 rx_location_info_is_not_valid>
  704. <enum 1 rx_location_info_is_valid>
  705. <legal all>
  706. */
  707. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_OFFSET 0x00000034
  708. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_LSB 31
  709. #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_MASK 0x80000000
  710. /* EXTERNAL REFERENCE : struct rx_timing_offset_info rx_timing_offset_info_details */
  711. /* Description PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET
  712. Cumulative reference frequency error at end of RX
  713. <legal all>
  714. */
  715. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_OFFSET 0x00000038
  716. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_LSB 0
  717. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_MASK 0x00000fff
  718. /* Description PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED
  719. <legal 0>
  720. */
  721. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_OFFSET 0x00000038
  722. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_LSB 12
  723. #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_MASK 0xfffff000
  724. /* EXTERNAL REFERENCE : struct receive_rssi_info post_rssi_info_details */
  725. /* Description PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0
  726. RSSI of RX PPDU on chain 0 of primary 20 MHz bandwidth.
  727. Value of 0x80 indicates invalid.
  728. */
  729. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_OFFSET 0x0000003c
  730. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_LSB 0
  731. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_MASK 0x000000ff
  732. /* Description PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0
  733. RSSI of RX PPDU on chain 0 of extension 20 MHz
  734. bandwidth.
  735. Value of 0x80 indicates invalid.
  736. */
  737. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_OFFSET 0x0000003c
  738. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_LSB 8
  739. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_MASK 0x0000ff00
  740. /* Description PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0
  741. RSSI of RX PPDU on chain 0 of extension 40, low 20 MHz
  742. bandwidth.
  743. Value of 0x80 indicates invalid.
  744. */
  745. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_OFFSET 0x0000003c
  746. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_LSB 16
  747. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_MASK 0x00ff0000
  748. /* Description PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0
  749. RSSI of RX PPDU on chain 0 of extension 40, high 20 MHz
  750. bandwidth.
  751. Value of 0x80 indicates invalid.
  752. */
  753. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_OFFSET 0x0000003c
  754. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_LSB 24
  755. #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_MASK 0xff000000
  756. /* Description PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0
  757. RSSI of RX PPDU on chain 0 of extension 80, low 20 MHz
  758. bandwidth.
  759. Value of 0x80 indicates invalid.
  760. */
  761. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_OFFSET 0x00000040
  762. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_LSB 0
  763. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_MASK 0x000000ff
  764. /* Description PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0
  765. RSSI of RX PPDU on chain 0 of extension 80, low-high 20
  766. MHz bandwidth.
  767. Value of 0x80 indicates invalid.
  768. */
  769. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_OFFSET 0x00000040
  770. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_LSB 8
  771. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_MASK 0x0000ff00
  772. /* Description PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0
  773. RSSI of RX PPDU on chain 0 of extension 80, high-low 20
  774. MHz bandwidth.
  775. Value of 0x80 indicates invalid.
  776. */
  777. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_OFFSET 0x00000040
  778. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_LSB 16
  779. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_MASK 0x00ff0000
  780. /* Description PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0
  781. RSSI of RX PPDU on chain 0 of extension 80, high 20 MHz
  782. bandwidth.
  783. Value of 0x80 indicates invalid.
  784. */
  785. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_OFFSET 0x00000040
  786. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_LSB 24
  787. #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_MASK 0xff000000
  788. /* Description PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1
  789. RSSI of RX PPDU on chain 1 of primary 20 MHz bandwidth.
  790. Value of 0x80 indicates invalid.
  791. */
  792. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_OFFSET 0x00000044
  793. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_LSB 0
  794. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_MASK 0x000000ff
  795. /* Description PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1
  796. RSSI of RX PPDU on chain 1 of extension 20 MHz
  797. bandwidth.
  798. Value of 0x80 indicates invalid.
  799. */
  800. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_OFFSET 0x00000044
  801. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_LSB 8
  802. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_MASK 0x0000ff00
  803. /* Description PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1
  804. RSSI of RX PPDU on chain 1 of extension 40, low 20 MHz
  805. bandwidth.
  806. Value of 0x80 indicates invalid.
  807. */
  808. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_OFFSET 0x00000044
  809. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_LSB 16
  810. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_MASK 0x00ff0000
  811. /* Description PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1
  812. RSSI of RX PPDU on chain 1 of extension 40, high 20 MHz
  813. bandwidth.
  814. Value of 0x80 indicates invalid.
  815. */
  816. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_OFFSET 0x00000044
  817. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_LSB 24
  818. #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_MASK 0xff000000
  819. /* Description PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1
  820. RSSI of RX PPDU on chain 1 of extension 80, low 20 MHz
  821. bandwidth.
  822. Value of 0x80 indicates invalid.
  823. */
  824. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_OFFSET 0x00000048
  825. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_LSB 0
  826. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_MASK 0x000000ff
  827. /* Description PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1
  828. RSSI of RX PPDU on chain 1 of extension 80, low-high 20
  829. MHz bandwidth.
  830. Value of 0x80 indicates invalid.
  831. */
  832. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_OFFSET 0x00000048
  833. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_LSB 8
  834. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_MASK 0x0000ff00
  835. /* Description PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1
  836. RSSI of RX PPDU on chain 1 of extension 80, high-low 20
  837. MHz bandwidth.
  838. Value of 0x80 indicates invalid.
  839. */
  840. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_OFFSET 0x00000048
  841. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_LSB 16
  842. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_MASK 0x00ff0000
  843. /* Description PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1
  844. RSSI of RX PPDU on chain 1 of extension 80, high 20 MHz
  845. bandwidth.
  846. Value of 0x80 indicates invalid.
  847. */
  848. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_OFFSET 0x00000048
  849. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_LSB 24
  850. #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_MASK 0xff000000
  851. /* Description PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2
  852. RSSI of RX PPDU on chain 2 of primary 20 MHz bandwidth.
  853. Value of 0x80 indicates invalid.
  854. */
  855. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_OFFSET 0x0000004c
  856. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_LSB 0
  857. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_MASK 0x000000ff
  858. /* Description PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2
  859. RSSI of RX PPDU on chain 2 of extension 20 MHz
  860. bandwidth.
  861. Value of 0x80 indicates invalid.
  862. */
  863. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_OFFSET 0x0000004c
  864. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_LSB 8
  865. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_MASK 0x0000ff00
  866. /* Description PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2
  867. RSSI of RX PPDU on chain 2 of extension 40, low 20 MHz
  868. bandwidth.
  869. Value of 0x80 indicates invalid.
  870. */
  871. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_OFFSET 0x0000004c
  872. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_LSB 16
  873. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_MASK 0x00ff0000
  874. /* Description PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2
  875. RSSI of RX PPDU on chain 2 of extension 40, high 20 MHz
  876. bandwidth.
  877. Value of 0x80 indicates invalid.
  878. */
  879. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_OFFSET 0x0000004c
  880. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_LSB 24
  881. #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_MASK 0xff000000
  882. /* Description PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2
  883. RSSI of RX PPDU on chain 2 of extension 80, low 20 MHz
  884. bandwidth.
  885. Value of 0x80 indicates invalid.
  886. */
  887. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_OFFSET 0x00000050
  888. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_LSB 0
  889. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_MASK 0x000000ff
  890. /* Description PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2
  891. RSSI of RX PPDU on chain 2 of extension 80, low-high 20
  892. MHz bandwidth.
  893. Value of 0x80 indicates invalid.
  894. */
  895. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_OFFSET 0x00000050
  896. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_LSB 8
  897. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_MASK 0x0000ff00
  898. /* Description PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2
  899. RSSI of RX PPDU on chain 2 of extension 80, high-low 20
  900. MHz bandwidth.
  901. Value of 0x80 indicates invalid.
  902. */
  903. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_OFFSET 0x00000050
  904. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_LSB 16
  905. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_MASK 0x00ff0000
  906. /* Description PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2
  907. RSSI of RX PPDU on chain 2 of extension 80, high 20 MHz
  908. bandwidth.
  909. Value of 0x80 indicates invalid.
  910. */
  911. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_OFFSET 0x00000050
  912. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_LSB 24
  913. #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_MASK 0xff000000
  914. /* Description PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3
  915. RSSI of RX PPDU on chain 3 of primary 20 MHz bandwidth.
  916. Value of 0x80 indicates invalid.
  917. */
  918. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_OFFSET 0x00000054
  919. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_LSB 0
  920. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_MASK 0x000000ff
  921. /* Description PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3
  922. RSSI of RX PPDU on chain 3 of extension 20 MHz
  923. bandwidth.
  924. Value of 0x80 indicates invalid.
  925. */
  926. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_OFFSET 0x00000054
  927. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_LSB 8
  928. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_MASK 0x0000ff00
  929. /* Description PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3
  930. RSSI of RX PPDU on chain 3 of extension 40, low 20 MHz
  931. bandwidth.
  932. Value of 0x80 indicates invalid.
  933. */
  934. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_OFFSET 0x00000054
  935. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_LSB 16
  936. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_MASK 0x00ff0000
  937. /* Description PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3
  938. RSSI of RX PPDU on chain 3 of extension 40, high 20 MHz
  939. bandwidth.
  940. Value of 0x80 indicates invalid.
  941. */
  942. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_OFFSET 0x00000054
  943. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_LSB 24
  944. #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_MASK 0xff000000
  945. /* Description PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3
  946. RSSI of RX PPDU on chain 3 of extension 80, low 20 MHz
  947. bandwidth.
  948. Value of 0x80 indicates invalid.
  949. */
  950. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_OFFSET 0x00000058
  951. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_LSB 0
  952. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_MASK 0x000000ff
  953. /* Description PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3
  954. RSSI of RX PPDU on chain 3 of extension 80, low-high 20
  955. MHz bandwidth.
  956. Value of 0x80 indicates invalid.
  957. */
  958. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_OFFSET 0x00000058
  959. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_LSB 8
  960. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_MASK 0x0000ff00
  961. /* Description PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3
  962. RSSI of RX PPDU on chain 3 of extension 80, high-low 20
  963. MHz bandwidth.
  964. Value of 0x80 indicates invalid.
  965. */
  966. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_OFFSET 0x00000058
  967. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_LSB 16
  968. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_MASK 0x00ff0000
  969. /* Description PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3
  970. RSSI of RX PPDU on chain 3 of extension 80, high 20 MHz
  971. bandwidth.
  972. Value of 0x80 indicates invalid.
  973. */
  974. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_OFFSET 0x00000058
  975. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_LSB 24
  976. #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_MASK 0xff000000
  977. /* Description PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4
  978. RSSI of RX PPDU on chain 4 of primary 20 MHz bandwidth.
  979. Value of 0x80 indicates invalid.
  980. */
  981. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_OFFSET 0x0000005c
  982. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_LSB 0
  983. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_MASK 0x000000ff
  984. /* Description PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4
  985. RSSI of RX PPDU on chain 4 of extension 20 MHz
  986. bandwidth.
  987. Value of 0x80 indicates invalid.
  988. */
  989. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_OFFSET 0x0000005c
  990. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_LSB 8
  991. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_MASK 0x0000ff00
  992. /* Description PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4
  993. RSSI of RX PPDU on chain 4 of extension 40, low 20 MHz
  994. bandwidth.
  995. Value of 0x80 indicates invalid.
  996. */
  997. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_OFFSET 0x0000005c
  998. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_LSB 16
  999. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_MASK 0x00ff0000
  1000. /* Description PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4
  1001. RSSI of RX PPDU on chain 4 of extension 40, high 20 MHz
  1002. bandwidth.
  1003. Value of 0x80 indicates invalid.
  1004. */
  1005. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_OFFSET 0x0000005c
  1006. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_LSB 24
  1007. #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_MASK 0xff000000
  1008. /* Description PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4
  1009. RSSI of RX PPDU on chain 4 of extension 80, low 20 MHz
  1010. bandwidth.
  1011. Value of 0x80 indicates invalid.
  1012. */
  1013. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_OFFSET 0x00000060
  1014. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_LSB 0
  1015. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_MASK 0x000000ff
  1016. /* Description PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4
  1017. RSSI of RX PPDU on chain 4 of extension 80, low-high 20
  1018. MHz bandwidth.
  1019. Value of 0x80 indicates invalid.
  1020. */
  1021. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_OFFSET 0x00000060
  1022. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_LSB 8
  1023. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_MASK 0x0000ff00
  1024. /* Description PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4
  1025. RSSI of RX PPDU on chain 4 of extension 80, high-low 20
  1026. MHz bandwidth.
  1027. Value of 0x80 indicates invalid.
  1028. */
  1029. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_OFFSET 0x00000060
  1030. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_LSB 16
  1031. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_MASK 0x00ff0000
  1032. /* Description PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4
  1033. RSSI of RX PPDU on chain 4 of extension 80, high 20 MHz
  1034. bandwidth.
  1035. Value of 0x80 indicates invalid.
  1036. */
  1037. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_OFFSET 0x00000060
  1038. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_LSB 24
  1039. #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_MASK 0xff000000
  1040. /* Description PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5
  1041. RSSI of RX PPDU on chain 0 of primary 20 MHz bandwidth.
  1042. Value of 0x80 indicates invalid.
  1043. */
  1044. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_OFFSET 0x00000064
  1045. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_LSB 0
  1046. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_MASK 0x000000ff
  1047. /* Description PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5
  1048. RSSI of RX PPDU on chain 5 of extension 20 MHz
  1049. bandwidth.
  1050. Value of 0x80 indicates invalid.
  1051. */
  1052. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_OFFSET 0x00000064
  1053. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_LSB 8
  1054. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_MASK 0x0000ff00
  1055. /* Description PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5
  1056. RSSI of RX PPDU on chain 5 of extension 40, low 20 MHz
  1057. bandwidth.
  1058. Value of 0x80 indicates invalid.
  1059. */
  1060. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_OFFSET 0x00000064
  1061. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_LSB 16
  1062. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_MASK 0x00ff0000
  1063. /* Description PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5
  1064. RSSI of RX PPDU on chain 5 of extension 40, high 20 MHz
  1065. bandwidth.
  1066. Value of 0x80 indicates invalid.
  1067. */
  1068. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_OFFSET 0x00000064
  1069. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_LSB 24
  1070. #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_MASK 0xff000000
  1071. /* Description PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5
  1072. RSSI of RX PPDU on chain 5 of extension 80, low 20 MHz
  1073. bandwidth.
  1074. Value of 0x80 indicates invalid.
  1075. */
  1076. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_OFFSET 0x00000068
  1077. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_LSB 0
  1078. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_MASK 0x000000ff
  1079. /* Description PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5
  1080. RSSI of RX PPDU on chain 5 of extension 80, low-high 20
  1081. MHz bandwidth.
  1082. Value of 0x80 indicates invalid.
  1083. */
  1084. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_OFFSET 0x00000068
  1085. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_LSB 8
  1086. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_MASK 0x0000ff00
  1087. /* Description PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5
  1088. RSSI of RX PPDU on chain 5 of extension 80, high-low 20
  1089. MHz bandwidth.
  1090. Value of 0x80 indicates invalid.
  1091. */
  1092. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_OFFSET 0x00000068
  1093. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_LSB 16
  1094. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_MASK 0x00ff0000
  1095. /* Description PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5
  1096. RSSI of RX PPDU on chain 5 of extension 80, high 20 MHz
  1097. bandwidth.
  1098. Value of 0x80 indicates invalid.
  1099. */
  1100. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_OFFSET 0x00000068
  1101. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_LSB 24
  1102. #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_MASK 0xff000000
  1103. /* Description PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6
  1104. RSSI of RX PPDU on chain 6 of primary 20 MHz bandwidth.
  1105. Value of 0x80 indicates invalid.
  1106. */
  1107. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_OFFSET 0x0000006c
  1108. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_LSB 0
  1109. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_MASK 0x000000ff
  1110. /* Description PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6
  1111. RSSI of RX PPDU on chain 6 of extension 20 MHz
  1112. bandwidth.
  1113. Value of 0x80 indicates invalid.
  1114. */
  1115. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_OFFSET 0x0000006c
  1116. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_LSB 8
  1117. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_MASK 0x0000ff00
  1118. /* Description PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6
  1119. RSSI of RX PPDU on chain 6 of extension 40, low 20 MHz
  1120. bandwidth.
  1121. Value of 0x80 indicates invalid.
  1122. */
  1123. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_OFFSET 0x0000006c
  1124. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_LSB 16
  1125. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_MASK 0x00ff0000
  1126. /* Description PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6
  1127. RSSI of RX PPDU on chain 6 of extension 40, high 20 MHz
  1128. bandwidth.
  1129. Value of 0x80 indicates invalid.
  1130. */
  1131. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_OFFSET 0x0000006c
  1132. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_LSB 24
  1133. #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_MASK 0xff000000
  1134. /* Description PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6
  1135. RSSI of RX PPDU on chain 6 of extension 80, low 20 MHz
  1136. bandwidth.
  1137. Value of 0x80 indicates invalid.
  1138. */
  1139. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_OFFSET 0x00000070
  1140. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_LSB 0
  1141. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_MASK 0x000000ff
  1142. /* Description PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6
  1143. RSSI of RX PPDU on chain 6 of extension 80, low-high 20
  1144. MHz bandwidth.
  1145. Value of 0x80 indicates invalid.
  1146. */
  1147. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_OFFSET 0x00000070
  1148. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_LSB 8
  1149. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_MASK 0x0000ff00
  1150. /* Description PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6
  1151. RSSI of RX PPDU on chain 6 of extension 80, high-low 20
  1152. MHz bandwidth.
  1153. Value of 0x80 indicates invalid.
  1154. */
  1155. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_OFFSET 0x00000070
  1156. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_LSB 16
  1157. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_MASK 0x00ff0000
  1158. /* Description PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6
  1159. RSSI of RX PPDU on chain 6 of extension 80, high 20 MHz
  1160. bandwidth.
  1161. Value of 0x80 indicates invalid.
  1162. */
  1163. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_OFFSET 0x00000070
  1164. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_LSB 24
  1165. #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_MASK 0xff000000
  1166. /* Description PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7
  1167. RSSI of RX PPDU on chain 7 of primary 20 MHz bandwidth.
  1168. Value of 0x80 indicates invalid.
  1169. */
  1170. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_OFFSET 0x00000074
  1171. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_LSB 0
  1172. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_MASK 0x000000ff
  1173. /* Description PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7
  1174. RSSI of RX PPDU on chain 7 of extension 20 MHz
  1175. bandwidth.
  1176. Value of 0x80 indicates invalid.
  1177. */
  1178. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_OFFSET 0x00000074
  1179. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_LSB 8
  1180. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_MASK 0x0000ff00
  1181. /* Description PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7
  1182. RSSI of RX PPDU on chain 7 of extension 40, low 20 MHz
  1183. bandwidth.
  1184. Value of 0x80 indicates invalid.
  1185. */
  1186. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_OFFSET 0x00000074
  1187. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_LSB 16
  1188. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_MASK 0x00ff0000
  1189. /* Description PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7
  1190. RSSI of RX PPDU on chain 7 of extension 40, high 20 MHz
  1191. bandwidth.
  1192. Value of 0x80 indicates invalid.
  1193. */
  1194. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_OFFSET 0x00000074
  1195. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_LSB 24
  1196. #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_MASK 0xff000000
  1197. /* Description PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7
  1198. RSSI of RX PPDU on chain 7 of extension 80, low 20 MHz
  1199. bandwidth.
  1200. Value of 0x80 indicates invalid.
  1201. */
  1202. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_OFFSET 0x00000078
  1203. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_LSB 0
  1204. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_MASK 0x000000ff
  1205. /* Description PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7
  1206. RSSI of RX PPDU on chain 7 of extension 80, low-high 20
  1207. MHz bandwidth.
  1208. Value of 0x80 indicates invalid.
  1209. */
  1210. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_OFFSET 0x00000078
  1211. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_LSB 8
  1212. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_MASK 0x0000ff00
  1213. /* Description PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7
  1214. RSSI of RX PPDU on chain 7 of extension 80, high-low 20
  1215. MHz bandwidth.
  1216. Value of 0x80 indicates invalid.
  1217. */
  1218. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_OFFSET 0x00000078
  1219. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_LSB 16
  1220. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_MASK 0x00ff0000
  1221. /* Description PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7
  1222. RSSI of RX PPDU on chain 7 of extension 80, high 20 MHz
  1223. bandwidth.
  1224. Value of 0x80 indicates invalid.
  1225. */
  1226. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_OFFSET 0x00000078
  1227. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_LSB 24
  1228. #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_MASK 0xff000000
  1229. /* Description PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0
  1230. Some PHY micro code status that can be put in here.
  1231. Details of definition within SW specification
  1232. This field can be used for debugging, FW - SW message
  1233. exchange, etc.
  1234. It could for example be a pointer to a DDR memory
  1235. location where PHY FW put some debug info.
  1236. <legal all>
  1237. */
  1238. #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_OFFSET 0x0000007c
  1239. #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_LSB 0
  1240. #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_MASK 0xffffffff
  1241. /* Description PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32
  1242. Some PHY micro code status that can be put in here.
  1243. Details of definition within SW specification
  1244. This field can be used for debugging, FW - SW message
  1245. exchange, etc.
  1246. It could for example be a pointer to a DDR memory
  1247. location where PHY FW put some debug info.
  1248. <legal all>
  1249. */
  1250. #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_OFFSET 0x00000080
  1251. #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_LSB 0
  1252. #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_MASK 0xffffffff
  1253. #endif // _PHYRX_PKT_END_INFO_H_