1*5113495bSYour Name 2*5113495bSYour Name /* Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved. 3*5113495bSYour Name * 4*5113495bSYour Name * Permission to use, copy, modify, and/or distribute this software for any 5*5113495bSYour Name * purpose with or without fee is hereby granted, provided that the above 6*5113495bSYour Name * copyright notice and this permission notice appear in all copies. 7*5113495bSYour Name * 8*5113495bSYour Name * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9*5113495bSYour Name * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10*5113495bSYour Name * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11*5113495bSYour Name * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12*5113495bSYour Name * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13*5113495bSYour Name * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14*5113495bSYour Name * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15*5113495bSYour Name */ 16*5113495bSYour Name 17*5113495bSYour Name 18*5113495bSYour Name 19*5113495bSYour Name 20*5113495bSYour Name 21*5113495bSYour Name 22*5113495bSYour Name 23*5113495bSYour Name 24*5113495bSYour Name 25*5113495bSYour Name 26*5113495bSYour Name #ifndef _RXPCU_PPDU_END_LAYOUT_INFO_H_ 27*5113495bSYour Name #define _RXPCU_PPDU_END_LAYOUT_INFO_H_ 28*5113495bSYour Name #if !defined(__ASSEMBLER__) 29*5113495bSYour Name #endif 30*5113495bSYour Name 31*5113495bSYour Name #define NUM_OF_DWORDS_RXPCU_PPDU_END_LAYOUT_INFO 10 32*5113495bSYour Name 33*5113495bSYour Name 34*5113495bSYour Name struct rxpcu_ppdu_end_layout_info { 35*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN 36*5113495bSYour Name uint32_t rssi_legacy_offset : 2, // [1:0] 37*5113495bSYour Name l_sig_a_offset : 6, // [7:2] 38*5113495bSYour Name l_sig_b_offset : 6, // [13:8] 39*5113495bSYour Name ht_sig_offset : 6, // [19:14] 40*5113495bSYour Name vht_sig_a_offset : 6, // [25:20] 41*5113495bSYour Name repeat_l_sig_a_offset : 6; // [31:26] 42*5113495bSYour Name uint32_t he_sig_a_su_offset : 6, // [5:0] 43*5113495bSYour Name he_sig_a_mu_dl_offset : 6, // [11:6] 44*5113495bSYour Name he_sig_a_mu_ul_offset : 6, // [17:12] 45*5113495bSYour Name generic_u_sig_offset : 6, // [23:18] 46*5113495bSYour Name rssi_ht_offset : 7, // [30:24] 47*5113495bSYour Name reserved_1a : 1; // [31:31] 48*5113495bSYour Name uint32_t vht_sig_b_su20_offset : 7, // [6:0] 49*5113495bSYour Name vht_sig_b_su40_offset : 7, // [13:7] 50*5113495bSYour Name vht_sig_b_su80_offset : 7, // [20:14] 51*5113495bSYour Name vht_sig_b_su160_offset : 7, // [27:21] 52*5113495bSYour Name reserved_2a : 4; // [31:28] 53*5113495bSYour Name uint32_t vht_sig_b_mu20_offset : 7, // [6:0] 54*5113495bSYour Name vht_sig_b_mu40_offset : 7, // [13:7] 55*5113495bSYour Name vht_sig_b_mu80_offset : 7, // [20:14] 56*5113495bSYour Name vht_sig_b_mu160_offset : 7, // [27:21] 57*5113495bSYour Name reserved_3a : 4; // [31:28] 58*5113495bSYour Name uint32_t he_sig_b1_mu_offset : 7, // [6:0] 59*5113495bSYour Name he_sig_b2_mu_offset : 7, // [13:7] 60*5113495bSYour Name he_sig_b2_ofdma_offset : 7, // [20:14] 61*5113495bSYour Name first_generic_eht_sig_offset : 7, // [27:21] 62*5113495bSYour Name multiple_generic_eht_sig_included : 1, // [28:28] 63*5113495bSYour Name reserved_4a : 3; // [31:29] 64*5113495bSYour Name uint32_t common_user_info_offset : 7, // [6:0] 65*5113495bSYour Name first_debug_info_offset : 8, // [14:7] 66*5113495bSYour Name multiple_debug_info_included : 1, // [15:15] 67*5113495bSYour Name first_other_receive_info_offset : 8, // [23:16] 68*5113495bSYour Name multiple_other_receive_info_included : 1, // [24:24] 69*5113495bSYour Name reserved_5a : 7; // [31:25] 70*5113495bSYour Name uint32_t data_done_offset : 8, // [7:0] 71*5113495bSYour Name generated_cbf_details_offset : 8, // [15:8] 72*5113495bSYour Name pkt_end_part1_offset : 8, // [23:16] 73*5113495bSYour Name location_offset : 8; // [31:24] 74*5113495bSYour Name uint32_t az_integrity_data_offset : 8, // [7:0] 75*5113495bSYour Name pkt_end_offset : 8, // [15:8] 76*5113495bSYour Name abort_request_ack_offset : 8, // [23:16] 77*5113495bSYour Name reserved_7a : 8; // [31:24] 78*5113495bSYour Name uint32_t reserved_8a : 32; // [31:0] 79*5113495bSYour Name uint32_t reserved_9a : 32; // [31:0] 80*5113495bSYour Name #else 81*5113495bSYour Name uint32_t repeat_l_sig_a_offset : 6, // [31:26] 82*5113495bSYour Name vht_sig_a_offset : 6, // [25:20] 83*5113495bSYour Name ht_sig_offset : 6, // [19:14] 84*5113495bSYour Name l_sig_b_offset : 6, // [13:8] 85*5113495bSYour Name l_sig_a_offset : 6, // [7:2] 86*5113495bSYour Name rssi_legacy_offset : 2; // [1:0] 87*5113495bSYour Name uint32_t reserved_1a : 1, // [31:31] 88*5113495bSYour Name rssi_ht_offset : 7, // [30:24] 89*5113495bSYour Name generic_u_sig_offset : 6, // [23:18] 90*5113495bSYour Name he_sig_a_mu_ul_offset : 6, // [17:12] 91*5113495bSYour Name he_sig_a_mu_dl_offset : 6, // [11:6] 92*5113495bSYour Name he_sig_a_su_offset : 6; // [5:0] 93*5113495bSYour Name uint32_t reserved_2a : 4, // [31:28] 94*5113495bSYour Name vht_sig_b_su160_offset : 7, // [27:21] 95*5113495bSYour Name vht_sig_b_su80_offset : 7, // [20:14] 96*5113495bSYour Name vht_sig_b_su40_offset : 7, // [13:7] 97*5113495bSYour Name vht_sig_b_su20_offset : 7; // [6:0] 98*5113495bSYour Name uint32_t reserved_3a : 4, // [31:28] 99*5113495bSYour Name vht_sig_b_mu160_offset : 7, // [27:21] 100*5113495bSYour Name vht_sig_b_mu80_offset : 7, // [20:14] 101*5113495bSYour Name vht_sig_b_mu40_offset : 7, // [13:7] 102*5113495bSYour Name vht_sig_b_mu20_offset : 7; // [6:0] 103*5113495bSYour Name uint32_t reserved_4a : 3, // [31:29] 104*5113495bSYour Name multiple_generic_eht_sig_included : 1, // [28:28] 105*5113495bSYour Name first_generic_eht_sig_offset : 7, // [27:21] 106*5113495bSYour Name he_sig_b2_ofdma_offset : 7, // [20:14] 107*5113495bSYour Name he_sig_b2_mu_offset : 7, // [13:7] 108*5113495bSYour Name he_sig_b1_mu_offset : 7; // [6:0] 109*5113495bSYour Name uint32_t reserved_5a : 7, // [31:25] 110*5113495bSYour Name multiple_other_receive_info_included : 1, // [24:24] 111*5113495bSYour Name first_other_receive_info_offset : 8, // [23:16] 112*5113495bSYour Name multiple_debug_info_included : 1, // [15:15] 113*5113495bSYour Name first_debug_info_offset : 8, // [14:7] 114*5113495bSYour Name common_user_info_offset : 7; // [6:0] 115*5113495bSYour Name uint32_t location_offset : 8, // [31:24] 116*5113495bSYour Name pkt_end_part1_offset : 8, // [23:16] 117*5113495bSYour Name generated_cbf_details_offset : 8, // [15:8] 118*5113495bSYour Name data_done_offset : 8; // [7:0] 119*5113495bSYour Name uint32_t reserved_7a : 8, // [31:24] 120*5113495bSYour Name abort_request_ack_offset : 8, // [23:16] 121*5113495bSYour Name pkt_end_offset : 8, // [15:8] 122*5113495bSYour Name az_integrity_data_offset : 8; // [7:0] 123*5113495bSYour Name uint32_t reserved_8a : 32; // [31:0] 124*5113495bSYour Name uint32_t reserved_9a : 32; // [31:0] 125*5113495bSYour Name #endif 126*5113495bSYour Name }; 127*5113495bSYour Name 128*5113495bSYour Name 129*5113495bSYour Name /* Description RSSI_LEGACY_OFFSET 130*5113495bSYour Name 131*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_RSSI_LEGACY' within 132*5113495bSYour Name 'RX_PPDU_END'<legal 1, 2> 133*5113495bSYour Name */ 134*5113495bSYour Name 135*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_LEGACY_OFFSET_OFFSET 0x00000000 136*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_LEGACY_OFFSET_LSB 0 137*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_LEGACY_OFFSET_MSB 1 138*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_LEGACY_OFFSET_MASK 0x00000003 139*5113495bSYour Name 140*5113495bSYour Name 141*5113495bSYour Name /* Description L_SIG_A_OFFSET 142*5113495bSYour Name 143*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_L_SIG_A' within 'RX_PPDU_END' 144*5113495bSYour Name Set to zero if the TLV is not included<legal 0, 44, 46> 145*5113495bSYour Name */ 146*5113495bSYour Name 147*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_A_OFFSET_OFFSET 0x00000000 148*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_A_OFFSET_LSB 2 149*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_A_OFFSET_MSB 7 150*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_A_OFFSET_MASK 0x000000fc 151*5113495bSYour Name 152*5113495bSYour Name 153*5113495bSYour Name /* Description L_SIG_B_OFFSET 154*5113495bSYour Name 155*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_L_SIG_A' within 'RX_PPDU_END' 156*5113495bSYour Name Set to zero if the TLV is not included<legal 0, 44, 46> 157*5113495bSYour Name */ 158*5113495bSYour Name 159*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_B_OFFSET_OFFSET 0x00000000 160*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_B_OFFSET_LSB 8 161*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_B_OFFSET_MSB 13 162*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_L_SIG_B_OFFSET_MASK 0x00003f00 163*5113495bSYour Name 164*5113495bSYour Name 165*5113495bSYour Name /* Description HT_SIG_OFFSET 166*5113495bSYour Name 167*5113495bSYour Name Offset of 'PHYRX_HT_SIG' within 'RX_PPDU_END' Set to zero 168*5113495bSYour Name if the TLV is not included<legal 0, 46, 50> 169*5113495bSYour Name */ 170*5113495bSYour Name 171*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HT_SIG_OFFSET_OFFSET 0x00000000 172*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HT_SIG_OFFSET_LSB 14 173*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HT_SIG_OFFSET_MSB 19 174*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HT_SIG_OFFSET_MASK 0x000fc000 175*5113495bSYour Name 176*5113495bSYour Name 177*5113495bSYour Name /* Description VHT_SIG_A_OFFSET 178*5113495bSYour Name 179*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_A' within 'RX_PPDU_END' 180*5113495bSYour Name Set to zero if the TLV is not included<legal 0, 46, 50> 181*5113495bSYour Name */ 182*5113495bSYour Name 183*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_A_OFFSET_OFFSET 0x00000000 184*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_A_OFFSET_LSB 20 185*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_A_OFFSET_MSB 25 186*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_A_OFFSET_MASK 0x03f00000 187*5113495bSYour Name 188*5113495bSYour Name 189*5113495bSYour Name /* Description REPEAT_L_SIG_A_OFFSET 190*5113495bSYour Name 191*5113495bSYour Name Offset in units of 4 bytes of the repeat 'PHYRX_L_SIG_A' (in 192*5113495bSYour Name HE and EHT cases) within 'RX_PPDU_END' 193*5113495bSYour Name 194*5113495bSYour Name Set to zero if the TLV is not included 195*5113495bSYour Name <legal 0, 46, 50> 196*5113495bSYour Name */ 197*5113495bSYour Name 198*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_REPEAT_L_SIG_A_OFFSET_OFFSET 0x00000000 199*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_REPEAT_L_SIG_A_OFFSET_LSB 26 200*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_REPEAT_L_SIG_A_OFFSET_MSB 31 201*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_REPEAT_L_SIG_A_OFFSET_MASK 0xfc000000 202*5113495bSYour Name 203*5113495bSYour Name 204*5113495bSYour Name /* Description HE_SIG_A_SU_OFFSET 205*5113495bSYour Name 206*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_A_SU' within 207*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 208*5113495bSYour Name 0, 48, 54> 209*5113495bSYour Name */ 210*5113495bSYour Name 211*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_SU_OFFSET_OFFSET 0x00000004 212*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_SU_OFFSET_LSB 0 213*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_SU_OFFSET_MSB 5 214*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_SU_OFFSET_MASK 0x0000003f 215*5113495bSYour Name 216*5113495bSYour Name 217*5113495bSYour Name /* Description HE_SIG_A_MU_DL_OFFSET 218*5113495bSYour Name 219*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_A_MU_DL' within 220*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 221*5113495bSYour Name 0, 48, 54> 222*5113495bSYour Name */ 223*5113495bSYour Name 224*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_DL_OFFSET_OFFSET 0x00000004 225*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_DL_OFFSET_LSB 6 226*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_DL_OFFSET_MSB 11 227*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_DL_OFFSET_MASK 0x00000fc0 228*5113495bSYour Name 229*5113495bSYour Name 230*5113495bSYour Name /* Description HE_SIG_A_MU_UL_OFFSET 231*5113495bSYour Name 232*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_A_MU_UL' within 233*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 234*5113495bSYour Name 0, 48, 54> 235*5113495bSYour Name */ 236*5113495bSYour Name 237*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_UL_OFFSET_OFFSET 0x00000004 238*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_UL_OFFSET_LSB 12 239*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_UL_OFFSET_MSB 17 240*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_A_MU_UL_OFFSET_MASK 0x0003f000 241*5113495bSYour Name 242*5113495bSYour Name 243*5113495bSYour Name /* Description GENERIC_U_SIG_OFFSET 244*5113495bSYour Name 245*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_GENERIC_U_SIG' within 246*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 247*5113495bSYour Name 0, 48, 54> 248*5113495bSYour Name */ 249*5113495bSYour Name 250*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERIC_U_SIG_OFFSET_OFFSET 0x00000004 251*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERIC_U_SIG_OFFSET_LSB 18 252*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERIC_U_SIG_OFFSET_MSB 23 253*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERIC_U_SIG_OFFSET_MASK 0x00fc0000 254*5113495bSYour Name 255*5113495bSYour Name 256*5113495bSYour Name /* Description RSSI_HT_OFFSET 257*5113495bSYour Name 258*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_RSSI_HT' within 'RX_PPDU_END' 259*5113495bSYour Name Set to zero if the TLV is not included<legal 0, 49-127> 260*5113495bSYour Name */ 261*5113495bSYour Name 262*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_HT_OFFSET_OFFSET 0x00000004 263*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_HT_OFFSET_LSB 24 264*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_HT_OFFSET_MSB 30 265*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RSSI_HT_OFFSET_MASK 0x7f000000 266*5113495bSYour Name 267*5113495bSYour Name 268*5113495bSYour Name /* Description RESERVED_1A 269*5113495bSYour Name 270*5113495bSYour Name <legal 0> 271*5113495bSYour Name */ 272*5113495bSYour Name 273*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_1A_OFFSET 0x00000004 274*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_1A_LSB 31 275*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_1A_MSB 31 276*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_1A_MASK 0x80000000 277*5113495bSYour Name 278*5113495bSYour Name 279*5113495bSYour Name /* Description VHT_SIG_B_SU20_OFFSET 280*5113495bSYour Name 281*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_SU20' within 282*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 283*5113495bSYour Name 0, 67, 74> 284*5113495bSYour Name */ 285*5113495bSYour Name 286*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU20_OFFSET_OFFSET 0x00000008 287*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU20_OFFSET_LSB 0 288*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU20_OFFSET_MSB 6 289*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU20_OFFSET_MASK 0x0000007f 290*5113495bSYour Name 291*5113495bSYour Name 292*5113495bSYour Name /* Description VHT_SIG_B_SU40_OFFSET 293*5113495bSYour Name 294*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_SU40' within 295*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 296*5113495bSYour Name 0, 67, 74> 297*5113495bSYour Name */ 298*5113495bSYour Name 299*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU40_OFFSET_OFFSET 0x00000008 300*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU40_OFFSET_LSB 7 301*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU40_OFFSET_MSB 13 302*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU40_OFFSET_MASK 0x00003f80 303*5113495bSYour Name 304*5113495bSYour Name 305*5113495bSYour Name /* Description VHT_SIG_B_SU80_OFFSET 306*5113495bSYour Name 307*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_SU80' within 308*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 309*5113495bSYour Name 0, 67, 74> 310*5113495bSYour Name */ 311*5113495bSYour Name 312*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU80_OFFSET_OFFSET 0x00000008 313*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU80_OFFSET_LSB 14 314*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU80_OFFSET_MSB 20 315*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU80_OFFSET_MASK 0x001fc000 316*5113495bSYour Name 317*5113495bSYour Name 318*5113495bSYour Name /* Description VHT_SIG_B_SU160_OFFSET 319*5113495bSYour Name 320*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_SU160' within 321*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 322*5113495bSYour Name 0, 67, 74> 323*5113495bSYour Name */ 324*5113495bSYour Name 325*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU160_OFFSET_OFFSET 0x00000008 326*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU160_OFFSET_LSB 21 327*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU160_OFFSET_MSB 27 328*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_SU160_OFFSET_MASK 0x0fe00000 329*5113495bSYour Name 330*5113495bSYour Name 331*5113495bSYour Name /* Description RESERVED_2A 332*5113495bSYour Name 333*5113495bSYour Name <legal 0> 334*5113495bSYour Name */ 335*5113495bSYour Name 336*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_2A_OFFSET 0x00000008 337*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_2A_LSB 28 338*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_2A_MSB 31 339*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_2A_MASK 0xf0000000 340*5113495bSYour Name 341*5113495bSYour Name 342*5113495bSYour Name /* Description VHT_SIG_B_MU20_OFFSET 343*5113495bSYour Name 344*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_MU20' within 345*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 346*5113495bSYour Name 0, 67, 74> 347*5113495bSYour Name */ 348*5113495bSYour Name 349*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU20_OFFSET_OFFSET 0x0000000c 350*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU20_OFFSET_LSB 0 351*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU20_OFFSET_MSB 6 352*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU20_OFFSET_MASK 0x0000007f 353*5113495bSYour Name 354*5113495bSYour Name 355*5113495bSYour Name /* Description VHT_SIG_B_MU40_OFFSET 356*5113495bSYour Name 357*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_MU40' within 358*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 359*5113495bSYour Name 0, 67, 74> 360*5113495bSYour Name */ 361*5113495bSYour Name 362*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU40_OFFSET_OFFSET 0x0000000c 363*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU40_OFFSET_LSB 7 364*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU40_OFFSET_MSB 13 365*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU40_OFFSET_MASK 0x00003f80 366*5113495bSYour Name 367*5113495bSYour Name 368*5113495bSYour Name /* Description VHT_SIG_B_MU80_OFFSET 369*5113495bSYour Name 370*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_MU80' within 371*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 372*5113495bSYour Name 0, 67, 74> 373*5113495bSYour Name */ 374*5113495bSYour Name 375*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU80_OFFSET_OFFSET 0x0000000c 376*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU80_OFFSET_LSB 14 377*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU80_OFFSET_MSB 20 378*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU80_OFFSET_MASK 0x001fc000 379*5113495bSYour Name 380*5113495bSYour Name 381*5113495bSYour Name /* Description VHT_SIG_B_MU160_OFFSET 382*5113495bSYour Name 383*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_VHT_SIG_B_MU160' within 384*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 385*5113495bSYour Name 0, 67, 74> 386*5113495bSYour Name */ 387*5113495bSYour Name 388*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU160_OFFSET_OFFSET 0x0000000c 389*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU160_OFFSET_LSB 21 390*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU160_OFFSET_MSB 27 391*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_VHT_SIG_B_MU160_OFFSET_MASK 0x0fe00000 392*5113495bSYour Name 393*5113495bSYour Name 394*5113495bSYour Name /* Description RESERVED_3A 395*5113495bSYour Name 396*5113495bSYour Name <legal 0> 397*5113495bSYour Name */ 398*5113495bSYour Name 399*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_3A_OFFSET 0x0000000c 400*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_3A_LSB 28 401*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_3A_MSB 31 402*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_3A_MASK 0xf0000000 403*5113495bSYour Name 404*5113495bSYour Name 405*5113495bSYour Name /* Description HE_SIG_B1_MU_OFFSET 406*5113495bSYour Name 407*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_B1_MU' within 408*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 409*5113495bSYour Name 0, 51, 58> 410*5113495bSYour Name */ 411*5113495bSYour Name 412*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B1_MU_OFFSET_OFFSET 0x00000010 413*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B1_MU_OFFSET_LSB 0 414*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B1_MU_OFFSET_MSB 6 415*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B1_MU_OFFSET_MASK 0x0000007f 416*5113495bSYour Name 417*5113495bSYour Name 418*5113495bSYour Name /* Description HE_SIG_B2_MU_OFFSET 419*5113495bSYour Name 420*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_B2_MU' within 421*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 422*5113495bSYour Name 0, 51, 58> 423*5113495bSYour Name */ 424*5113495bSYour Name 425*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_MU_OFFSET_OFFSET 0x00000010 426*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_MU_OFFSET_LSB 7 427*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_MU_OFFSET_MSB 13 428*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_MU_OFFSET_MASK 0x00003f80 429*5113495bSYour Name 430*5113495bSYour Name 431*5113495bSYour Name /* Description HE_SIG_B2_OFDMA_OFFSET 432*5113495bSYour Name 433*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_HE_SIG_B2_OFDMA' within 434*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 435*5113495bSYour Name 0, 53, 62> 436*5113495bSYour Name */ 437*5113495bSYour Name 438*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_OFDMA_OFFSET_OFFSET 0x00000010 439*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_OFDMA_OFFSET_LSB 14 440*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_OFDMA_OFFSET_MSB 20 441*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_HE_SIG_B2_OFDMA_OFFSET_MASK 0x001fc000 442*5113495bSYour Name 443*5113495bSYour Name 444*5113495bSYour Name /* Description FIRST_GENERIC_EHT_SIG_OFFSET 445*5113495bSYour Name 446*5113495bSYour Name Offset in units of 4 bytes of the first 'PHYRX_GENERIC_EHT_SIG' 447*5113495bSYour Name within 'RX_PPDU_END' Set to zero if the TLV is not included<legal 448*5113495bSYour Name 0, 51, 58> 449*5113495bSYour Name */ 450*5113495bSYour Name 451*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_GENERIC_EHT_SIG_OFFSET_OFFSET 0x00000010 452*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_GENERIC_EHT_SIG_OFFSET_LSB 21 453*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_GENERIC_EHT_SIG_OFFSET_MSB 27 454*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_GENERIC_EHT_SIG_OFFSET_MASK 0x0fe00000 455*5113495bSYour Name 456*5113495bSYour Name 457*5113495bSYour Name /* Description MULTIPLE_GENERIC_EHT_SIG_INCLUDED 458*5113495bSYour Name 459*5113495bSYour Name Set to one if more than one 'PHYRX_GENERIC_EHT_SIG' TLVs 460*5113495bSYour Name are included in 'RX_PPDU_END,' set to zero otherwise 461*5113495bSYour Name <legal all> 462*5113495bSYour Name */ 463*5113495bSYour Name 464*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_GENERIC_EHT_SIG_INCLUDED_OFFSET 0x00000010 465*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_GENERIC_EHT_SIG_INCLUDED_LSB 28 466*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_GENERIC_EHT_SIG_INCLUDED_MSB 28 467*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_GENERIC_EHT_SIG_INCLUDED_MASK 0x10000000 468*5113495bSYour Name 469*5113495bSYour Name 470*5113495bSYour Name /* Description RESERVED_4A 471*5113495bSYour Name 472*5113495bSYour Name <legal 0> 473*5113495bSYour Name */ 474*5113495bSYour Name 475*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_4A_OFFSET 0x00000010 476*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_4A_LSB 29 477*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_4A_MSB 31 478*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_4A_MASK 0xe0000000 479*5113495bSYour Name 480*5113495bSYour Name 481*5113495bSYour Name /* Description COMMON_USER_INFO_OFFSET 482*5113495bSYour Name 483*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_COMMON_USER_INFO' within 484*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 485*5113495bSYour Name 0, 46, 50, 67, 70-127> 486*5113495bSYour Name */ 487*5113495bSYour Name 488*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_COMMON_USER_INFO_OFFSET_OFFSET 0x00000014 489*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_COMMON_USER_INFO_OFFSET_LSB 0 490*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_COMMON_USER_INFO_OFFSET_MSB 6 491*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_COMMON_USER_INFO_OFFSET_MASK 0x0000007f 492*5113495bSYour Name 493*5113495bSYour Name 494*5113495bSYour Name /* Description FIRST_DEBUG_INFO_OFFSET 495*5113495bSYour Name 496*5113495bSYour Name Offset in units of 4 bytes of the first 'PHYRX_DEBUG_INFO' 497*5113495bSYour Name within 'RX_PPDU_END' Set to zero if the TLV is not included<legal 498*5113495bSYour Name all> 499*5113495bSYour Name */ 500*5113495bSYour Name 501*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_DEBUG_INFO_OFFSET_OFFSET 0x00000014 502*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_DEBUG_INFO_OFFSET_LSB 7 503*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_DEBUG_INFO_OFFSET_MSB 14 504*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_DEBUG_INFO_OFFSET_MASK 0x00007f80 505*5113495bSYour Name 506*5113495bSYour Name 507*5113495bSYour Name /* Description MULTIPLE_DEBUG_INFO_INCLUDED 508*5113495bSYour Name 509*5113495bSYour Name Set to one if more than one 'PHYRX_DEBUG_INFO' TLVs are 510*5113495bSYour Name included in 'RX_PPDU_END,' set to zero otherwise<legal all> 511*5113495bSYour Name 512*5113495bSYour Name */ 513*5113495bSYour Name 514*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_DEBUG_INFO_INCLUDED_OFFSET 0x00000014 515*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_DEBUG_INFO_INCLUDED_LSB 15 516*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_DEBUG_INFO_INCLUDED_MSB 15 517*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_DEBUG_INFO_INCLUDED_MASK 0x00008000 518*5113495bSYour Name 519*5113495bSYour Name 520*5113495bSYour Name /* Description FIRST_OTHER_RECEIVE_INFO_OFFSET 521*5113495bSYour Name 522*5113495bSYour Name Offset in units of 4 bytes of the first 'PHYRX_OTHER_RECEIVE_INFO' 523*5113495bSYour Name within 'RX_PPDU_END' Set to zero if the TLV is not included<legal 524*5113495bSYour Name all> 525*5113495bSYour Name */ 526*5113495bSYour Name 527*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_OTHER_RECEIVE_INFO_OFFSET_OFFSET 0x00000014 528*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_OTHER_RECEIVE_INFO_OFFSET_LSB 16 529*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_OTHER_RECEIVE_INFO_OFFSET_MSB 23 530*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_FIRST_OTHER_RECEIVE_INFO_OFFSET_MASK 0x00ff0000 531*5113495bSYour Name 532*5113495bSYour Name 533*5113495bSYour Name /* Description MULTIPLE_OTHER_RECEIVE_INFO_INCLUDED 534*5113495bSYour Name 535*5113495bSYour Name Set to one if more than one 'PHYRX_OTHER_RECEIVE_INFO' TLVs 536*5113495bSYour Name are included in 'RX_PPDU_END,' set to zero otherwise<legal 537*5113495bSYour Name all> 538*5113495bSYour Name */ 539*5113495bSYour Name 540*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_OTHER_RECEIVE_INFO_INCLUDED_OFFSET 0x00000014 541*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_OTHER_RECEIVE_INFO_INCLUDED_LSB 24 542*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_OTHER_RECEIVE_INFO_INCLUDED_MSB 24 543*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_MULTIPLE_OTHER_RECEIVE_INFO_INCLUDED_MASK 0x01000000 544*5113495bSYour Name 545*5113495bSYour Name 546*5113495bSYour Name /* Description RESERVED_5A 547*5113495bSYour Name 548*5113495bSYour Name <legal 0> 549*5113495bSYour Name */ 550*5113495bSYour Name 551*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_5A_OFFSET 0x00000014 552*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_5A_LSB 25 553*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_5A_MSB 31 554*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_5A_MASK 0xfe000000 555*5113495bSYour Name 556*5113495bSYour Name 557*5113495bSYour Name /* Description DATA_DONE_OFFSET 558*5113495bSYour Name 559*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_DATA_DONE' within 'RX_PPDU_END' 560*5113495bSYour Name Set to zero if the TLV is not included<legal all> 561*5113495bSYour Name */ 562*5113495bSYour Name 563*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_DATA_DONE_OFFSET_OFFSET 0x00000018 564*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_DATA_DONE_OFFSET_LSB 0 565*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_DATA_DONE_OFFSET_MSB 7 566*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_DATA_DONE_OFFSET_MASK 0x000000ff 567*5113495bSYour Name 568*5113495bSYour Name 569*5113495bSYour Name /* Description GENERATED_CBF_DETAILS_OFFSET 570*5113495bSYour Name 571*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_GENERATED_CBF_DETAILS' 572*5113495bSYour Name within 'RX_PPDU_END'Set to zero if the TLV is not included<legal 573*5113495bSYour Name 0, 70-127> 574*5113495bSYour Name */ 575*5113495bSYour Name 576*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERATED_CBF_DETAILS_OFFSET_OFFSET 0x00000018 577*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERATED_CBF_DETAILS_OFFSET_LSB 8 578*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERATED_CBF_DETAILS_OFFSET_MSB 15 579*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_GENERATED_CBF_DETAILS_OFFSET_MASK 0x0000ff00 580*5113495bSYour Name 581*5113495bSYour Name 582*5113495bSYour Name /* Description PKT_END_PART1_OFFSET 583*5113495bSYour Name 584*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_PKT_END_PART1' within 585*5113495bSYour Name 'RX_PPDU_END' Set to zero if the TLV is not included<legal 586*5113495bSYour Name all> 587*5113495bSYour Name */ 588*5113495bSYour Name 589*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_PART1_OFFSET_OFFSET 0x00000018 590*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_PART1_OFFSET_LSB 16 591*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_PART1_OFFSET_MSB 23 592*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_PART1_OFFSET_MASK 0x00ff0000 593*5113495bSYour Name 594*5113495bSYour Name 595*5113495bSYour Name /* Description LOCATION_OFFSET 596*5113495bSYour Name 597*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_LOCATION' within 'RX_PPDU_END' 598*5113495bSYour Name Set to zero if the TLV is not included<legal all> 599*5113495bSYour Name */ 600*5113495bSYour Name 601*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_LOCATION_OFFSET_OFFSET 0x00000018 602*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_LOCATION_OFFSET_LSB 24 603*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_LOCATION_OFFSET_MSB 31 604*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_LOCATION_OFFSET_MASK 0xff000000 605*5113495bSYour Name 606*5113495bSYour Name 607*5113495bSYour Name /* Description AZ_INTEGRITY_DATA_OFFSET 608*5113495bSYour Name 609*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_11AZ_INTEGRITY_DATA' 610*5113495bSYour Name within 'RX_PPDU_END' 611*5113495bSYour Name 612*5113495bSYour Name Set to zero if the TLV is not included 613*5113495bSYour Name <legal all> 614*5113495bSYour Name */ 615*5113495bSYour Name 616*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_AZ_INTEGRITY_DATA_OFFSET_OFFSET 0x0000001c 617*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_AZ_INTEGRITY_DATA_OFFSET_LSB 0 618*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_AZ_INTEGRITY_DATA_OFFSET_MSB 7 619*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_AZ_INTEGRITY_DATA_OFFSET_MASK 0x000000ff 620*5113495bSYour Name 621*5113495bSYour Name 622*5113495bSYour Name /* Description PKT_END_OFFSET 623*5113495bSYour Name 624*5113495bSYour Name Offset in units of 4 bytes of 'PHYRX_PKT_END' within 'RX_PPDU_END' 625*5113495bSYour Name Set to zero if the TLV is not included<legal all> 626*5113495bSYour Name */ 627*5113495bSYour Name 628*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_OFFSET_OFFSET 0x0000001c 629*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_OFFSET_LSB 8 630*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_OFFSET_MSB 15 631*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_PKT_END_OFFSET_MASK 0x0000ff00 632*5113495bSYour Name 633*5113495bSYour Name 634*5113495bSYour Name /* Description ABORT_REQUEST_ACK_OFFSET 635*5113495bSYour Name 636*5113495bSYour Name Offset in units of 4 bytes of either 'PHYRX_ABORT_REQUEST' 637*5113495bSYour Name or 'PHYRX_ABORT_ACK' within 'RX_PPDU_END' 638*5113495bSYour Name 639*5113495bSYour Name Set to zero if the TLV is not included 640*5113495bSYour Name <legal all> 641*5113495bSYour Name */ 642*5113495bSYour Name 643*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_ABORT_REQUEST_ACK_OFFSET_OFFSET 0x0000001c 644*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_ABORT_REQUEST_ACK_OFFSET_LSB 16 645*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_ABORT_REQUEST_ACK_OFFSET_MSB 23 646*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_ABORT_REQUEST_ACK_OFFSET_MASK 0x00ff0000 647*5113495bSYour Name 648*5113495bSYour Name 649*5113495bSYour Name /* Description RESERVED_7A 650*5113495bSYour Name 651*5113495bSYour Name Spare space in case the widths of the above offsets grow<legal 652*5113495bSYour Name all> 653*5113495bSYour Name */ 654*5113495bSYour Name 655*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_7A_OFFSET 0x0000001c 656*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_7A_LSB 24 657*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_7A_MSB 31 658*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_7A_MASK 0xff000000 659*5113495bSYour Name 660*5113495bSYour Name 661*5113495bSYour Name /* Description RESERVED_8A 662*5113495bSYour Name 663*5113495bSYour Name Spare space in case the widths of the above offsets grow 664*5113495bSYour Name 665*5113495bSYour Name <legal all> 666*5113495bSYour Name */ 667*5113495bSYour Name 668*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_8A_OFFSET 0x00000020 669*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_8A_LSB 0 670*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_8A_MSB 31 671*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_8A_MASK 0xffffffff 672*5113495bSYour Name 673*5113495bSYour Name 674*5113495bSYour Name /* Description RESERVED_9A 675*5113495bSYour Name 676*5113495bSYour Name Spare space in case the widths of the above offsets grow 677*5113495bSYour Name 678*5113495bSYour Name <legal all> 679*5113495bSYour Name */ 680*5113495bSYour Name 681*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_9A_OFFSET 0x00000024 682*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_9A_LSB 0 683*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_9A_MSB 31 684*5113495bSYour Name #define RXPCU_PPDU_END_LAYOUT_INFO_RESERVED_9A_MASK 0xffffffff 685*5113495bSYour Name 686*5113495bSYour Name 687*5113495bSYour Name 688*5113495bSYour Name #endif // RXPCU_PPDU_END_LAYOUT_INFO 689