1  /*
2   * Copyright (c) 2020, The Linux Foundation. All rights reserved.
3   *
4   * Permission to use, copy, modify, and/or distribute this software for any
5   * purpose with or without fee is hereby granted, provided that the above
6   * copyright notice and this permission notice appear in all copies.
7   *
8   * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9   * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10   * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11   * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12   * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13   * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15   */
16  
17  #ifndef _PHYRX_PKT_END_INFO_H_
18  #define _PHYRX_PKT_END_INFO_H_
19  #if !defined(__ASSEMBLER__)
20  #endif
21  
22  #include "rx_location_info.h"
23  #include "rx_timing_offset_info.h"
24  #include "receive_rssi_info.h"
25  
26  // ################ START SUMMARY #################
27  //
28  //	Dword	Fields
29  //	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]
30  //	1	phy_timestamp_1_lower_32[31:0]
31  //	2	phy_timestamp_1_upper_32[31:0]
32  //	3	phy_timestamp_2_lower_32[31:0]
33  //	4	phy_timestamp_2_upper_32[31:0]
34  //	5-13	struct rx_location_info rx_location_info_details;
35  //	14	struct rx_timing_offset_info rx_timing_offset_info_details;
36  //	15-30	struct receive_rssi_info post_rssi_info_details;
37  //	31	phy_sw_status_31_0[31:0]
38  //	32	phy_sw_status_63_32[31:0]
39  //
40  // ################ END SUMMARY #################
41  
42  #define NUM_OF_DWORDS_PHYRX_PKT_END_INFO 33
43  
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  /*
68  
69  phy_internal_nap
70  
71  			When set, PHY RX entered an internal NAP state, as PHY
72  			determined that this reception was not destined to this
73  			device
74  
75  location_info_valid
76  
77  			Indicates that the RX_LOCATION_INFO structure later on
78  			in the TLV contains valid info
79  
80  timing_info_valid
81  
82  			Indicates that the RX_TIMING_OFFSET_INFO structure later
83  			on in the TLV contains valid info
84  
85  rssi_info_valid
86  
87  			Indicates that the RECEIVE_RSSI_INFO structure later on
88  			in the TLV contains valid info
89  
90  rx_frame_correction_needed
91  
92  			When clear, no action is needed in the MAC.
93  
94  
95  
96  			When set, the falling edge of the rx_frame happened 4us
97  			too late. MAC will need to compensate for this delay in
98  			order to maintain proper SIFS timing and/or not to get
99  			de-slotted.
100  
101  
102  
103  			PHY uses this for very short 11a frames.
104  
105  
106  
107  			When set, PHY will have passed this TLV to the MAC up to
108  			8 us into the 'real SIFS' time, and thus within 4us from the
109  			falling edge of the rx_frame.
110  
111  
112  
113  			<legal all>
114  
115  frameless_frame_received
116  
117  			When set, PHY has received the 'frameless frame' . Can
118  			be used in the 'MU-RTS -CTS exchange where CTS reception can
119  			be problematic.
120  
121  			<legal all>
122  
123  reserved_0a
124  
125  			<legal 0>
126  
127  dl_ofdma_info_valid
128  
129  			When set, the following DL_ofdma_... fields are valid.
130  
131  			It provides the MAC insight into which RU was allocated
132  			to this device.
133  
134  			<legal all>
135  
136  dl_ofdma_ru_start_index
137  
138  			RU index number to which User is assigned
139  
140  			RU numbering is over the entire BW, starting from 0 and
141  			in increasing frequency order and not primary-secondary
142  			order
143  
144  			<legal 0-73>
145  
146  dl_ofdma_ru_width
147  
148  			The size of the RU for this user.
149  
150  			In units of 1 (26 tone) RU
151  
152  			<legal 1-74>
153  
154  reserved_0b
155  
156  			<legal 0>
157  
158  phy_timestamp_1_lower_32
159  
160  			TODO PHY: cleanup descriptionThe PHY timestamp in the
161  			AMPI of the first rising edge of rx_clear_pri after
162  			TX_PHY_DESC. .  This field should set to 0 by the PHY and
163  			should be updated by the AMPI before being forwarded to the
164  			rest of the MAC. This field indicates the lower 32 bits of
165  			the timestamp
166  
167  phy_timestamp_1_upper_32
168  
169  			TODO PHY: cleanup description
170  
171  			The PHY timestamp in the AMPI of the first rising edge
172  			of rx_clear_pri after TX_PHY_DESC.  This field should set to
173  			0 by the PHY and should be updated by the AMPI before being
174  			forwarded to the rest of the MAC. This field indicates the
175  			upper 32 bits of the timestamp
176  
177  phy_timestamp_2_lower_32
178  
179  			TODO PHY: cleanup description
180  
181  			The PHY timestamp in the AMPI of the rising edge of
182  			rx_clear_pri after RX_RSSI_LEGACY.  This field should set to
183  			0 by the PHY and should be updated by the AMPI before being
184  			forwarded to the rest of the MAC. This field indicates the
185  			lower 32 bits of the timestamp
186  
187  phy_timestamp_2_upper_32
188  
189  			TODO PHY: cleanup description
190  
191  			The PHY timestamp in the AMPI of the rising edge of
192  			rx_clear_pri after RX_RSSI_LEGACY.  This field should set to
193  			0 by the PHY and should be updated by the AMPI before being
194  			forwarded to the rest of the MAC. This field indicates the
195  			upper 32 bits of the timestamp
196  
197  struct rx_location_info rx_location_info_details
198  
199  			Overview of location related info
200  
201  struct rx_timing_offset_info rx_timing_offset_info_details
202  
203  			Overview of timing offset related info
204  
205  struct receive_rssi_info post_rssi_info_details
206  
207  			Overview of the post-RSSI values.
208  
209  phy_sw_status_31_0
210  
211  			Some PHY micro code status that can be put in here.
212  			Details of definition within SW specification
213  
214  			This field can be used for debugging, FW - SW message
215  			exchange, etc.
216  
217  			It could for example be a pointer to a DDR memory
218  			location where PHY FW put some debug info.
219  
220  			<legal all>
221  
222  phy_sw_status_63_32
223  
224  			Some PHY micro code status that can be put in here.
225  			Details of definition within SW specification
226  
227  			This field can be used for debugging, FW - SW message
228  			exchange, etc.
229  
230  			It could for example be a pointer to a DDR memory
231  			location where PHY FW put some debug info.
232  
233  			<legal all>
234  */
235  
236  
237  /* Description		PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP
238  
239  			When set, PHY RX entered an internal NAP state, as PHY
240  			determined that this reception was not destined to this
241  			device
242  */
243  #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_OFFSET                 0x00000000
244  #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_LSB                    0
245  #define PHYRX_PKT_END_INFO_0_PHY_INTERNAL_NAP_MASK                   0x00000001
246  
247  /* Description		PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID
248  
249  			Indicates that the RX_LOCATION_INFO structure later on
250  			in the TLV contains valid info
251  */
252  #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_OFFSET              0x00000000
253  #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_LSB                 1
254  #define PHYRX_PKT_END_INFO_0_LOCATION_INFO_VALID_MASK                0x00000002
255  
256  /* Description		PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID
257  
258  			Indicates that the RX_TIMING_OFFSET_INFO structure later
259  			on in the TLV contains valid info
260  */
261  #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_OFFSET                0x00000000
262  #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_LSB                   2
263  #define PHYRX_PKT_END_INFO_0_TIMING_INFO_VALID_MASK                  0x00000004
264  
265  /* Description		PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID
266  
267  			Indicates that the RECEIVE_RSSI_INFO structure later on
268  			in the TLV contains valid info
269  */
270  #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_OFFSET                  0x00000000
271  #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_LSB                     3
272  #define PHYRX_PKT_END_INFO_0_RSSI_INFO_VALID_MASK                    0x00000008
273  
274  /* Description		PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED
275  
276  			When clear, no action is needed in the MAC.
277  
278  
279  
280  			When set, the falling edge of the rx_frame happened 4us
281  			too late. MAC will need to compensate for this delay in
282  			order to maintain proper SIFS timing and/or not to get
283  			de-slotted.
284  
285  
286  
287  			PHY uses this for very short 11a frames.
288  
289  
290  
291  			When set, PHY will have passed this TLV to the MAC up to
292  			8 us into the 'real SIFS' time, and thus within 4us from the
293  			falling edge of the rx_frame.
294  
295  
296  
297  			<legal all>
298  */
299  #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_OFFSET       0x00000000
300  #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_LSB          4
301  #define PHYRX_PKT_END_INFO_0_RX_FRAME_CORRECTION_NEEDED_MASK         0x00000010
302  
303  /* Description		PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED
304  
305  			When set, PHY has received the 'frameless frame' . Can
306  			be used in the 'MU-RTS -CTS exchange where CTS reception can
307  			be problematic.
308  
309  			<legal all>
310  */
311  #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_OFFSET         0x00000000
312  #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_LSB            5
313  #define PHYRX_PKT_END_INFO_0_FRAMELESS_FRAME_RECEIVED_MASK           0x00000020
314  
315  /* Description		PHYRX_PKT_END_INFO_0_RESERVED_0A
316  
317  			<legal 0>
318  */
319  #define PHYRX_PKT_END_INFO_0_RESERVED_0A_OFFSET                      0x00000000
320  #define PHYRX_PKT_END_INFO_0_RESERVED_0A_LSB                         6
321  #define PHYRX_PKT_END_INFO_0_RESERVED_0A_MASK                        0x00000fc0
322  
323  /* Description		PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID
324  
325  			When set, the following DL_ofdma_... fields are valid.
326  
327  			It provides the MAC insight into which RU was allocated
328  			to this device.
329  
330  			<legal all>
331  */
332  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_OFFSET              0x00000000
333  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_LSB                 12
334  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_INFO_VALID_MASK                0x00001000
335  
336  /* Description		PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX
337  
338  			RU index number to which User is assigned
339  
340  			RU numbering is over the entire BW, starting from 0 and
341  			in increasing frequency order and not primary-secondary
342  			order
343  
344  			<legal 0-73>
345  */
346  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_OFFSET          0x00000000
347  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_LSB             13
348  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_START_INDEX_MASK            0x000fe000
349  
350  /* Description		PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH
351  
352  			The size of the RU for this user.
353  
354  			In units of 1 (26 tone) RU
355  
356  			<legal 1-74>
357  */
358  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_OFFSET                0x00000000
359  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_LSB                   20
360  #define PHYRX_PKT_END_INFO_0_DL_OFDMA_RU_WIDTH_MASK                  0x07f00000
361  
362  /* Description		PHYRX_PKT_END_INFO_0_RESERVED_0B
363  
364  			<legal 0>
365  */
366  #define PHYRX_PKT_END_INFO_0_RESERVED_0B_OFFSET                      0x00000000
367  #define PHYRX_PKT_END_INFO_0_RESERVED_0B_LSB                         27
368  #define PHYRX_PKT_END_INFO_0_RESERVED_0B_MASK                        0xf8000000
369  
370  /* Description		PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32
371  
372  			TODO PHY: cleanup descriptionThe PHY timestamp in the
373  			AMPI of the first rising edge of rx_clear_pri after
374  			TX_PHY_DESC. .  This field should set to 0 by the PHY and
375  			should be updated by the AMPI before being forwarded to the
376  			rest of the MAC. This field indicates the lower 32 bits of
377  			the timestamp
378  */
379  #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_OFFSET         0x00000004
380  #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_LSB            0
381  #define PHYRX_PKT_END_INFO_1_PHY_TIMESTAMP_1_LOWER_32_MASK           0xffffffff
382  
383  /* Description		PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32
384  
385  			TODO PHY: cleanup description
386  
387  			The PHY timestamp in the AMPI of the first rising edge
388  			of rx_clear_pri after TX_PHY_DESC.  This field should set to
389  			0 by the PHY and should be updated by the AMPI before being
390  			forwarded to the rest of the MAC. This field indicates the
391  			upper 32 bits of the timestamp
392  */
393  #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_OFFSET         0x00000008
394  #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_LSB            0
395  #define PHYRX_PKT_END_INFO_2_PHY_TIMESTAMP_1_UPPER_32_MASK           0xffffffff
396  
397  /* Description		PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32
398  
399  			TODO PHY: cleanup description
400  
401  			The PHY timestamp in the AMPI of the rising edge of
402  			rx_clear_pri after RX_RSSI_LEGACY.  This field should set to
403  			0 by the PHY and should be updated by the AMPI before being
404  			forwarded to the rest of the MAC. This field indicates the
405  			lower 32 bits of the timestamp
406  */
407  #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_OFFSET         0x0000000c
408  #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_LSB            0
409  #define PHYRX_PKT_END_INFO_3_PHY_TIMESTAMP_2_LOWER_32_MASK           0xffffffff
410  
411  /* Description		PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32
412  
413  			TODO PHY: cleanup description
414  
415  			The PHY timestamp in the AMPI of the rising edge of
416  			rx_clear_pri after RX_RSSI_LEGACY.  This field should set to
417  			0 by the PHY and should be updated by the AMPI before being
418  			forwarded to the rest of the MAC. This field indicates the
419  			upper 32 bits of the timestamp
420  */
421  #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_OFFSET         0x00000010
422  #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_LSB            0
423  #define PHYRX_PKT_END_INFO_4_PHY_TIMESTAMP_2_UPPER_32_MASK           0xffffffff
424  
425   /* EXTERNAL REFERENCE : struct rx_location_info rx_location_info_details */
426  
427  
428  /* Description		PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY
429  
430  			For 20/40/80, this field shows the RTT first arrival
431  			correction value computed from L-LTF on the first selected
432  			Rx chain
433  
434  
435  
436  			For 80+80, this field shows the RTT first arrival
437  			correction value computed from L-LTF on pri80 on the
438  			selected pri80 Rx chain
439  
440  
441  
442  			16 bits, signed 12.4. 12 bits integer to cover -6.4us to
443  			6.4us, and 4 bits fraction to cover pri80 and 32x FAC
444  			interpolation
445  
446  
447  
448  			clock unit is 320MHz
449  
450  			<legal all>
451  */
452  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_OFFSET 0x00000014
453  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_LSB 0
454  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_MASK 0x0000ffff
455  
456  /* Description		PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80
457  
458  			For 20/40/80, this field shows the RTT first arrival
459  			correction value computed from L-LTF on the second selected
460  			Rx chain
461  
462  
463  
464  			For 80+80, this field shows the RTT first arrival
465  			correction value computed from L-LTF on ext80 on the
466  			selected ext80 Rx chain
467  
468  
469  
470  			16 bits, signed 12.4. 12 bits integer to cover -6.4us to
471  			6.4us, and 4 bits fraction to cover ext80 and 32x FAC
472  			interpolation
473  
474  
475  
476  			clock unit is 320MHz
477  
478  			<legal all>
479  */
480  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_OFFSET 0x00000014
481  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_LSB 16
482  #define PHYRX_PKT_END_INFO_5_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_MASK 0xffff0000
483  
484  /* Description		PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT
485  
486  			For 20/40/80, this field shows the RTT first arrival
487  			correction value computed from (V)HT/HE-LTF on the first
488  			selected Rx chain
489  
490  
491  
492  			For 80+80, this field shows the RTT first arrival
493  			correction value computed from (V)HT/HE-LTF on pri80 on the
494  			selected pri80 Rx chain
495  
496  
497  
498  			16 bits, signed 12.4. 12 bits integer to cover -6.4us to
499  			6.4us, and 4 bits fraction to cover pri80 and 32x FAC
500  			interpolation
501  
502  
503  
504  			clock unit is 320MHz
505  
506  			<legal all>
507  */
508  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_OFFSET 0x00000018
509  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_LSB 0
510  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_MASK 0x0000ffff
511  
512  /* Description		PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80
513  
514  			For 20/40/80, this field shows the RTT first arrival
515  			correction value computed from (V)HT/HE-LTF on the second
516  			selected Rx chain
517  
518  
519  
520  			For 80+80, this field shows the RTT first arrival
521  			correction value computed from (V)HT/HE-LTF on ext80 on the
522  			selected ext80 Rx chain
523  
524  
525  
526  			16 bits, signed 12.4. 12 bits integer to cover -6.4us to
527  			6.4us, and 4 bits fraction to cover ext80 and 32x FAC
528  			interpolation
529  
530  
531  
532  			clock unit is 320MHz
533  
534  			<legal all>
535  */
536  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_OFFSET 0x00000018
537  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_LSB 16
538  #define PHYRX_PKT_END_INFO_6_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_MASK 0xffff0000
539  
540  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS
541  
542  			Status of rtt_fac_legacy
543  
544  
545  
546  			<enum 0 location_fac_legacy_status_not_valid>
547  
548  			<enum 1 location_fac_legacy_status_valid>
549  
550  			<legal all>
551  */
552  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_OFFSET 0x0000001c
553  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_LSB 0
554  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_STATUS_MASK 0x00000001
555  
556  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS
557  
558  			Status of rtt_fac_legacy_ext80
559  
560  
561  
562  			<enum 0 location_fac_legacy_ext80_status_not_valid>
563  
564  			<enum 1 location_fac_legacy_ext80_status_valid>
565  
566  			<legal all>
567  */
568  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_OFFSET 0x0000001c
569  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_LSB 1
570  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_LEGACY_EXT80_STATUS_MASK 0x00000002
571  
572  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS
573  
574  			Status of rtt_fac_vht
575  
576  
577  
578  			<enum 0 location_fac_vht_status_not_valid>
579  
580  			<enum 1 location_fac_vht_status_valid>
581  
582  			<legal all>
583  */
584  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_OFFSET 0x0000001c
585  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_LSB 2
586  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_STATUS_MASK 0x00000004
587  
588  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS
589  
590  			Status of rtt_fac_vht_ext80
591  
592  
593  
594  			<enum 0 location_fac_vht_ext80_status_not_valid>
595  
596  			<enum 1 location_fac_vht_ext80_status_valid>
597  
598  			<legal all>
599  */
600  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_OFFSET 0x0000001c
601  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_LSB 3
602  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_VHT_EXT80_STATUS_MASK 0x00000008
603  
604  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS
605  
606  			To support fine SIFS adjustment, need to provide FAC
607  			value @ integer number of 320 MHz clock cycles to MAC.  It
608  			is from L-LTF if it is a Legacy packet and from (V)HT/HE-LTF
609  			if it is a (V)HT/HE packet
610  
611  
612  
613  			12 bits, signed, no fractional part
614  
615  			<legal all>
616  */
617  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_OFFSET 0x0000001c
618  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_LSB 4
619  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_MASK 0x0000fff0
620  
621  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS
622  
623  			Status of rtt_fac_sifs
624  
625  			0: not valid
626  
627  			1: valid and from L-LTF
628  
629  			2: valid and from (V)HT/HE-LTF
630  
631  			3: reserved
632  
633  			<legal 0-2>
634  */
635  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_OFFSET 0x0000001c
636  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_LSB 16
637  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_FAC_SIFS_STATUS_MASK 0x00030000
638  
639  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS
640  
641  			Status of channel frequency response dump
642  
643  
644  
645  			<enum 0 location_CFR_dump_not_valid>
646  
647  			<enum 1 location_CFR_dump_valid>
648  
649  			<legal all>
650  */
651  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_OFFSET 0x0000001c
652  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_LSB 18
653  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CFR_STATUS_MASK 0x00040000
654  
655  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS
656  
657  			Status of channel impulse response dump
658  
659  
660  
661  			<enum 0 location_CIR_dump_not_valid>
662  
663  			<enum 1 location_CIR_dump_valid>
664  
665  			<legal all>
666  */
667  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_OFFSET 0x0000001c
668  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_LSB 19
669  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CIR_STATUS_MASK 0x00080000
670  
671  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE
672  
673  			Channel dump size.  It shows how many tones in CFR in
674  			one chain, for example, it will show 52 for Legacy20 and 484
675  			for VHT160
676  
677  
678  
679  			<legal all>
680  */
681  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_OFFSET 0x0000001c
682  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_LSB 20
683  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_CHANNEL_DUMP_SIZE_MASK 0x7ff00000
684  
685  /* Description		PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE
686  
687  			Indicator showing if HW IFFT mode or SW IFFT mode
688  
689  
690  
691  			<enum 0 location_sw_ifft_mode>
692  
693  			<enum 1 location_hw_ifft_mode>
694  
695  			<legal all>
696  */
697  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_OFFSET 0x0000001c
698  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_LSB 31
699  #define PHYRX_PKT_END_INFO_7_RX_LOCATION_INFO_DETAILS_RTT_HW_IFFT_MODE_MASK 0x80000000
700  
701  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS
702  
703  			Indicate if BTCF is used to capture the timestamps
704  
705  
706  
707  			<enum 0 location_not_BTCF_based_ts>
708  
709  			<enum 1 location_BTCF_based_ts>
710  
711  			<legal all>
712  */
713  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_OFFSET 0x00000020
714  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_LSB 0
715  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_BTCF_STATUS_MASK 0x00000001
716  
717  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE
718  
719  			Indicate preamble type
720  
721  
722  
723  			<enum 0 location_preamble_type_legacy>
724  
725  			<enum 1 location_preamble_type_ht>
726  
727  			<enum 2 location_preamble_type_vht>
728  
729  			<enum 3 location_preamble_type_he_su_4xltf>
730  
731  			<enum 4 location_preamble_type_he_su_2xltf>
732  
733  			<enum 5 location_preamble_type_he_su_1xltf>
734  
735  			<enum 6
736  			location_preamble_type_he_trigger_based_ul_4xltf>
737  
738  			<enum 7
739  			location_preamble_type_he_trigger_based_ul_2xltf>
740  
741  			<enum 8
742  			location_preamble_type_he_trigger_based_ul_1xltf>
743  
744  			<enum 9 location_preamble_type_he_mu_4xltf>
745  
746  			<enum 10 location_preamble_type_he_mu_2xltf>
747  
748  			<enum 11 location_preamble_type_he_mu_1xltf>
749  
750  			<enum 12
751  			location_preamble_type_he_extended_range_su_4xltf>
752  
753  			<enum 13
754  			location_preamble_type_he_extended_range_su_2xltf>
755  
756  			<enum 14
757  			location_preamble_type_he_extended_range_su_1xltf>
758  
759  			<legal 0-14>
760  */
761  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_OFFSET 0x00000020
762  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_LSB 1
763  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PREAMBLE_TYPE_MASK 0x0000003e
764  
765  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG
766  
767  			Indicate the bandwidth of L-LTF
768  
769  
770  
771  			<enum 0 location_pkt_bw_20MHz>
772  
773  			<enum 1 location_pkt_bw_40MHz>
774  
775  			<enum 2 location_pkt_bw_80MHz>
776  
777  			<enum 3 location_pkt_bw_160MHz>
778  
779  			<legal all>
780  */
781  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_OFFSET 0x00000020
782  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_LSB 6
783  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_LEG_MASK 0x000000c0
784  
785  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT
786  
787  			Indicate the bandwidth of (V)HT/HE-LTF
788  
789  
790  
791  			<enum 0 location_pkt_bw_20MHz>
792  
793  			<enum 1 location_pkt_bw_40MHz>
794  
795  			<enum 2 location_pkt_bw_80MHz>
796  
797  			<enum 3 location_pkt_bw_160MHz>
798  
799  			<legal all>
800  */
801  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_OFFSET 0x00000020
802  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_LSB 8
803  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_PKT_BW_VHT_MASK 0x00000300
804  
805  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE
806  
807  			Indicate GI (guard interval) type
808  
809  
810  
811  			<enum 0     gi_0_8_us > HE related GI. Can also be used
812  			for HE
813  
814  			<enum 1     gi_0_4_us > HE related GI. Can also be used
815  			for HE
816  
817  			<enum 2     gi_1_6_us > HE related GI
818  
819  			<enum 3     gi_3_2_us > HE related GI
820  
821  			<legal 0 - 3>
822  */
823  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_OFFSET 0x00000020
824  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_LSB 10
825  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_GI_TYPE_MASK 0x00000c00
826  
827  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE
828  
829  			Bits 0~4 indicate MCS rate, if Legacy,
830  
831  			0: 48 Mbps,
832  
833  			1: 24 Mbps,
834  
835  			2: 12 Mbps,
836  
837  			3: 6 Mbps,
838  
839  			4: 54 Mbps,
840  
841  			5: 36 Mbps,
842  
843  			6: 18 Mbps,
844  
845  			7: 9 Mbps,
846  
847  
848  
849  			if HT, 0-7: MCS0-MCS7,
850  
851  			if VHT, 0-9: MCS0-MCS9,
852  
853  
854  			<legal all>
855  */
856  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_OFFSET 0x00000020
857  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_LSB 12
858  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_MCS_RATE_MASK 0x0001f000
859  
860  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN
861  
862  			For 20/40/80, this field shows the first selected Rx
863  			chain that is used in HW IFFT mode
864  
865  
866  
867  			For 80+80, this field shows the selected pri80 Rx chain
868  			that is used in HW IFFT mode
869  
870  
871  
872  			<enum 0 location_strongest_chain_is_0>
873  
874  			<enum 1 location_strongest_chain_is_1>
875  
876  			<enum 2 location_strongest_chain_is_2>
877  
878  			<enum 3 location_strongest_chain_is_3>
879  
880  			<enum 4 location_strongest_chain_is_4>
881  
882  			<enum 5 location_strongest_chain_is_5>
883  
884  			<enum 6 location_strongest_chain_is_6>
885  
886  			<enum 7 location_strongest_chain_is_7>
887  
888  			<legal all>
889  */
890  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_OFFSET 0x00000020
891  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_LSB 17
892  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_MASK 0x000e0000
893  
894  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80
895  
896  			For 20/40/80, this field shows the second selected Rx
897  			chain that is used in HW IFFT mode
898  
899  
900  
901  			For 80+80, this field shows the selected ext80 Rx chain
902  			that is used in HW IFFT mode
903  
904  
905  
906  			<enum 0 location_strongest_chain_is_0>
907  
908  			<enum 1 location_strongest_chain_is_1>
909  
910  			<enum 2 location_strongest_chain_is_2>
911  
912  			<enum 3 location_strongest_chain_is_3>
913  
914  			<enum 4 location_strongest_chain_is_4>
915  
916  			<enum 5 location_strongest_chain_is_5>
917  
918  			<enum 6 location_strongest_chain_is_6>
919  
920  			<enum 7 location_strongest_chain_is_7>
921  
922  			<legal all>
923  */
924  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_OFFSET 0x00000020
925  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_LSB 20
926  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_STRONGEST_CHAIN_EXT80_MASK 0x00700000
927  
928  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK
929  
930  			Rx chain mask, each bit is a Rx chain
931  
932  			0: the Rx chain is not used
933  
934  			1: the Rx chain is used
935  
936  			Support up to 8 Rx chains
937  
938  			<legal all>
939  */
940  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_OFFSET 0x00000020
941  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_LSB 23
942  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RTT_RX_CHAIN_MASK_MASK 0x7f800000
943  
944  /* Description		PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3
945  
946  			<legal 0>
947  */
948  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_OFFSET 0x00000020
949  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_LSB 31
950  #define PHYRX_PKT_END_INFO_8_RX_LOCATION_INFO_DETAILS_RESERVED_3_MASK 0x80000000
951  
952  /* Description		PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS
953  
954  			RX packet start timestamp
955  
956  
957  
958  			It reports the time the first L-STF ADC sample arrived
959  			at RX antenna
960  
961  
962  
963  			clock unit is 480MHz
964  
965  			<legal all>
966  */
967  #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_OFFSET 0x00000024
968  #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_LSB 0
969  #define PHYRX_PKT_END_INFO_9_RX_LOCATION_INFO_DETAILS_RX_START_TS_MASK 0xffffffff
970  
971  /* Description		PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS
972  
973  			RX packet end timestamp
974  
975  
976  
977  			It reports the time the last symbol's last ADC sample
978  			arrived at RX antenna
979  
980  
981  
982  			clock unit is 480MHz
983  
984  			<legal all>
985  */
986  #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_OFFSET 0x00000028
987  #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_LSB 0
988  #define PHYRX_PKT_END_INFO_10_RX_LOCATION_INFO_DETAILS_RX_END_TS_MASK 0xffffffff
989  
990  /* Description		PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START
991  
992  			The phase of the SFO of the first symbol's first FFT
993  			input sample
994  
995  
996  
997  			12 bits, signed 6.6. 6 bits integer to cover -66.7ns to
998  			66.7ns, and 6 bits fraction to provide a resolution of
999  			0.03ns
1000  
1001  
1002  
1003  			clock unit is 480MHz
1004  
1005  			<legal all>
1006  */
1007  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_OFFSET 0x0000002c
1008  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_LSB 0
1009  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_START_MASK 0x00000fff
1010  
1011  /* Description		PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END
1012  
1013  			The phase of the SFO of the last symbol's last FFT input
1014  			sample
1015  
1016  
1017  
1018  			12 bits, signed 6.6. 6 bits integer to cover -66.7ns to
1019  			66.7ns, and 6 bits fraction to provide a resolution of
1020  			0.03ns
1021  
1022  
1023  
1024  			clock unit is 480MHz
1025  
1026  			<legal all>
1027  */
1028  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_OFFSET 0x0000002c
1029  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_LSB 12
1030  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_SFO_PHASE_PKT_END_MASK 0x00fff000
1031  
1032  /* Description		PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8
1033  
1034  			The high 8 bits of the 40 bits pointer pointed to the
1035  			external RTT channel information buffer
1036  
1037  
1038  
1039  			8 bits
1040  
1041  			<legal all>
1042  */
1043  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_OFFSET 0x0000002c
1044  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_LSB 24
1045  #define PHYRX_PKT_END_INFO_11_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_HIGH8_MASK 0xff000000
1046  
1047  /* Description		PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32
1048  
1049  			The low 32 bits of the 40 bits pointer pointed to the
1050  			external RTT channel information buffer
1051  
1052  
1053  
1054  			32 bits
1055  
1056  			<legal all>
1057  */
1058  #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_OFFSET 0x00000030
1059  #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_LSB 0
1060  #define PHYRX_PKT_END_INFO_12_RX_LOCATION_INFO_DETAILS_RTT_CHE_BUFFER_POINTER_LOW32_MASK 0xffffffff
1061  
1062  /* Description		PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT
1063  
1064  			CFO measurement. Needed for passive locationing
1065  
1066  
1067  
1068  			14 bits, signed 1.13. 13 bits fraction to provide a
1069  			resolution of 153 Hz
1070  
1071  
1072  
1073  			In units of cycles/800 ns
1074  
1075  			<legal all>
1076  */
1077  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_OFFSET 0x00000034
1078  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_LSB 0
1079  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CFO_MEASUREMENT_MASK 0x00003fff
1080  
1081  /* Description		PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD
1082  
1083  			Channel delay spread measurement. Needed for selecting
1084  			GI length
1085  
1086  
1087  
1088  			8 bits, unsigned. At 25 ns step. Can represent up to
1089  			6375 ns
1090  
1091  
1092  
1093  			In units of cycles @ 40 MHz
1094  
1095  			<legal all>
1096  */
1097  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_OFFSET 0x00000034
1098  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_LSB 14
1099  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_CHAN_SPREAD_MASK 0x003fc000
1100  
1101  /* Description		PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL
1102  
1103  			Indicate which timing backoff value is used
1104  
1105  
1106  
1107  			<enum 0 timing_backoff_low_rssi>
1108  
1109  			<enum 1 timing_backoff_mid_rssi>
1110  
1111  			<enum 2 timing_backoff_high_rssi>
1112  
1113  			<enum 3 reserved>
1114  
1115  			<legal all>
1116  */
1117  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_OFFSET 0x00000034
1118  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_LSB 22
1119  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RTT_TIMING_BACKOFF_SEL_MASK 0x00c00000
1120  
1121  /* Description		PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8
1122  
1123  			<legal 0>
1124  */
1125  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_OFFSET 0x00000034
1126  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_LSB 24
1127  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RESERVED_8_MASK 0x7f000000
1128  
1129  /* Description		PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID
1130  
1131  			<enum 0 rx_location_info_is_not_valid>
1132  
1133  			<enum 1 rx_location_info_is_valid>
1134  
1135  			<legal all>
1136  */
1137  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_OFFSET 0x00000034
1138  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_LSB 31
1139  #define PHYRX_PKT_END_INFO_13_RX_LOCATION_INFO_DETAILS_RX_LOCATION_INFO_VALID_MASK 0x80000000
1140  
1141   /* EXTERNAL REFERENCE : struct rx_timing_offset_info rx_timing_offset_info_details */
1142  
1143  
1144  /* Description		PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET
1145  
1146  			Cumulative reference frequency error at end of RX
1147  
1148  			<legal all>
1149  */
1150  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_OFFSET 0x00000038
1151  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_LSB 0
1152  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESIDUAL_PHASE_OFFSET_MASK 0x00000fff
1153  
1154  /* Description		PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED
1155  
1156  			<legal 0>
1157  */
1158  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_OFFSET 0x00000038
1159  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_LSB 12
1160  #define PHYRX_PKT_END_INFO_14_RX_TIMING_OFFSET_INFO_DETAILS_RESERVED_MASK 0xfffff000
1161  
1162   /* EXTERNAL REFERENCE : struct receive_rssi_info post_rssi_info_details */
1163  
1164  
1165  /* Description		PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0
1166  
1167  			RSSI of RX PPDU on chain 0 of primary 20 MHz bandwidth.
1168  
1169  			Value of 0x80 indicates invalid.
1170  */
1171  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_OFFSET 0x0000003c
1172  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_LSB 0
1173  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN0_MASK 0x000000ff
1174  
1175  /* Description		PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0
1176  
1177  			RSSI of RX PPDU on chain 0 of extension 20 MHz
1178  			bandwidth.
1179  
1180  			Value of 0x80 indicates invalid.
1181  */
1182  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_OFFSET 0x0000003c
1183  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_LSB 8
1184  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN0_MASK 0x0000ff00
1185  
1186  /* Description		PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0
1187  
1188  			RSSI of RX PPDU on chain 0 of extension 40, low 20 MHz
1189  			bandwidth.
1190  
1191  			Value of 0x80 indicates invalid.
1192  */
1193  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_OFFSET 0x0000003c
1194  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_LSB 16
1195  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN0_MASK 0x00ff0000
1196  
1197  /* Description		PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0
1198  
1199  			RSSI of RX PPDU on chain 0 of extension 40, high 20 MHz
1200  			bandwidth.
1201  
1202  			Value of 0x80 indicates invalid.
1203  */
1204  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_OFFSET 0x0000003c
1205  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_LSB 24
1206  #define PHYRX_PKT_END_INFO_15_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN0_MASK 0xff000000
1207  
1208  /* Description		PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0
1209  
1210  			RSSI of RX PPDU on chain 0 of extension 80, low 20 MHz
1211  			bandwidth.
1212  
1213  			Value of 0x80 indicates invalid.
1214  */
1215  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_OFFSET 0x00000040
1216  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_LSB 0
1217  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN0_MASK 0x000000ff
1218  
1219  /* Description		PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0
1220  
1221  			RSSI of RX PPDU on chain 0 of extension 80, low-high 20
1222  			MHz bandwidth.
1223  
1224  			Value of 0x80 indicates invalid.
1225  */
1226  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_OFFSET 0x00000040
1227  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_LSB 8
1228  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN0_MASK 0x0000ff00
1229  
1230  /* Description		PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0
1231  
1232  			RSSI of RX PPDU on chain 0 of extension 80, high-low 20
1233  			MHz bandwidth.
1234  
1235  			Value of 0x80 indicates invalid.
1236  */
1237  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_OFFSET 0x00000040
1238  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_LSB 16
1239  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN0_MASK 0x00ff0000
1240  
1241  /* Description		PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0
1242  
1243  			RSSI of RX PPDU on chain 0 of extension 80, high 20 MHz
1244  			bandwidth.
1245  
1246  			Value of 0x80 indicates invalid.
1247  */
1248  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_OFFSET 0x00000040
1249  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_LSB 24
1250  #define PHYRX_PKT_END_INFO_16_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN0_MASK 0xff000000
1251  
1252  /* Description		PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1
1253  
1254  			RSSI of RX PPDU on chain 1 of primary 20 MHz bandwidth.
1255  
1256  			Value of 0x80 indicates invalid.
1257  */
1258  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_OFFSET 0x00000044
1259  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_LSB 0
1260  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN1_MASK 0x000000ff
1261  
1262  /* Description		PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1
1263  
1264  			RSSI of RX PPDU on chain 1 of extension 20 MHz
1265  			bandwidth.
1266  
1267  			Value of 0x80 indicates invalid.
1268  */
1269  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_OFFSET 0x00000044
1270  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_LSB 8
1271  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN1_MASK 0x0000ff00
1272  
1273  /* Description		PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1
1274  
1275  			RSSI of RX PPDU on chain 1 of extension 40, low 20 MHz
1276  			bandwidth.
1277  
1278  			Value of 0x80 indicates invalid.
1279  */
1280  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_OFFSET 0x00000044
1281  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_LSB 16
1282  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN1_MASK 0x00ff0000
1283  
1284  /* Description		PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1
1285  
1286  			RSSI of RX PPDU on chain 1 of extension 40, high 20 MHz
1287  			bandwidth.
1288  
1289  			Value of 0x80 indicates invalid.
1290  */
1291  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_OFFSET 0x00000044
1292  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_LSB 24
1293  #define PHYRX_PKT_END_INFO_17_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN1_MASK 0xff000000
1294  
1295  /* Description		PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1
1296  
1297  			RSSI of RX PPDU on chain 1 of extension 80, low 20 MHz
1298  			bandwidth.
1299  
1300  			Value of 0x80 indicates invalid.
1301  */
1302  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_OFFSET 0x00000048
1303  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_LSB 0
1304  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN1_MASK 0x000000ff
1305  
1306  /* Description		PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1
1307  
1308  			RSSI of RX PPDU on chain 1 of extension 80, low-high 20
1309  			MHz bandwidth.
1310  
1311  			Value of 0x80 indicates invalid.
1312  */
1313  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_OFFSET 0x00000048
1314  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_LSB 8
1315  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN1_MASK 0x0000ff00
1316  
1317  /* Description		PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1
1318  
1319  			RSSI of RX PPDU on chain 1 of extension 80, high-low 20
1320  			MHz bandwidth.
1321  
1322  			Value of 0x80 indicates invalid.
1323  */
1324  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_OFFSET 0x00000048
1325  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_LSB 16
1326  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN1_MASK 0x00ff0000
1327  
1328  /* Description		PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1
1329  
1330  			RSSI of RX PPDU on chain 1 of extension 80, high 20 MHz
1331  			bandwidth.
1332  
1333  			Value of 0x80 indicates invalid.
1334  */
1335  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_OFFSET 0x00000048
1336  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_LSB 24
1337  #define PHYRX_PKT_END_INFO_18_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN1_MASK 0xff000000
1338  
1339  /* Description		PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2
1340  
1341  			RSSI of RX PPDU on chain 2 of primary 20 MHz bandwidth.
1342  
1343  			Value of 0x80 indicates invalid.
1344  */
1345  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_OFFSET 0x0000004c
1346  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_LSB 0
1347  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN2_MASK 0x000000ff
1348  
1349  /* Description		PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2
1350  
1351  			RSSI of RX PPDU on chain 2 of extension 20 MHz
1352  			bandwidth.
1353  
1354  			Value of 0x80 indicates invalid.
1355  */
1356  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_OFFSET 0x0000004c
1357  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_LSB 8
1358  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN2_MASK 0x0000ff00
1359  
1360  /* Description		PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2
1361  
1362  			RSSI of RX PPDU on chain 2 of extension 40, low 20 MHz
1363  			bandwidth.
1364  
1365  			Value of 0x80 indicates invalid.
1366  */
1367  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_OFFSET 0x0000004c
1368  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_LSB 16
1369  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN2_MASK 0x00ff0000
1370  
1371  /* Description		PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2
1372  
1373  			RSSI of RX PPDU on chain 2 of extension 40, high 20 MHz
1374  			bandwidth.
1375  
1376  			Value of 0x80 indicates invalid.
1377  */
1378  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_OFFSET 0x0000004c
1379  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_LSB 24
1380  #define PHYRX_PKT_END_INFO_19_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN2_MASK 0xff000000
1381  
1382  /* Description		PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2
1383  
1384  			RSSI of RX PPDU on chain 2 of extension 80, low 20 MHz
1385  			bandwidth.
1386  
1387  			Value of 0x80 indicates invalid.
1388  */
1389  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_OFFSET 0x00000050
1390  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_LSB 0
1391  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN2_MASK 0x000000ff
1392  
1393  /* Description		PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2
1394  
1395  			RSSI of RX PPDU on chain 2 of extension 80, low-high 20
1396  			MHz bandwidth.
1397  
1398  			Value of 0x80 indicates invalid.
1399  */
1400  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_OFFSET 0x00000050
1401  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_LSB 8
1402  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN2_MASK 0x0000ff00
1403  
1404  /* Description		PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2
1405  
1406  			RSSI of RX PPDU on chain 2 of extension 80, high-low 20
1407  			MHz bandwidth.
1408  
1409  			Value of 0x80 indicates invalid.
1410  */
1411  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_OFFSET 0x00000050
1412  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_LSB 16
1413  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN2_MASK 0x00ff0000
1414  
1415  /* Description		PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2
1416  
1417  			RSSI of RX PPDU on chain 2 of extension 80, high 20 MHz
1418  			bandwidth.
1419  
1420  			Value of 0x80 indicates invalid.
1421  */
1422  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_OFFSET 0x00000050
1423  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_LSB 24
1424  #define PHYRX_PKT_END_INFO_20_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN2_MASK 0xff000000
1425  
1426  /* Description		PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3
1427  
1428  			RSSI of RX PPDU on chain 3 of primary 20 MHz bandwidth.
1429  
1430  			Value of 0x80 indicates invalid.
1431  */
1432  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_OFFSET 0x00000054
1433  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_LSB 0
1434  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN3_MASK 0x000000ff
1435  
1436  /* Description		PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3
1437  
1438  			RSSI of RX PPDU on chain 3 of extension 20 MHz
1439  			bandwidth.
1440  
1441  			Value of 0x80 indicates invalid.
1442  */
1443  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_OFFSET 0x00000054
1444  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_LSB 8
1445  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN3_MASK 0x0000ff00
1446  
1447  /* Description		PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3
1448  
1449  			RSSI of RX PPDU on chain 3 of extension 40, low 20 MHz
1450  			bandwidth.
1451  
1452  			Value of 0x80 indicates invalid.
1453  */
1454  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_OFFSET 0x00000054
1455  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_LSB 16
1456  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN3_MASK 0x00ff0000
1457  
1458  /* Description		PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3
1459  
1460  			RSSI of RX PPDU on chain 3 of extension 40, high 20 MHz
1461  			bandwidth.
1462  
1463  			Value of 0x80 indicates invalid.
1464  */
1465  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_OFFSET 0x00000054
1466  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_LSB 24
1467  #define PHYRX_PKT_END_INFO_21_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN3_MASK 0xff000000
1468  
1469  /* Description		PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3
1470  
1471  			RSSI of RX PPDU on chain 3 of extension 80, low 20 MHz
1472  			bandwidth.
1473  
1474  			Value of 0x80 indicates invalid.
1475  */
1476  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_OFFSET 0x00000058
1477  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_LSB 0
1478  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN3_MASK 0x000000ff
1479  
1480  /* Description		PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3
1481  
1482  			RSSI of RX PPDU on chain 3 of extension 80, low-high 20
1483  			MHz bandwidth.
1484  
1485  			Value of 0x80 indicates invalid.
1486  */
1487  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_OFFSET 0x00000058
1488  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_LSB 8
1489  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN3_MASK 0x0000ff00
1490  
1491  /* Description		PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3
1492  
1493  			RSSI of RX PPDU on chain 3 of extension 80, high-low 20
1494  			MHz bandwidth.
1495  
1496  			Value of 0x80 indicates invalid.
1497  */
1498  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_OFFSET 0x00000058
1499  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_LSB 16
1500  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN3_MASK 0x00ff0000
1501  
1502  /* Description		PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3
1503  
1504  			RSSI of RX PPDU on chain 3 of extension 80, high 20 MHz
1505  			bandwidth.
1506  
1507  			Value of 0x80 indicates invalid.
1508  */
1509  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_OFFSET 0x00000058
1510  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_LSB 24
1511  #define PHYRX_PKT_END_INFO_22_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN3_MASK 0xff000000
1512  
1513  /* Description		PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4
1514  
1515  			RSSI of RX PPDU on chain 4 of primary 20 MHz bandwidth.
1516  
1517  			Value of 0x80 indicates invalid.
1518  */
1519  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_OFFSET 0x0000005c
1520  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_LSB 0
1521  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN4_MASK 0x000000ff
1522  
1523  /* Description		PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4
1524  
1525  			RSSI of RX PPDU on chain 4 of extension 20 MHz
1526  			bandwidth.
1527  
1528  			Value of 0x80 indicates invalid.
1529  */
1530  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_OFFSET 0x0000005c
1531  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_LSB 8
1532  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN4_MASK 0x0000ff00
1533  
1534  /* Description		PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4
1535  
1536  			RSSI of RX PPDU on chain 4 of extension 40, low 20 MHz
1537  			bandwidth.
1538  
1539  			Value of 0x80 indicates invalid.
1540  */
1541  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_OFFSET 0x0000005c
1542  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_LSB 16
1543  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN4_MASK 0x00ff0000
1544  
1545  /* Description		PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4
1546  
1547  			RSSI of RX PPDU on chain 4 of extension 40, high 20 MHz
1548  			bandwidth.
1549  
1550  			Value of 0x80 indicates invalid.
1551  */
1552  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_OFFSET 0x0000005c
1553  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_LSB 24
1554  #define PHYRX_PKT_END_INFO_23_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN4_MASK 0xff000000
1555  
1556  /* Description		PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4
1557  
1558  			RSSI of RX PPDU on chain 4 of extension 80, low 20 MHz
1559  			bandwidth.
1560  
1561  			Value of 0x80 indicates invalid.
1562  */
1563  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_OFFSET 0x00000060
1564  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_LSB 0
1565  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN4_MASK 0x000000ff
1566  
1567  /* Description		PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4
1568  
1569  			RSSI of RX PPDU on chain 4 of extension 80, low-high 20
1570  			MHz bandwidth.
1571  
1572  			Value of 0x80 indicates invalid.
1573  */
1574  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_OFFSET 0x00000060
1575  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_LSB 8
1576  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN4_MASK 0x0000ff00
1577  
1578  /* Description		PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4
1579  
1580  			RSSI of RX PPDU on chain 4 of extension 80, high-low 20
1581  			MHz bandwidth.
1582  
1583  			Value of 0x80 indicates invalid.
1584  */
1585  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_OFFSET 0x00000060
1586  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_LSB 16
1587  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN4_MASK 0x00ff0000
1588  
1589  /* Description		PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4
1590  
1591  			RSSI of RX PPDU on chain 4 of extension 80, high 20 MHz
1592  			bandwidth.
1593  
1594  			Value of 0x80 indicates invalid.
1595  */
1596  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_OFFSET 0x00000060
1597  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_LSB 24
1598  #define PHYRX_PKT_END_INFO_24_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN4_MASK 0xff000000
1599  
1600  /* Description		PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5
1601  
1602  			RSSI of RX PPDU on chain 0 of primary 20 MHz bandwidth.
1603  
1604  			Value of 0x80 indicates invalid.
1605  */
1606  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_OFFSET 0x00000064
1607  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_LSB 0
1608  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN5_MASK 0x000000ff
1609  
1610  /* Description		PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5
1611  
1612  			RSSI of RX PPDU on chain 5 of extension 20 MHz
1613  			bandwidth.
1614  
1615  			Value of 0x80 indicates invalid.
1616  */
1617  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_OFFSET 0x00000064
1618  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_LSB 8
1619  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN5_MASK 0x0000ff00
1620  
1621  /* Description		PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5
1622  
1623  			RSSI of RX PPDU on chain 5 of extension 40, low 20 MHz
1624  			bandwidth.
1625  
1626  			Value of 0x80 indicates invalid.
1627  */
1628  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_OFFSET 0x00000064
1629  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_LSB 16
1630  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN5_MASK 0x00ff0000
1631  
1632  /* Description		PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5
1633  
1634  			RSSI of RX PPDU on chain 5 of extension 40, high 20 MHz
1635  			bandwidth.
1636  
1637  			Value of 0x80 indicates invalid.
1638  */
1639  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_OFFSET 0x00000064
1640  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_LSB 24
1641  #define PHYRX_PKT_END_INFO_25_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN5_MASK 0xff000000
1642  
1643  /* Description		PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5
1644  
1645  			RSSI of RX PPDU on chain 5 of extension 80, low 20 MHz
1646  			bandwidth.
1647  
1648  			Value of 0x80 indicates invalid.
1649  */
1650  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_OFFSET 0x00000068
1651  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_LSB 0
1652  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN5_MASK 0x000000ff
1653  
1654  /* Description		PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5
1655  
1656  			RSSI of RX PPDU on chain 5 of extension 80, low-high 20
1657  			MHz bandwidth.
1658  
1659  			Value of 0x80 indicates invalid.
1660  */
1661  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_OFFSET 0x00000068
1662  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_LSB 8
1663  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN5_MASK 0x0000ff00
1664  
1665  /* Description		PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5
1666  
1667  			RSSI of RX PPDU on chain 5 of extension 80, high-low 20
1668  			MHz bandwidth.
1669  
1670  			Value of 0x80 indicates invalid.
1671  */
1672  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_OFFSET 0x00000068
1673  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_LSB 16
1674  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN5_MASK 0x00ff0000
1675  
1676  /* Description		PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5
1677  
1678  			RSSI of RX PPDU on chain 5 of extension 80, high 20 MHz
1679  			bandwidth.
1680  
1681  			Value of 0x80 indicates invalid.
1682  */
1683  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_OFFSET 0x00000068
1684  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_LSB 24
1685  #define PHYRX_PKT_END_INFO_26_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN5_MASK 0xff000000
1686  
1687  /* Description		PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6
1688  
1689  			RSSI of RX PPDU on chain 6 of primary 20 MHz bandwidth.
1690  
1691  			Value of 0x80 indicates invalid.
1692  */
1693  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_OFFSET 0x0000006c
1694  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_LSB 0
1695  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN6_MASK 0x000000ff
1696  
1697  /* Description		PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6
1698  
1699  			RSSI of RX PPDU on chain 6 of extension 20 MHz
1700  			bandwidth.
1701  
1702  			Value of 0x80 indicates invalid.
1703  */
1704  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_OFFSET 0x0000006c
1705  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_LSB 8
1706  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN6_MASK 0x0000ff00
1707  
1708  /* Description		PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6
1709  
1710  			RSSI of RX PPDU on chain 6 of extension 40, low 20 MHz
1711  			bandwidth.
1712  
1713  			Value of 0x80 indicates invalid.
1714  */
1715  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_OFFSET 0x0000006c
1716  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_LSB 16
1717  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN6_MASK 0x00ff0000
1718  
1719  /* Description		PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6
1720  
1721  			RSSI of RX PPDU on chain 6 of extension 40, high 20 MHz
1722  			bandwidth.
1723  
1724  			Value of 0x80 indicates invalid.
1725  */
1726  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_OFFSET 0x0000006c
1727  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_LSB 24
1728  #define PHYRX_PKT_END_INFO_27_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN6_MASK 0xff000000
1729  
1730  /* Description		PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6
1731  
1732  			RSSI of RX PPDU on chain 6 of extension 80, low 20 MHz
1733  			bandwidth.
1734  
1735  			Value of 0x80 indicates invalid.
1736  */
1737  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_OFFSET 0x00000070
1738  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_LSB 0
1739  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN6_MASK 0x000000ff
1740  
1741  /* Description		PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6
1742  
1743  			RSSI of RX PPDU on chain 6 of extension 80, low-high 20
1744  			MHz bandwidth.
1745  
1746  			Value of 0x80 indicates invalid.
1747  */
1748  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_OFFSET 0x00000070
1749  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_LSB 8
1750  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN6_MASK 0x0000ff00
1751  
1752  /* Description		PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6
1753  
1754  			RSSI of RX PPDU on chain 6 of extension 80, high-low 20
1755  			MHz bandwidth.
1756  
1757  			Value of 0x80 indicates invalid.
1758  */
1759  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_OFFSET 0x00000070
1760  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_LSB 16
1761  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN6_MASK 0x00ff0000
1762  
1763  /* Description		PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6
1764  
1765  			RSSI of RX PPDU on chain 6 of extension 80, high 20 MHz
1766  			bandwidth.
1767  
1768  			Value of 0x80 indicates invalid.
1769  */
1770  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_OFFSET 0x00000070
1771  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_LSB 24
1772  #define PHYRX_PKT_END_INFO_28_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN6_MASK 0xff000000
1773  
1774  /* Description		PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7
1775  
1776  			RSSI of RX PPDU on chain 7 of primary 20 MHz bandwidth.
1777  
1778  			Value of 0x80 indicates invalid.
1779  */
1780  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_OFFSET 0x00000074
1781  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_LSB 0
1782  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_PRI20_CHAIN7_MASK 0x000000ff
1783  
1784  /* Description		PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7
1785  
1786  			RSSI of RX PPDU on chain 7 of extension 20 MHz
1787  			bandwidth.
1788  
1789  			Value of 0x80 indicates invalid.
1790  */
1791  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_OFFSET 0x00000074
1792  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_LSB 8
1793  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT20_CHAIN7_MASK 0x0000ff00
1794  
1795  /* Description		PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7
1796  
1797  			RSSI of RX PPDU on chain 7 of extension 40, low 20 MHz
1798  			bandwidth.
1799  
1800  			Value of 0x80 indicates invalid.
1801  */
1802  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_OFFSET 0x00000074
1803  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_LSB 16
1804  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_LOW20_CHAIN7_MASK 0x00ff0000
1805  
1806  /* Description		PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7
1807  
1808  			RSSI of RX PPDU on chain 7 of extension 40, high 20 MHz
1809  			bandwidth.
1810  
1811  			Value of 0x80 indicates invalid.
1812  */
1813  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_OFFSET 0x00000074
1814  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_LSB 24
1815  #define PHYRX_PKT_END_INFO_29_POST_RSSI_INFO_DETAILS_RSSI_EXT40_HIGH20_CHAIN7_MASK 0xff000000
1816  
1817  /* Description		PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7
1818  
1819  			RSSI of RX PPDU on chain 7 of extension 80, low 20 MHz
1820  			bandwidth.
1821  
1822  			Value of 0x80 indicates invalid.
1823  */
1824  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_OFFSET 0x00000078
1825  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_LSB 0
1826  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW20_CHAIN7_MASK 0x000000ff
1827  
1828  /* Description		PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7
1829  
1830  			RSSI of RX PPDU on chain 7 of extension 80, low-high 20
1831  			MHz bandwidth.
1832  
1833  			Value of 0x80 indicates invalid.
1834  */
1835  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_OFFSET 0x00000078
1836  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_LSB 8
1837  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_LOW_HIGH20_CHAIN7_MASK 0x0000ff00
1838  
1839  /* Description		PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7
1840  
1841  			RSSI of RX PPDU on chain 7 of extension 80, high-low 20
1842  			MHz bandwidth.
1843  
1844  			Value of 0x80 indicates invalid.
1845  */
1846  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_OFFSET 0x00000078
1847  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_LSB 16
1848  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH_LOW20_CHAIN7_MASK 0x00ff0000
1849  
1850  /* Description		PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7
1851  
1852  			RSSI of RX PPDU on chain 7 of extension 80, high 20 MHz
1853  			bandwidth.
1854  
1855  			Value of 0x80 indicates invalid.
1856  */
1857  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_OFFSET 0x00000078
1858  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_LSB 24
1859  #define PHYRX_PKT_END_INFO_30_POST_RSSI_INFO_DETAILS_RSSI_EXT80_HIGH20_CHAIN7_MASK 0xff000000
1860  
1861  /* Description		PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0
1862  
1863  			Some PHY micro code status that can be put in here.
1864  			Details of definition within SW specification
1865  
1866  			This field can be used for debugging, FW - SW message
1867  			exchange, etc.
1868  
1869  			It could for example be a pointer to a DDR memory
1870  			location where PHY FW put some debug info.
1871  
1872  			<legal all>
1873  */
1874  #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_OFFSET              0x0000007c
1875  #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_LSB                 0
1876  #define PHYRX_PKT_END_INFO_31_PHY_SW_STATUS_31_0_MASK                0xffffffff
1877  
1878  /* Description		PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32
1879  
1880  			Some PHY micro code status that can be put in here.
1881  			Details of definition within SW specification
1882  
1883  			This field can be used for debugging, FW - SW message
1884  			exchange, etc.
1885  
1886  			It could for example be a pointer to a DDR memory
1887  			location where PHY FW put some debug info.
1888  
1889  			<legal all>
1890  */
1891  #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_OFFSET             0x00000080
1892  #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_LSB                0
1893  #define PHYRX_PKT_END_INFO_32_PHY_SW_STATUS_63_32_MASK               0xffffffff
1894  
1895  
1896  #endif // _PHYRX_PKT_END_INFO_H_
1897