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 _OFDMA_TRIGGER_DETAILS_H_ 27*5113495bSYour Name #define _OFDMA_TRIGGER_DETAILS_H_ 28*5113495bSYour Name #if !defined(__ASSEMBLER__) 29*5113495bSYour Name #endif 30*5113495bSYour Name 31*5113495bSYour Name #include "mlo_sta_id_details.h" 32*5113495bSYour Name #define NUM_OF_DWORDS_OFDMA_TRIGGER_DETAILS 22 33*5113495bSYour Name 34*5113495bSYour Name #define NUM_OF_QWORDS_OFDMA_TRIGGER_DETAILS 11 35*5113495bSYour Name 36*5113495bSYour Name 37*5113495bSYour Name struct ofdma_trigger_details { 38*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN 39*5113495bSYour Name uint32_t ax_trigger_source : 1, // [0:0] 40*5113495bSYour Name rx_trigger_frame_user_source : 2, // [2:1] 41*5113495bSYour Name received_bandwidth : 3, // [5:3] 42*5113495bSYour Name txop_duration_all_ones : 1, // [6:6] 43*5113495bSYour Name eht_trigger_response : 1, // [7:7] 44*5113495bSYour Name pre_rssi_comb : 8, // [15:8] 45*5113495bSYour Name rssi_comb : 8, // [23:16] 46*5113495bSYour Name rxpcu_pcie_l0_req_duration : 8; // [31:24] 47*5113495bSYour Name uint32_t he_trigger_ul_ppdu_length : 5, // [4:0] 48*5113495bSYour Name he_trigger_ru_allocation : 8, // [12:5] 49*5113495bSYour Name he_trigger_dl_tx_power : 5, // [17:13] 50*5113495bSYour Name he_trigger_ul_target_rssi : 5, // [22:18] 51*5113495bSYour Name he_trigger_ul_mcs : 2, // [24:23] 52*5113495bSYour Name he_trigger_reserved : 1, // [25:25] 53*5113495bSYour Name bss_color : 6; // [31:26] 54*5113495bSYour Name uint32_t trigger_type : 4, // [3:0] 55*5113495bSYour Name lsig_response_length : 12, // [15:4] 56*5113495bSYour Name cascade_indication : 1, // [16:16] 57*5113495bSYour Name carrier_sense : 1, // [17:17] 58*5113495bSYour Name bandwidth : 2, // [19:18] 59*5113495bSYour Name cp_ltf_size : 2, // [21:20] 60*5113495bSYour Name mu_mimo_ltf_mode : 1, // [22:22] 61*5113495bSYour Name number_of_ltfs : 3, // [25:23] 62*5113495bSYour Name stbc : 1, // [26:26] 63*5113495bSYour Name ldpc_extra_symbol : 1, // [27:27] 64*5113495bSYour Name ap_tx_power_lsb_part : 4; // [31:28] 65*5113495bSYour Name uint32_t ap_tx_power_msb_part : 2, // [1:0] 66*5113495bSYour Name packet_extension_a_factor : 2, // [3:2] 67*5113495bSYour Name packet_extension_pe_disambiguity : 1, // [4:4] 68*5113495bSYour Name spatial_reuse : 16, // [20:5] 69*5113495bSYour Name doppler : 1, // [21:21] 70*5113495bSYour Name he_siga_reserved : 9, // [30:22] 71*5113495bSYour Name reserved_3b : 1; // [31:31] 72*5113495bSYour Name uint32_t aid12 : 12, // [11:0] 73*5113495bSYour Name ru_allocation : 9, // [20:12] 74*5113495bSYour Name mcs : 4, // [24:21] 75*5113495bSYour Name dcm : 1, // [25:25] 76*5113495bSYour Name start_spatial_stream : 3, // [28:26] 77*5113495bSYour Name number_of_spatial_stream : 3; // [31:29] 78*5113495bSYour Name uint32_t target_rssi : 7, // [6:0] 79*5113495bSYour Name coding_type : 1, // [7:7] 80*5113495bSYour Name mpdu_mu_spacing_factor : 2, // [9:8] 81*5113495bSYour Name tid_aggregation_limit : 3, // [12:10] 82*5113495bSYour Name reserved_5b : 1, // [13:13] 83*5113495bSYour Name prefered_ac : 2, // [15:14] 84*5113495bSYour Name bar_control_ack_policy : 1, // [16:16] 85*5113495bSYour Name bar_control_multi_tid : 1, // [17:17] 86*5113495bSYour Name bar_control_compressed_bitmap : 1, // [18:18] 87*5113495bSYour Name bar_control_reserved : 9, // [27:19] 88*5113495bSYour Name bar_control_tid_info : 4; // [31:28] 89*5113495bSYour Name uint32_t nr0_per_tid_info_reserved : 12, // [11:0] 90*5113495bSYour Name nr0_per_tid_info_tid_value : 4, // [15:12] 91*5113495bSYour Name nr0_start_seq_ctrl_frag_number : 4, // [19:16] 92*5113495bSYour Name nr0_start_seq_ctrl_start_seq_number : 12; // [31:20] 93*5113495bSYour Name uint32_t nr1_per_tid_info_reserved : 12, // [11:0] 94*5113495bSYour Name nr1_per_tid_info_tid_value : 4, // [15:12] 95*5113495bSYour Name nr1_start_seq_ctrl_frag_number : 4, // [19:16] 96*5113495bSYour Name nr1_start_seq_ctrl_start_seq_number : 12; // [31:20] 97*5113495bSYour Name uint32_t nr2_per_tid_info_reserved : 12, // [11:0] 98*5113495bSYour Name nr2_per_tid_info_tid_value : 4, // [15:12] 99*5113495bSYour Name nr2_start_seq_ctrl_frag_number : 4, // [19:16] 100*5113495bSYour Name nr2_start_seq_ctrl_start_seq_number : 12; // [31:20] 101*5113495bSYour Name uint32_t nr3_per_tid_info_reserved : 12, // [11:0] 102*5113495bSYour Name nr3_per_tid_info_tid_value : 4, // [15:12] 103*5113495bSYour Name nr3_start_seq_ctrl_frag_number : 4, // [19:16] 104*5113495bSYour Name nr3_start_seq_ctrl_start_seq_number : 12; // [31:20] 105*5113495bSYour Name uint32_t nr4_per_tid_info_reserved : 12, // [11:0] 106*5113495bSYour Name nr4_per_tid_info_tid_value : 4, // [15:12] 107*5113495bSYour Name nr4_start_seq_ctrl_frag_number : 4, // [19:16] 108*5113495bSYour Name nr4_start_seq_ctrl_start_seq_number : 12; // [31:20] 109*5113495bSYour Name uint32_t nr5_per_tid_info_reserved : 12, // [11:0] 110*5113495bSYour Name nr5_per_tid_info_tid_value : 4, // [15:12] 111*5113495bSYour Name nr5_start_seq_ctrl_frag_number : 4, // [19:16] 112*5113495bSYour Name nr5_start_seq_ctrl_start_seq_number : 12; // [31:20] 113*5113495bSYour Name uint32_t nr6_per_tid_info_reserved : 12, // [11:0] 114*5113495bSYour Name nr6_per_tid_info_tid_value : 4, // [15:12] 115*5113495bSYour Name nr6_start_seq_ctrl_frag_number : 4, // [19:16] 116*5113495bSYour Name nr6_start_seq_ctrl_start_seq_number : 12; // [31:20] 117*5113495bSYour Name uint32_t nr7_per_tid_info_reserved : 12, // [11:0] 118*5113495bSYour Name nr7_per_tid_info_tid_value : 4, // [15:12] 119*5113495bSYour Name nr7_start_seq_ctrl_frag_number : 4, // [19:16] 120*5113495bSYour Name nr7_start_seq_ctrl_start_seq_number : 12; // [31:20] 121*5113495bSYour Name uint32_t fb_segment_retransmission_bitmap : 8, // [7:0] 122*5113495bSYour Name reserved_14a : 2, // [9:8] 123*5113495bSYour Name u_sig_puncture_pattern_encoding : 6, // [15:10] 124*5113495bSYour Name dot11be_puncture_bitmap : 16; // [31:16] 125*5113495bSYour Name uint32_t rx_chain_mask : 8, // [7:0] 126*5113495bSYour Name rx_duration_field : 16, // [23:8] 127*5113495bSYour Name scrambler_seed : 7, // [30:24] 128*5113495bSYour Name rx_chain_mask_type : 1; // [31:31] 129*5113495bSYour Name struct mlo_sta_id_details mlo_sta_id_details_rx; 130*5113495bSYour Name uint16_t normalized_pre_rssi_comb : 8, // [23:16] 131*5113495bSYour Name normalized_rssi_comb : 8; // [31:24] 132*5113495bSYour Name uint32_t sw_peer_id : 16, // [15:0] 133*5113495bSYour Name response_tx_duration : 16; // [31:16] 134*5113495bSYour Name uint32_t ranging_trigger_subtype : 4, // [3:0] 135*5113495bSYour Name tbr_trigger_common_info_79_68 : 12, // [15:4] 136*5113495bSYour Name tbr_trigger_sound_reserved_20_12 : 9, // [24:16] 137*5113495bSYour Name i2r_rep : 3, // [27:25] 138*5113495bSYour Name tbr_trigger_sound_reserved_25_24 : 2, // [29:28] 139*5113495bSYour Name reserved_18a : 1, // [30:30] 140*5113495bSYour Name qos_null_only_response_tx : 1; // [31:31] 141*5113495bSYour Name uint32_t tbr_trigger_sound_sac : 16, // [15:0] 142*5113495bSYour Name reserved_19a : 8, // [23:16] 143*5113495bSYour Name u_sig_reserved2 : 5, // [28:24] 144*5113495bSYour Name reserved_19b : 3; // [31:29] 145*5113495bSYour Name uint32_t eht_special_aid12 : 12, // [11:0] 146*5113495bSYour Name phy_version : 3, // [14:12] 147*5113495bSYour Name bandwidth_ext : 2, // [16:15] 148*5113495bSYour Name eht_spatial_reuse : 8, // [24:17] 149*5113495bSYour Name u_sig_reserved1 : 7; // [31:25] 150*5113495bSYour Name uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0] 151*5113495bSYour Name #else 152*5113495bSYour Name uint32_t rxpcu_pcie_l0_req_duration : 8, // [31:24] 153*5113495bSYour Name rssi_comb : 8, // [23:16] 154*5113495bSYour Name pre_rssi_comb : 8, // [15:8] 155*5113495bSYour Name eht_trigger_response : 1, // [7:7] 156*5113495bSYour Name txop_duration_all_ones : 1, // [6:6] 157*5113495bSYour Name received_bandwidth : 3, // [5:3] 158*5113495bSYour Name rx_trigger_frame_user_source : 2, // [2:1] 159*5113495bSYour Name ax_trigger_source : 1; // [0:0] 160*5113495bSYour Name uint32_t bss_color : 6, // [31:26] 161*5113495bSYour Name he_trigger_reserved : 1, // [25:25] 162*5113495bSYour Name he_trigger_ul_mcs : 2, // [24:23] 163*5113495bSYour Name he_trigger_ul_target_rssi : 5, // [22:18] 164*5113495bSYour Name he_trigger_dl_tx_power : 5, // [17:13] 165*5113495bSYour Name he_trigger_ru_allocation : 8, // [12:5] 166*5113495bSYour Name he_trigger_ul_ppdu_length : 5; // [4:0] 167*5113495bSYour Name uint32_t ap_tx_power_lsb_part : 4, // [31:28] 168*5113495bSYour Name ldpc_extra_symbol : 1, // [27:27] 169*5113495bSYour Name stbc : 1, // [26:26] 170*5113495bSYour Name number_of_ltfs : 3, // [25:23] 171*5113495bSYour Name mu_mimo_ltf_mode : 1, // [22:22] 172*5113495bSYour Name cp_ltf_size : 2, // [21:20] 173*5113495bSYour Name bandwidth : 2, // [19:18] 174*5113495bSYour Name carrier_sense : 1, // [17:17] 175*5113495bSYour Name cascade_indication : 1, // [16:16] 176*5113495bSYour Name lsig_response_length : 12, // [15:4] 177*5113495bSYour Name trigger_type : 4; // [3:0] 178*5113495bSYour Name uint32_t reserved_3b : 1, // [31:31] 179*5113495bSYour Name he_siga_reserved : 9, // [30:22] 180*5113495bSYour Name doppler : 1, // [21:21] 181*5113495bSYour Name spatial_reuse : 16, // [20:5] 182*5113495bSYour Name packet_extension_pe_disambiguity : 1, // [4:4] 183*5113495bSYour Name packet_extension_a_factor : 2, // [3:2] 184*5113495bSYour Name ap_tx_power_msb_part : 2; // [1:0] 185*5113495bSYour Name uint32_t number_of_spatial_stream : 3, // [31:29] 186*5113495bSYour Name start_spatial_stream : 3, // [28:26] 187*5113495bSYour Name dcm : 1, // [25:25] 188*5113495bSYour Name mcs : 4, // [24:21] 189*5113495bSYour Name ru_allocation : 9, // [20:12] 190*5113495bSYour Name aid12 : 12; // [11:0] 191*5113495bSYour Name uint32_t bar_control_tid_info : 4, // [31:28] 192*5113495bSYour Name bar_control_reserved : 9, // [27:19] 193*5113495bSYour Name bar_control_compressed_bitmap : 1, // [18:18] 194*5113495bSYour Name bar_control_multi_tid : 1, // [17:17] 195*5113495bSYour Name bar_control_ack_policy : 1, // [16:16] 196*5113495bSYour Name prefered_ac : 2, // [15:14] 197*5113495bSYour Name reserved_5b : 1, // [13:13] 198*5113495bSYour Name tid_aggregation_limit : 3, // [12:10] 199*5113495bSYour Name mpdu_mu_spacing_factor : 2, // [9:8] 200*5113495bSYour Name coding_type : 1, // [7:7] 201*5113495bSYour Name target_rssi : 7; // [6:0] 202*5113495bSYour Name uint32_t nr0_start_seq_ctrl_start_seq_number : 12, // [31:20] 203*5113495bSYour Name nr0_start_seq_ctrl_frag_number : 4, // [19:16] 204*5113495bSYour Name nr0_per_tid_info_tid_value : 4, // [15:12] 205*5113495bSYour Name nr0_per_tid_info_reserved : 12; // [11:0] 206*5113495bSYour Name uint32_t nr1_start_seq_ctrl_start_seq_number : 12, // [31:20] 207*5113495bSYour Name nr1_start_seq_ctrl_frag_number : 4, // [19:16] 208*5113495bSYour Name nr1_per_tid_info_tid_value : 4, // [15:12] 209*5113495bSYour Name nr1_per_tid_info_reserved : 12; // [11:0] 210*5113495bSYour Name uint32_t nr2_start_seq_ctrl_start_seq_number : 12, // [31:20] 211*5113495bSYour Name nr2_start_seq_ctrl_frag_number : 4, // [19:16] 212*5113495bSYour Name nr2_per_tid_info_tid_value : 4, // [15:12] 213*5113495bSYour Name nr2_per_tid_info_reserved : 12; // [11:0] 214*5113495bSYour Name uint32_t nr3_start_seq_ctrl_start_seq_number : 12, // [31:20] 215*5113495bSYour Name nr3_start_seq_ctrl_frag_number : 4, // [19:16] 216*5113495bSYour Name nr3_per_tid_info_tid_value : 4, // [15:12] 217*5113495bSYour Name nr3_per_tid_info_reserved : 12; // [11:0] 218*5113495bSYour Name uint32_t nr4_start_seq_ctrl_start_seq_number : 12, // [31:20] 219*5113495bSYour Name nr4_start_seq_ctrl_frag_number : 4, // [19:16] 220*5113495bSYour Name nr4_per_tid_info_tid_value : 4, // [15:12] 221*5113495bSYour Name nr4_per_tid_info_reserved : 12; // [11:0] 222*5113495bSYour Name uint32_t nr5_start_seq_ctrl_start_seq_number : 12, // [31:20] 223*5113495bSYour Name nr5_start_seq_ctrl_frag_number : 4, // [19:16] 224*5113495bSYour Name nr5_per_tid_info_tid_value : 4, // [15:12] 225*5113495bSYour Name nr5_per_tid_info_reserved : 12; // [11:0] 226*5113495bSYour Name uint32_t nr6_start_seq_ctrl_start_seq_number : 12, // [31:20] 227*5113495bSYour Name nr6_start_seq_ctrl_frag_number : 4, // [19:16] 228*5113495bSYour Name nr6_per_tid_info_tid_value : 4, // [15:12] 229*5113495bSYour Name nr6_per_tid_info_reserved : 12; // [11:0] 230*5113495bSYour Name uint32_t nr7_start_seq_ctrl_start_seq_number : 12, // [31:20] 231*5113495bSYour Name nr7_start_seq_ctrl_frag_number : 4, // [19:16] 232*5113495bSYour Name nr7_per_tid_info_tid_value : 4, // [15:12] 233*5113495bSYour Name nr7_per_tid_info_reserved : 12; // [11:0] 234*5113495bSYour Name uint32_t dot11be_puncture_bitmap : 16, // [31:16] 235*5113495bSYour Name u_sig_puncture_pattern_encoding : 6, // [15:10] 236*5113495bSYour Name reserved_14a : 2, // [9:8] 237*5113495bSYour Name fb_segment_retransmission_bitmap : 8; // [7:0] 238*5113495bSYour Name uint32_t rx_chain_mask_type : 1, // [31:31] 239*5113495bSYour Name scrambler_seed : 7, // [30:24] 240*5113495bSYour Name rx_duration_field : 16, // [23:8] 241*5113495bSYour Name rx_chain_mask : 8; // [7:0] 242*5113495bSYour Name uint32_t normalized_rssi_comb : 8, // [31:24] 243*5113495bSYour Name normalized_pre_rssi_comb : 8; // [23:16] 244*5113495bSYour Name struct mlo_sta_id_details mlo_sta_id_details_rx; 245*5113495bSYour Name uint32_t response_tx_duration : 16, // [31:16] 246*5113495bSYour Name sw_peer_id : 16; // [15:0] 247*5113495bSYour Name uint32_t qos_null_only_response_tx : 1, // [31:31] 248*5113495bSYour Name reserved_18a : 1, // [30:30] 249*5113495bSYour Name tbr_trigger_sound_reserved_25_24 : 2, // [29:28] 250*5113495bSYour Name i2r_rep : 3, // [27:25] 251*5113495bSYour Name tbr_trigger_sound_reserved_20_12 : 9, // [24:16] 252*5113495bSYour Name tbr_trigger_common_info_79_68 : 12, // [15:4] 253*5113495bSYour Name ranging_trigger_subtype : 4; // [3:0] 254*5113495bSYour Name uint32_t reserved_19b : 3, // [31:29] 255*5113495bSYour Name u_sig_reserved2 : 5, // [28:24] 256*5113495bSYour Name reserved_19a : 8, // [23:16] 257*5113495bSYour Name tbr_trigger_sound_sac : 16; // [15:0] 258*5113495bSYour Name uint32_t u_sig_reserved1 : 7, // [31:25] 259*5113495bSYour Name eht_spatial_reuse : 8, // [24:17] 260*5113495bSYour Name bandwidth_ext : 2, // [16:15] 261*5113495bSYour Name phy_version : 3, // [14:12] 262*5113495bSYour Name eht_special_aid12 : 12; // [11:0] 263*5113495bSYour Name uint32_t eht_trigger_special_user_info_71_40 : 32; // [31:0] 264*5113495bSYour Name #endif 265*5113495bSYour Name }; 266*5113495bSYour Name 267*5113495bSYour Name 268*5113495bSYour Name /* Description AX_TRIGGER_SOURCE 269*5113495bSYour Name 270*5113495bSYour Name <enum 0 11ax_trigger_frame> 271*5113495bSYour Name <enum 1 he_control_based_trigger> 272*5113495bSYour Name 273*5113495bSYour Name <legal all> 274*5113495bSYour Name */ 275*5113495bSYour Name 276*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_OFFSET 0x0000000000000000 277*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_LSB 0 278*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MSB 0 279*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MASK 0x0000000000000001 280*5113495bSYour Name 281*5113495bSYour Name 282*5113495bSYour Name /* Description RX_TRIGGER_FRAME_USER_SOURCE 283*5113495bSYour Name 284*5113495bSYour Name Field not really needed by PDG, but is there for debugging 285*5113495bSYour Name purposes to be put in event. 286*5113495bSYour Name 287*5113495bSYour Name <enum 0 dot11ax_direct_trigger_frame> 288*5113495bSYour Name <enum 1 dot11ax_wildcard_trigger_frame> wildcard trigger 289*5113495bSYour Name for associated STAs 290*5113495bSYour Name <enum 2 dot11ax_usassoc_wildcard_trigger_frame> wildcard 291*5113495bSYour Name trigger for unassociated STAs 292*5113495bSYour Name 293*5113495bSYour Name <legal 0-2> 294*5113495bSYour Name */ 295*5113495bSYour Name 296*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_OFFSET 0x0000000000000000 297*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_LSB 1 298*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MSB 2 299*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MASK 0x0000000000000006 300*5113495bSYour Name 301*5113495bSYour Name 302*5113495bSYour Name /* Description RECEIVED_BANDWIDTH 303*5113495bSYour Name 304*5113495bSYour Name Received Packet bandwidth of the trigger frame. 305*5113495bSYour Name 306*5113495bSYour Name Note that this is not the BW indicated within the trigger 307*5113495bSYour Name frame itself. 308*5113495bSYour Name 309*5113495bSYour Name <enum 0 20_mhz>20 Mhz BW 310*5113495bSYour Name <enum 1 40_mhz>40 Mhz BW 311*5113495bSYour Name <enum 2 80_mhz>80 Mhz BW 312*5113495bSYour Name <enum 3 160_mhz>160 Mhz BW 313*5113495bSYour Name <enum 4 320_mhz>320 Mhz BW 314*5113495bSYour Name <enum 5 240_mhz>240 Mhz BW 315*5113495bSYour Name */ 316*5113495bSYour Name 317*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_OFFSET 0x0000000000000000 318*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_LSB 3 319*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MSB 5 320*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MASK 0x0000000000000038 321*5113495bSYour Name 322*5113495bSYour Name 323*5113495bSYour Name /* Description TXOP_DURATION_ALL_ONES 324*5113495bSYour Name 325*5113495bSYour Name When set, TXOP_DURATION of the received frame was set to 326*5113495bSYour Name all 1s. 327*5113495bSYour Name 328*5113495bSYour Name <legal all> 329*5113495bSYour Name */ 330*5113495bSYour Name 331*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_OFFSET 0x0000000000000000 332*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_LSB 6 333*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MSB 6 334*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MASK 0x0000000000000040 335*5113495bSYour Name 336*5113495bSYour Name 337*5113495bSYour Name /* Description EHT_TRIGGER_RESPONSE 338*5113495bSYour Name 339*5113495bSYour Name 0: Trigger expects an HE TB PPDU Tx response. 340*5113495bSYour Name 1: Trigger expects an EHT TB PPDU Tx response. 341*5113495bSYour Name <legal 0> 342*5113495bSYour Name */ 343*5113495bSYour Name 344*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_OFFSET 0x0000000000000000 345*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_LSB 7 346*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MSB 7 347*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MASK 0x0000000000000080 348*5113495bSYour Name 349*5113495bSYour Name 350*5113495bSYour Name /* Description PRE_RSSI_COMB 351*5113495bSYour Name 352*5113495bSYour Name Combined pre_rssi of all chains. Based on primary channel 353*5113495bSYour Name RSSI. 354*5113495bSYour Name 355*5113495bSYour Name RSSI is reported as 8b signed values. Nominally value is 356*5113495bSYour Name in dB units above or below the noisefloor(minCCApwr). 357*5113495bSYour Name 358*5113495bSYour Name The resolution can be: 359*5113495bSYour Name 1dB or 0.5dB. This is statically configured within the PHY 360*5113495bSYour Name and MAC 361*5113495bSYour Name 362*5113495bSYour Name In case of 1dB, the Range is: 363*5113495bSYour Name -128dB to 127dB 364*5113495bSYour Name 365*5113495bSYour Name In case of 0.5dB, the Range is: 366*5113495bSYour Name -64dB to 63.5dB 367*5113495bSYour Name 368*5113495bSYour Name <legal all> 369*5113495bSYour Name */ 370*5113495bSYour Name 371*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_OFFSET 0x0000000000000000 372*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_LSB 8 373*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MSB 15 374*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MASK 0x000000000000ff00 375*5113495bSYour Name 376*5113495bSYour Name 377*5113495bSYour Name /* Description RSSI_COMB 378*5113495bSYour Name 379*5113495bSYour Name Combined rssi of all chains. Based on primary channel RSSI. 380*5113495bSYour Name 381*5113495bSYour Name 382*5113495bSYour Name RSSI is reported as 8b signed values. Nominally value is 383*5113495bSYour Name in dB units above or below the noisefloor(minCCApwr). 384*5113495bSYour Name 385*5113495bSYour Name The resolution can be: 386*5113495bSYour Name 1dB or 0.5dB. This is statically configured within the PHY 387*5113495bSYour Name and MAC 388*5113495bSYour Name 389*5113495bSYour Name In case of 1dB, the Range is: 390*5113495bSYour Name -128dB to 127dB 391*5113495bSYour Name 392*5113495bSYour Name In case of 0.5dB, the Range is: 393*5113495bSYour Name -64dB to 63.5dB 394*5113495bSYour Name 395*5113495bSYour Name <legal all> 396*5113495bSYour Name */ 397*5113495bSYour Name 398*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_OFFSET 0x0000000000000000 399*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_LSB 16 400*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MSB 23 401*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MASK 0x0000000000ff0000 402*5113495bSYour Name 403*5113495bSYour Name 404*5113495bSYour Name /* Description RXPCU_PCIE_L0_REQ_DURATION 405*5113495bSYour Name 406*5113495bSYour Name RXPCU fills the duration in µs for which it has asserted 407*5113495bSYour Name the 'L0 request' signal to PCIe when it generates this 408*5113495bSYour Name TLV. This may be capped by either the max. PCIe L1SS exit 409*5113495bSYour Name latency (~75 µs) or the max. value possible for this field. 410*5113495bSYour Name 411*5113495bSYour Name 412*5113495bSYour Name This is filled as zero if ILP is unsupported (e.g. in Maple 413*5113495bSYour Name and Spruce) or disabled. 414*5113495bSYour Name 415*5113495bSYour Name PDG uses this to fill Qos_null_only_response_tx. 416*5113495bSYour Name <legal all> 417*5113495bSYour Name */ 418*5113495bSYour Name 419*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_OFFSET 0x0000000000000000 420*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_LSB 24 421*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MSB 31 422*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MASK 0x00000000ff000000 423*5113495bSYour Name 424*5113495bSYour Name 425*5113495bSYour Name /* Description HE_TRIGGER_UL_PPDU_LENGTH 426*5113495bSYour Name 427*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 428*5113495bSYour Name 429*5113495bSYour Name 430*5113495bSYour Name Field extracted from the HE control field. 431*5113495bSYour Name length of the HE trigger-based PPDU response. 432*5113495bSYour Name 433*5113495bSYour Name <legal all> 434*5113495bSYour Name */ 435*5113495bSYour Name 436*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_OFFSET 0x0000000000000000 437*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_LSB 32 438*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MSB 36 439*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MASK 0x0000001f00000000 440*5113495bSYour Name 441*5113495bSYour Name 442*5113495bSYour Name /* Description HE_TRIGGER_RU_ALLOCATION 443*5113495bSYour Name 444*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 445*5113495bSYour Name 446*5113495bSYour Name 447*5113495bSYour Name Field extracted from the HE control field. 448*5113495bSYour Name RU allocation for HE based trigger 449*5113495bSYour Name 450*5113495bSYour Name <legal all> 451*5113495bSYour Name */ 452*5113495bSYour Name 453*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_OFFSET 0x0000000000000000 454*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_LSB 37 455*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MSB 44 456*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MASK 0x00001fe000000000 457*5113495bSYour Name 458*5113495bSYour Name 459*5113495bSYour Name /* Description HE_TRIGGER_DL_TX_POWER 460*5113495bSYour Name 461*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 462*5113495bSYour Name 463*5113495bSYour Name 464*5113495bSYour Name Field extracted from the HE control field. 465*5113495bSYour Name Downlink TX power 466*5113495bSYour Name 467*5113495bSYour Name <legal all> 468*5113495bSYour Name */ 469*5113495bSYour Name 470*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_OFFSET 0x0000000000000000 471*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_LSB 45 472*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MSB 49 473*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MASK 0x0003e00000000000 474*5113495bSYour Name 475*5113495bSYour Name 476*5113495bSYour Name /* Description HE_TRIGGER_UL_TARGET_RSSI 477*5113495bSYour Name 478*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 479*5113495bSYour Name 480*5113495bSYour Name 481*5113495bSYour Name Field extracted from the HE control field. 482*5113495bSYour Name Ul target RSSI 483*5113495bSYour Name 484*5113495bSYour Name <legal all> 485*5113495bSYour Name */ 486*5113495bSYour Name 487*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_OFFSET 0x0000000000000000 488*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_LSB 50 489*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MSB 54 490*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MASK 0x007c000000000000 491*5113495bSYour Name 492*5113495bSYour Name 493*5113495bSYour Name /* Description HE_TRIGGER_UL_MCS 494*5113495bSYour Name 495*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 496*5113495bSYour Name 497*5113495bSYour Name 498*5113495bSYour Name Field extracted from the HE control field. 499*5113495bSYour Name UL MCS 500*5113495bSYour Name 501*5113495bSYour Name <legal all> 502*5113495bSYour Name */ 503*5113495bSYour Name 504*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_OFFSET 0x0000000000000000 505*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_LSB 55 506*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MSB 56 507*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MASK 0x0180000000000000 508*5113495bSYour Name 509*5113495bSYour Name 510*5113495bSYour Name /* Description HE_TRIGGER_RESERVED 511*5113495bSYour Name 512*5113495bSYour Name Field only valid when ax_trigger_source = he_control_based_trigger 513*5113495bSYour Name 514*5113495bSYour Name 515*5113495bSYour Name Field extracted from the HE control field. 516*5113495bSYour Name Reserved field 517*5113495bSYour Name 518*5113495bSYour Name <legal all> 519*5113495bSYour Name */ 520*5113495bSYour Name 521*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_OFFSET 0x0000000000000000 522*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_LSB 57 523*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MSB 57 524*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MASK 0x0200000000000000 525*5113495bSYour Name 526*5113495bSYour Name 527*5113495bSYour Name /* Description BSS_COLOR 528*5113495bSYour Name 529*5113495bSYour Name The BSS color of the AP 530*5113495bSYour Name <legal all> 531*5113495bSYour Name */ 532*5113495bSYour Name 533*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_OFFSET 0x0000000000000000 534*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_LSB 58 535*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MSB 63 536*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MASK 0xfc00000000000000 537*5113495bSYour Name 538*5113495bSYour Name 539*5113495bSYour Name /* Description TRIGGER_TYPE 540*5113495bSYour Name 541*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 542*5113495bSYour Name 543*5113495bSYour Name 544*5113495bSYour Name Common trigger info 545*5113495bSYour Name 546*5113495bSYour Name Indicates what kind of response is required to the received 547*5113495bSYour Name OFDMA trigger... 548*5113495bSYour Name 549*5113495bSYour Name Field not really needed by PDG, but is there for debugging 550*5113495bSYour Name purposes to be put in event. 551*5113495bSYour Name 552*5113495bSYour Name <enum 0 ax_trigger_basic> TXPCU sends back whatever SW has 553*5113495bSYour Name programmed...for the basic response.. 554*5113495bSYour Name <enum 1 ax_trigger_brpoll> TXPCU is only allowed to send 555*5113495bSYour Name CBF frame(s) back 556*5113495bSYour Name <enum 2 ax_trigger_mu_bar> TXPCU shall first send BA info, 557*5113495bSYour Name and optionally followed with data. No info from SCH is expected 558*5113495bSYour Name 559*5113495bSYour Name <enum 3 ax_trigger_mu_rts> TXPCU shall only send CTS back. 560*5113495bSYour Name No info from SCH is expected 561*5113495bSYour Name <enum 4 ax_trigger_buffer_size> Also known as the BSRP trigger. 562*5113495bSYour Name TXPCU sends back whatever SW has programmed...for the basic 563*5113495bSYour Name response.. 564*5113495bSYour Name <enum 5 ax_trigger_gcr_mu_bar> 565*5113495bSYour Name <enum 6 ax_trigger_BQRP> Bandwidth Query Report Poll 566*5113495bSYour Name <enum 7 ax_trigger_NDP_fb_report_poll> NDP feedback report 567*5113495bSYour Name Poll 568*5113495bSYour Name <enum 8 ax_tb_ranging_trigger> ranging Trigger Frame of 569*5113495bSYour Name subvariant indicated by Ranging_Trigger_Subtype 570*5113495bSYour Name <enum 9 ax_trigger_reserved_9> 571*5113495bSYour Name <enum 10 ax_trigger_reserved_10> 572*5113495bSYour Name <enum 11 ax_trigger_reserved_11> 573*5113495bSYour Name <enum 12 ax_trigger_reserved_12> 574*5113495bSYour Name <enum 13 ax_trigger_reserved_13> 575*5113495bSYour Name <enum 14 ax_trigger_reserved_14> 576*5113495bSYour Name <enum 15 ax_trigger_reserved_15> 577*5113495bSYour Name <legal all> 578*5113495bSYour Name */ 579*5113495bSYour Name 580*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_OFFSET 0x0000000000000008 581*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_LSB 0 582*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MSB 3 583*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MASK 0x000000000000000f 584*5113495bSYour Name 585*5113495bSYour Name 586*5113495bSYour Name /* Description LSIG_RESPONSE_LENGTH 587*5113495bSYour Name 588*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 589*5113495bSYour Name 590*5113495bSYour Name 591*5113495bSYour Name Common trigger info 592*5113495bSYour Name 593*5113495bSYour Name Indicates the value of the L-SIG Length field of the HE 594*5113495bSYour Name trigger-based PPDU that is the response to the Trigger frame 595*5113495bSYour Name 596*5113495bSYour Name 597*5113495bSYour Name <legal all> 598*5113495bSYour Name */ 599*5113495bSYour Name 600*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_OFFSET 0x0000000000000008 601*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_LSB 4 602*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MSB 15 603*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MASK 0x000000000000fff0 604*5113495bSYour Name 605*5113495bSYour Name 606*5113495bSYour Name /* Description CASCADE_INDICATION 607*5113495bSYour Name 608*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 609*5113495bSYour Name 610*5113495bSYour Name 611*5113495bSYour Name Common trigger info 612*5113495bSYour Name 613*5113495bSYour Name When set to 1, then a subsequent Trigger frame follows the 614*5113495bSYour Name current Trigger frame. 615*5113495bSYour Name <legal all> 616*5113495bSYour Name */ 617*5113495bSYour Name 618*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_OFFSET 0x0000000000000008 619*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_LSB 16 620*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MSB 16 621*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MASK 0x0000000000010000 622*5113495bSYour Name 623*5113495bSYour Name 624*5113495bSYour Name /* Description CARRIER_SENSE 625*5113495bSYour Name 626*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 627*5113495bSYour Name 628*5113495bSYour Name 629*5113495bSYour Name Common trigger info 630*5113495bSYour Name 631*5113495bSYour Name Need to sense the energy before transmit when CS=1 if allocated 632*5113495bSYour Name channel is not available do not transmit . If CS=0 no need 633*5113495bSYour Name to check for idle channel. For region based restrict ignore 634*5113495bSYour Name this bit and always check channel before transmit. 635*5113495bSYour Name <legal all> 636*5113495bSYour Name */ 637*5113495bSYour Name 638*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_OFFSET 0x0000000000000008 639*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_LSB 17 640*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MSB 17 641*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MASK 0x0000000000020000 642*5113495bSYour Name 643*5113495bSYour Name 644*5113495bSYour Name /* Description BANDWIDTH 645*5113495bSYour Name 646*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 647*5113495bSYour Name 648*5113495bSYour Name 649*5113495bSYour Name Common trigger info 650*5113495bSYour Name 651*5113495bSYour Name Indicates the bandwidth in the HE-SIG-A/U-SIG of the HE/EHT 652*5113495bSYour Name Trigger based PPDU 653*5113495bSYour Name 654*5113495bSYour Name Also see field Bandwidth_ext that determines 320 MHz bandwidth 655*5113495bSYour Name for EHT. 656*5113495bSYour Name 657*5113495bSYour Name <enum 0 HE_SIG_A_BW20> 20 Mhz 658*5113495bSYour Name <enum 1 HE_SIG_A_BW40> 40 Mhz 659*5113495bSYour Name <enum 2 HE_SIG_A_BW80> 80 Mhz 660*5113495bSYour Name <enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz 661*5113495bSYour Name 662*5113495bSYour Name <legal all> 663*5113495bSYour Name */ 664*5113495bSYour Name 665*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_OFFSET 0x0000000000000008 666*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_LSB 18 667*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MSB 19 668*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MASK 0x00000000000c0000 669*5113495bSYour Name 670*5113495bSYour Name 671*5113495bSYour Name /* Description CP_LTF_SIZE 672*5113495bSYour Name 673*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 674*5113495bSYour Name 675*5113495bSYour Name 676*5113495bSYour Name Common trigger info 677*5113495bSYour Name 678*5113495bSYour Name Indicates the CP and HE-LTF type 679*5113495bSYour Name 680*5113495bSYour Name <enum 0 Trig_OneX_LTF_1_6CP> 1xLTF + 1.6 us CP 681*5113495bSYour Name <enum 1 Trig_TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP 682*5113495bSYour Name <enum 2 Trig_FourX_LTF_3_2CP> 4x LTF + 3.2 µs CP 683*5113495bSYour Name 684*5113495bSYour Name <legal 0-2> 685*5113495bSYour Name */ 686*5113495bSYour Name 687*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_OFFSET 0x0000000000000008 688*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_LSB 20 689*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MSB 21 690*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MASK 0x0000000000300000 691*5113495bSYour Name 692*5113495bSYour Name 693*5113495bSYour Name /* Description MU_MIMO_LTF_MODE 694*5113495bSYour Name 695*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 696*5113495bSYour Name 697*5113495bSYour Name 698*5113495bSYour Name Common trigger info 699*5113495bSYour Name 700*5113495bSYour Name MU MIMO LTF mode field indicates the mode in which pilots 701*5113495bSYour Name are allocated 702*5113495bSYour Name 703*5113495bSYour Name Must be set to 0 for HE-Ranging NDPs (11az) or Short-NDP 704*5113495bSYour Name 705*5113495bSYour Name 706*5113495bSYour Name 0: Single-stream pilot 707*5113495bSYour Name 1: Mask LTF sequence of each spatial stream by a distinct 708*5113495bSYour Name orthogonal code 709*5113495bSYour Name <legal all> 710*5113495bSYour Name */ 711*5113495bSYour Name 712*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_OFFSET 0x0000000000000008 713*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_LSB 22 714*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MSB 22 715*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MASK 0x0000000000400000 716*5113495bSYour Name 717*5113495bSYour Name 718*5113495bSYour Name /* Description NUMBER_OF_LTFS 719*5113495bSYour Name 720*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 721*5113495bSYour Name 722*5113495bSYour Name 723*5113495bSYour Name Common trigger info 724*5113495bSYour Name 725*5113495bSYour Name includes the total number of LTFs the STA must include in 726*5113495bSYour Name the response TRIG PPDU 727*5113495bSYour Name <legal all> 728*5113495bSYour Name */ 729*5113495bSYour Name 730*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_OFFSET 0x0000000000000008 731*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_LSB 23 732*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MSB 25 733*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MASK 0x0000000003800000 734*5113495bSYour Name 735*5113495bSYour Name 736*5113495bSYour Name /* Description STBC 737*5113495bSYour Name 738*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 739*5113495bSYour Name 740*5113495bSYour Name 741*5113495bSYour Name Common trigger info 742*5113495bSYour Name 743*5113495bSYour Name indicates whether STBS is used (for all STAs) 744*5113495bSYour Name It is set to 1 if STBC encoding is used and set to 0 otherwise. 745*5113495bSYour Name 746*5113495bSYour Name <legal all> 747*5113495bSYour Name */ 748*5113495bSYour Name 749*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_STBC_OFFSET 0x0000000000000008 750*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_STBC_LSB 26 751*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_STBC_MSB 26 752*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_STBC_MASK 0x0000000004000000 753*5113495bSYour Name 754*5113495bSYour Name 755*5113495bSYour Name /* Description LDPC_EXTRA_SYMBOL 756*5113495bSYour Name 757*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 758*5113495bSYour Name 759*5113495bSYour Name 760*5113495bSYour Name Common trigger info 761*5113495bSYour Name 762*5113495bSYour Name indicates the status of LDPC Extra Symbol. It is set to 763*5113495bSYour Name 1 when LDPC extra symbol is present and set to 0 otherwise 764*5113495bSYour Name 765*5113495bSYour Name <legal all> 766*5113495bSYour Name */ 767*5113495bSYour Name 768*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_OFFSET 0x0000000000000008 769*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_LSB 27 770*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MSB 27 771*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MASK 0x0000000008000000 772*5113495bSYour Name 773*5113495bSYour Name 774*5113495bSYour Name /* Description AP_TX_POWER_LSB_PART 775*5113495bSYour Name 776*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 777*5113495bSYour Name 778*5113495bSYour Name 779*5113495bSYour Name Common trigger info 780*5113495bSYour Name 781*5113495bSYour Name Bits [3:0] of the ap_tx_power 782*5113495bSYour Name 783*5113495bSYour Name indicates the combined average power per 20 MHz bandwidth 784*5113495bSYour Name of all transmit antennas used to transmit the trigger frame 785*5113495bSYour Name at the HE AP. The resolution for the transmit power reported 786*5113495bSYour Name in the Common Info field is 1dB 787*5113495bSYour Name 788*5113495bSYour Name Values 0 to 61 maps to -20 dBm to 40 dBm 789*5113495bSYour Name Other values are reserved. 790*5113495bSYour Name <legal all> 791*5113495bSYour Name */ 792*5113495bSYour Name 793*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_OFFSET 0x0000000000000008 794*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_LSB 28 795*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MSB 31 796*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MASK 0x00000000f0000000 797*5113495bSYour Name 798*5113495bSYour Name 799*5113495bSYour Name /* Description AP_TX_POWER_MSB_PART 800*5113495bSYour Name 801*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 802*5113495bSYour Name 803*5113495bSYour Name 804*5113495bSYour Name Common trigger info 805*5113495bSYour Name 806*5113495bSYour Name Bits [5:4] of the ap_tx_power 807*5113495bSYour Name See description above 808*5113495bSYour Name <legal all> 809*5113495bSYour Name */ 810*5113495bSYour Name 811*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_OFFSET 0x0000000000000008 812*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_LSB 32 813*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MSB 33 814*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MASK 0x0000000300000000 815*5113495bSYour Name 816*5113495bSYour Name 817*5113495bSYour Name /* Description PACKET_EXTENSION_A_FACTOR 818*5113495bSYour Name 819*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 820*5113495bSYour Name 821*5113495bSYour Name 822*5113495bSYour Name Common trigger info 823*5113495bSYour Name 824*5113495bSYour Name the packet extension duration of the trigger-based PPDU 825*5113495bSYour Name response with these two bits indicating the "a-factor" 826*5113495bSYour Name 827*5113495bSYour Name <enum 0 a_factor_4> 828*5113495bSYour Name <enum 1 a_factor_1> 829*5113495bSYour Name <enum 2 a_factor_2> 830*5113495bSYour Name <enum 3 a_factor_3> 831*5113495bSYour Name 832*5113495bSYour Name <legal all> 833*5113495bSYour Name */ 834*5113495bSYour Name 835*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_OFFSET 0x0000000000000008 836*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_LSB 34 837*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MSB 35 838*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MASK 0x0000000c00000000 839*5113495bSYour Name 840*5113495bSYour Name 841*5113495bSYour Name /* Description PACKET_EXTENSION_PE_DISAMBIGUITY 842*5113495bSYour Name 843*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 844*5113495bSYour Name 845*5113495bSYour Name 846*5113495bSYour Name Common trigger info 847*5113495bSYour Name 848*5113495bSYour Name the packet extension duration of the trigger-based PPDU 849*5113495bSYour Name response with this bit indicating the PE-Disambiguity 850*5113495bSYour Name <legal all> 851*5113495bSYour Name */ 852*5113495bSYour Name 853*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_OFFSET 0x0000000000000008 854*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_LSB 36 855*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MSB 36 856*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MASK 0x0000001000000000 857*5113495bSYour Name 858*5113495bSYour Name 859*5113495bSYour Name /* Description SPATIAL_REUSE 860*5113495bSYour Name 861*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 862*5113495bSYour Name 863*5113495bSYour Name 864*5113495bSYour Name Common trigger info 865*5113495bSYour Name 866*5113495bSYour Name indicates the value of the Spatial Reuse in the HE-SIGA 867*5113495bSYour Name of the HE_TRIG PPDU transmitted as a response to the Trigger 868*5113495bSYour Name frame 869*5113495bSYour Name <legal all> 870*5113495bSYour Name */ 871*5113495bSYour Name 872*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_OFFSET 0x0000000000000008 873*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_LSB 37 874*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MSB 52 875*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MASK 0x001fffe000000000 876*5113495bSYour Name 877*5113495bSYour Name 878*5113495bSYour Name /* Description DOPPLER 879*5113495bSYour Name 880*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 881*5113495bSYour Name 882*5113495bSYour Name 883*5113495bSYour Name Common trigger info 884*5113495bSYour Name 885*5113495bSYour Name TODO: add description 886*5113495bSYour Name <legal all> 887*5113495bSYour Name */ 888*5113495bSYour Name 889*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOPPLER_OFFSET 0x0000000000000008 890*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOPPLER_LSB 53 891*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOPPLER_MSB 53 892*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOPPLER_MASK 0x0020000000000000 893*5113495bSYour Name 894*5113495bSYour Name 895*5113495bSYour Name /* Description HE_SIGA_RESERVED 896*5113495bSYour Name 897*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 898*5113495bSYour Name 899*5113495bSYour Name 900*5113495bSYour Name Common trigger info 901*5113495bSYour Name 902*5113495bSYour Name indicates the values of the reserved bits in the HE-SIGA 903*5113495bSYour Name of the HE_TRIG PPDU transmitted as a response to the Trigger 904*5113495bSYour Name frame 905*5113495bSYour Name 906*5113495bSYour Name In case of an EHT AP, bits [23:22] indicate the bits [55:54] 907*5113495bSYour Name of the Trigger 'Common Info' called 'Special User Info Field 908*5113495bSYour Name Present' and 'HE/EHT P160.' These are used along with Reserved_18a 909*5113495bSYour Name to determine the presence of the EHT 'Special User Info' 910*5113495bSYour Name field and EHT_trigger_response. 911*5113495bSYour Name */ 912*5113495bSYour Name 913*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_OFFSET 0x0000000000000008 914*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_LSB 54 915*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MSB 62 916*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MASK 0x7fc0000000000000 917*5113495bSYour Name 918*5113495bSYour Name 919*5113495bSYour Name /* Description RESERVED_3B 920*5113495bSYour Name 921*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 922*5113495bSYour Name 923*5113495bSYour Name 924*5113495bSYour Name Common trigger info 925*5113495bSYour Name 926*5113495bSYour Name Reserved bit 63 in the Trigger 'Common Info' 927*5113495bSYour Name <legal all> 928*5113495bSYour Name */ 929*5113495bSYour Name 930*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_OFFSET 0x0000000000000008 931*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_LSB 63 932*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MSB 63 933*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MASK 0x8000000000000000 934*5113495bSYour Name 935*5113495bSYour Name 936*5113495bSYour Name /* Description AID12 937*5113495bSYour Name 938*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 939*5113495bSYour Name 940*5113495bSYour Name 941*5113495bSYour Name User trigger info 942*5113495bSYour Name 943*5113495bSYour Name The AID12 subfield of the Per User Info field indicates 944*5113495bSYour Name the LSB 12 bits of the AID of the STA allocated the RU to 945*5113495bSYour Name transmit the MPDU(s) in the HE trigger-based PPDU 946*5113495bSYour Name 947*5113495bSYour Name Note strictly needed, but added here for debugging purposes. 948*5113495bSYour Name 949*5113495bSYour Name <legal all> 950*5113495bSYour Name */ 951*5113495bSYour Name 952*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AID12_OFFSET 0x0000000000000010 953*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AID12_LSB 0 954*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AID12_MSB 11 955*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_AID12_MASK 0x0000000000000fff 956*5113495bSYour Name 957*5113495bSYour Name 958*5113495bSYour Name /* Description RU_ALLOCATION 959*5113495bSYour Name 960*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 961*5113495bSYour Name 962*5113495bSYour Name 963*5113495bSYour Name User trigger info 964*5113495bSYour Name 965*5113495bSYour Name trigger based RU definition 966*5113495bSYour Name 967*5113495bSYour Name If EHT_trigger_response = 0, only lower 8 bits are valid. 968*5113495bSYour Name 969*5113495bSYour Name If EHT_trigger_response = 1, all 9 bits re valid. 970*5113495bSYour Name <legal all> 971*5113495bSYour Name */ 972*5113495bSYour Name 973*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_OFFSET 0x0000000000000010 974*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_LSB 12 975*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MSB 20 976*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MASK 0x00000000001ff000 977*5113495bSYour Name 978*5113495bSYour Name 979*5113495bSYour Name /* Description MCS 980*5113495bSYour Name 981*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 982*5113495bSYour Name 983*5113495bSYour Name 984*5113495bSYour Name User trigger info 985*5113495bSYour Name 986*5113495bSYour Name indicates the MCS of the HE trigger-based PPDU response 987*5113495bSYour Name of the STA identified by User Identifier field 988*5113495bSYour Name <legal all> 989*5113495bSYour Name */ 990*5113495bSYour Name 991*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MCS_OFFSET 0x0000000000000010 992*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MCS_LSB 21 993*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MCS_MSB 24 994*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MCS_MASK 0x0000000001e00000 995*5113495bSYour Name 996*5113495bSYour Name 997*5113495bSYour Name /* Description DCM 998*5113495bSYour Name 999*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1000*5113495bSYour Name 1001*5113495bSYour Name 1002*5113495bSYour Name User trigger info 1003*5113495bSYour Name 1004*5113495bSYour Name indicates dual carrier modulation of the HE trigger-based 1005*5113495bSYour Name PPDU response of the STA identified by User Identifier 1006*5113495bSYour Name subfield. A value of 1 indicates that the HE trigger-based 1007*5113495bSYour Name PPDU response shall use DCM. 1008*5113495bSYour Name Set to 0 to indicate that DCM shall not be used 1009*5113495bSYour Name <legal all> 1010*5113495bSYour Name */ 1011*5113495bSYour Name 1012*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DCM_OFFSET 0x0000000000000010 1013*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DCM_LSB 25 1014*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DCM_MSB 25 1015*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DCM_MASK 0x0000000002000000 1016*5113495bSYour Name 1017*5113495bSYour Name 1018*5113495bSYour Name /* Description START_SPATIAL_STREAM 1019*5113495bSYour Name 1020*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1021*5113495bSYour Name 1022*5113495bSYour Name 1023*5113495bSYour Name User trigger info 1024*5113495bSYour Name 1025*5113495bSYour Name Indicates the starting spatial stream, STARTING_SS_NUM, 1026*5113495bSYour Name and is set to STARTING_SS_NUM - 1 of the HE trigger-based 1027*5113495bSYour Name PPDU response of the STA identified by User Identifier 1028*5113495bSYour Name field. 1029*5113495bSYour Name <legal all> 1030*5113495bSYour Name */ 1031*5113495bSYour Name 1032*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_OFFSET 0x0000000000000010 1033*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_LSB 26 1034*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MSB 28 1035*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MASK 0x000000001c000000 1036*5113495bSYour Name 1037*5113495bSYour Name 1038*5113495bSYour Name /* Description NUMBER_OF_SPATIAL_STREAM 1039*5113495bSYour Name 1040*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1041*5113495bSYour Name 1042*5113495bSYour Name 1043*5113495bSYour Name User trigger info 1044*5113495bSYour Name 1045*5113495bSYour Name indicates the number of spatial streams, NUM_SS and is set 1046*5113495bSYour Name to NUM_SS - 1, of the HE trigger-based PPDU response of 1047*5113495bSYour Name the STA identified by User Identifier field. 1048*5113495bSYour Name 1049*5113495bSYour Name In case of EHT_trigger_response=1, RXPCU fills the MSB of 1050*5113495bSYour Name STARTING_SS_NUM in bit 31. If this is set, it will cause 1051*5113495bSYour Name PDG to indicate to PHY > 4-stream transmission resulting 1052*5113495bSYour Name in an abort in EHT R1 chips. 1053*5113495bSYour Name 1054*5113495bSYour Name TODO: Cleanup for EHT R2 chips 1055*5113495bSYour Name <legal all> 1056*5113495bSYour Name */ 1057*5113495bSYour Name 1058*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_OFFSET 0x0000000000000010 1059*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_LSB 29 1060*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MSB 31 1061*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MASK 0x00000000e0000000 1062*5113495bSYour Name 1063*5113495bSYour Name 1064*5113495bSYour Name /* Description TARGET_RSSI 1065*5113495bSYour Name 1066*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1067*5113495bSYour Name 1068*5113495bSYour Name 1069*5113495bSYour Name User trigger info 1070*5113495bSYour Name 1071*5113495bSYour Name Indicates the target received signal power of the the HE 1072*5113495bSYour Name trigger-based PPDU response. The resolution for the Target 1073*5113495bSYour Name RSSI in the Per User Info field is 1dB 1074*5113495bSYour Name 1075*5113495bSYour Name Values 0 to 90 maps to -110 dBm to -20 dBm 1076*5113495bSYour Name Other values are reserved. 1077*5113495bSYour Name 1078*5113495bSYour Name Value 127 indicates to the STA to transmit an HE triggerbased 1079*5113495bSYour Name PPDU response at its maximum transmit power for the assigned 1080*5113495bSYour Name MCS. If Trigger_type = ax_tb_ranging_trigger and Ranging_Trigger_Subtype 1081*5113495bSYour Name = TF_Sound or TF_Secure_Sound, value 127 indicates to the 1082*5113495bSYour Name STA to transmit an HE TB-ranging NDP response at its maximum 1083*5113495bSYour Name transmit power for MCS 0. 1084*5113495bSYour Name 1085*5113495bSYour Name Used for power control algorithm 1086*5113495bSYour Name <legal all> 1087*5113495bSYour Name */ 1088*5113495bSYour Name 1089*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_OFFSET 0x0000000000000010 1090*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_LSB 32 1091*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MSB 38 1092*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MASK 0x0000007f00000000 1093*5113495bSYour Name 1094*5113495bSYour Name 1095*5113495bSYour Name /* Description CODING_TYPE 1096*5113495bSYour Name 1097*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1098*5113495bSYour Name 1099*5113495bSYour Name 1100*5113495bSYour Name User trigger info 1101*5113495bSYour Name 1102*5113495bSYour Name indicates the code type of the HE trigger-based PPDU response 1103*5113495bSYour Name of the STA identified by User Identifier subfield. 1104*5113495bSYour Name 0: BCC 1105*5113495bSYour Name 1: LDPC 1106*5113495bSYour Name <legal all> 1107*5113495bSYour Name */ 1108*5113495bSYour Name 1109*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_OFFSET 0x0000000000000010 1110*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_LSB 39 1111*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MSB 39 1112*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MASK 0x0000008000000000 1113*5113495bSYour Name 1114*5113495bSYour Name 1115*5113495bSYour Name /* Description MPDU_MU_SPACING_FACTOR 1116*5113495bSYour Name 1117*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1118*5113495bSYour Name 1119*5113495bSYour Name 1120*5113495bSYour Name Basic trigger variant user info 1121*5113495bSYour Name 1122*5113495bSYour Name <enum 0 Spacing_multiplier_is_1> 1123*5113495bSYour Name <enum 1 Spacing_multiplier_is_2> 1124*5113495bSYour Name <enum 2 Spacing_multiplier_is_4> 1125*5113495bSYour Name <enum 3 Spacing_multiplier_is_8> 1126*5113495bSYour Name 1127*5113495bSYour Name <legal all> 1128*5113495bSYour Name */ 1129*5113495bSYour Name 1130*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_OFFSET 0x0000000000000010 1131*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_LSB 40 1132*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MSB 41 1133*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MASK 0x0000030000000000 1134*5113495bSYour Name 1135*5113495bSYour Name 1136*5113495bSYour Name /* Description TID_AGGREGATION_LIMIT 1137*5113495bSYour Name 1138*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1139*5113495bSYour Name 1140*5113495bSYour Name 1141*5113495bSYour Name Basic trigger variant user info 1142*5113495bSYour Name 1143*5113495bSYour Name indicates the of the number of TIDs that can be aggregated 1144*5113495bSYour Name by a STA in a multi-TID A-MPDU carried in the responding 1145*5113495bSYour Name Trigger-based PPDU 1146*5113495bSYour Name 1147*5113495bSYour Name 1148*5113495bSYour Name Napier AX and Hastings: 1149*5113495bSYour Name TXPCU will also evaluate this field, when trigger type is 1150*5113495bSYour Name Basic trigger. In that case, when this field is 0, TXPCU 1151*5113495bSYour Name will not send any data from user 0, but will immediately 1152*5113495bSYour Name go to user 1, which has the QoSNULL data frames... 1153*5113495bSYour Name TODO: change for Hawkeye 2.0 1154*5113495bSYour Name 1155*5113495bSYour Name <legal all> 1156*5113495bSYour Name */ 1157*5113495bSYour Name 1158*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_OFFSET 0x0000000000000010 1159*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_LSB 42 1160*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MSB 44 1161*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MASK 0x00001c0000000000 1162*5113495bSYour Name 1163*5113495bSYour Name 1164*5113495bSYour Name /* Description RESERVED_5B 1165*5113495bSYour Name 1166*5113495bSYour Name <legal 0> 1167*5113495bSYour Name */ 1168*5113495bSYour Name 1169*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_OFFSET 0x0000000000000010 1170*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_LSB 45 1171*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MSB 45 1172*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MASK 0x0000200000000000 1173*5113495bSYour Name 1174*5113495bSYour Name 1175*5113495bSYour Name /* Description PREFERED_AC 1176*5113495bSYour Name 1177*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1178*5113495bSYour Name 1179*5113495bSYour Name 1180*5113495bSYour Name Basic trigger variant user info 1181*5113495bSYour Name 1182*5113495bSYour Name <enum 0 Prefered_ac_is_BK> 1183*5113495bSYour Name <enum 1 Prefered_ac_is_BE> 1184*5113495bSYour Name <enum 2 Prefered_ac_is_VI> 1185*5113495bSYour Name <enum 3 Prefered_ac_is_VO> 1186*5113495bSYour Name 1187*5113495bSYour Name <legal all> 1188*5113495bSYour Name */ 1189*5113495bSYour Name 1190*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_OFFSET 0x0000000000000010 1191*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_LSB 46 1192*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MSB 47 1193*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MASK 0x0000c00000000000 1194*5113495bSYour Name 1195*5113495bSYour Name 1196*5113495bSYour Name /* Description BAR_CONTROL_ACK_POLICY 1197*5113495bSYour Name 1198*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1199*5113495bSYour Name 1200*5113495bSYour Name 1201*5113495bSYour Name MU-BAR trigger variant user info 1202*5113495bSYour Name 1203*5113495bSYour Name Bar control field ack policy extracted from the trigger 1204*5113495bSYour Name frame 1205*5113495bSYour Name 1206*5113495bSYour Name <legal all> 1207*5113495bSYour Name */ 1208*5113495bSYour Name 1209*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_OFFSET 0x0000000000000010 1210*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_LSB 48 1211*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MSB 48 1212*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MASK 0x0001000000000000 1213*5113495bSYour Name 1214*5113495bSYour Name 1215*5113495bSYour Name /* Description BAR_CONTROL_MULTI_TID 1216*5113495bSYour Name 1217*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1218*5113495bSYour Name 1219*5113495bSYour Name 1220*5113495bSYour Name MU-BAR trigger variant user info 1221*5113495bSYour Name 1222*5113495bSYour Name Bar control field multi_tid extracted from the trigger frame 1223*5113495bSYour Name 1224*5113495bSYour Name 1225*5113495bSYour Name <legal all> 1226*5113495bSYour Name */ 1227*5113495bSYour Name 1228*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_OFFSET 0x0000000000000010 1229*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_LSB 49 1230*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MSB 49 1231*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MASK 0x0002000000000000 1232*5113495bSYour Name 1233*5113495bSYour Name 1234*5113495bSYour Name /* Description BAR_CONTROL_COMPRESSED_BITMAP 1235*5113495bSYour Name 1236*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1237*5113495bSYour Name 1238*5113495bSYour Name 1239*5113495bSYour Name MU-BAR trigger variant user info 1240*5113495bSYour Name 1241*5113495bSYour Name Bar control field compressed bitmap extracted from the trigger 1242*5113495bSYour Name frame 1243*5113495bSYour Name 1244*5113495bSYour Name <legal all> 1245*5113495bSYour Name */ 1246*5113495bSYour Name 1247*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_OFFSET 0x0000000000000010 1248*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_LSB 50 1249*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MSB 50 1250*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MASK 0x0004000000000000 1251*5113495bSYour Name 1252*5113495bSYour Name 1253*5113495bSYour Name /* Description BAR_CONTROL_RESERVED 1254*5113495bSYour Name 1255*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1256*5113495bSYour Name 1257*5113495bSYour Name 1258*5113495bSYour Name MU-BAR trigger variant user info 1259*5113495bSYour Name 1260*5113495bSYour Name Bar control field reserved part extracted from the trigger 1261*5113495bSYour Name frame 1262*5113495bSYour Name 1263*5113495bSYour Name <legal all> 1264*5113495bSYour Name */ 1265*5113495bSYour Name 1266*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_OFFSET 0x0000000000000010 1267*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_LSB 51 1268*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MSB 59 1269*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MASK 0x0ff8000000000000 1270*5113495bSYour Name 1271*5113495bSYour Name 1272*5113495bSYour Name /* Description BAR_CONTROL_TID_INFO 1273*5113495bSYour Name 1274*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1275*5113495bSYour Name 1276*5113495bSYour Name 1277*5113495bSYour Name MU-BAR trigger variant user info 1278*5113495bSYour Name 1279*5113495bSYour Name Bar control field tid info extracted from the trigger frame 1280*5113495bSYour Name 1281*5113495bSYour Name 1282*5113495bSYour Name <legal all> 1283*5113495bSYour Name */ 1284*5113495bSYour Name 1285*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_OFFSET 0x0000000000000010 1286*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_LSB 60 1287*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MSB 63 1288*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MASK 0xf000000000000000 1289*5113495bSYour Name 1290*5113495bSYour Name 1291*5113495bSYour Name /* Description NR0_PER_TID_INFO_RESERVED 1292*5113495bSYour Name 1293*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1294*5113495bSYour Name 1295*5113495bSYour Name 1296*5113495bSYour Name MU-BAR trigger variant user info 1297*5113495bSYour Name 1298*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1299*5113495bSYour Name and BAR_control_TID_info >=0 1300*5113495bSYour Name 1301*5113495bSYour Name Per TID info, field "Reserved 1302*5113495bSYour Name Field" 1303*5113495bSYour Name 1304*5113495bSYour Name <legal all> 1305*5113495bSYour Name */ 1306*5113495bSYour Name 1307*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018 1308*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_LSB 0 1309*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MSB 11 1310*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff 1311*5113495bSYour Name 1312*5113495bSYour Name 1313*5113495bSYour Name /* Description NR0_PER_TID_INFO_TID_VALUE 1314*5113495bSYour Name 1315*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1316*5113495bSYour Name 1317*5113495bSYour Name 1318*5113495bSYour Name MU-BAR trigger variant user info 1319*5113495bSYour Name 1320*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1321*5113495bSYour Name and BAR_control_TID_info >=0 1322*5113495bSYour Name 1323*5113495bSYour Name Per TID info, field "TID value" 1324*5113495bSYour Name 1325*5113495bSYour Name <legal all> 1326*5113495bSYour Name */ 1327*5113495bSYour Name 1328*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018 1329*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_LSB 12 1330*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MSB 15 1331*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000 1332*5113495bSYour Name 1333*5113495bSYour Name 1334*5113495bSYour Name /* Description NR0_START_SEQ_CTRL_FRAG_NUMBER 1335*5113495bSYour Name 1336*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1337*5113495bSYour Name 1338*5113495bSYour Name 1339*5113495bSYour Name MU-BAR trigger variant user info 1340*5113495bSYour Name 1341*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1342*5113495bSYour Name and BAR_control_TID_info >=0 1343*5113495bSYour Name 1344*5113495bSYour Name OR 1345*5113495bSYour Name 1346*5113495bSYour Name Field only valid if the BAR control type indicates Basic 1347*5113495bSYour Name Block ACK request 1348*5113495bSYour Name 1349*5113495bSYour Name 1350*5113495bSYour Name Start Sequence control, subfield fragment 1351*5113495bSYour Name 1352*5113495bSYour Name <legal all> 1353*5113495bSYour Name */ 1354*5113495bSYour Name 1355*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018 1356*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_LSB 16 1357*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MSB 19 1358*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000 1359*5113495bSYour Name 1360*5113495bSYour Name 1361*5113495bSYour Name /* Description NR0_START_SEQ_CTRL_START_SEQ_NUMBER 1362*5113495bSYour Name 1363*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1364*5113495bSYour Name 1365*5113495bSYour Name 1366*5113495bSYour Name MU-BAR trigger variant user info 1367*5113495bSYour Name 1368*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1369*5113495bSYour Name and BAR_control_TID_info >=0 1370*5113495bSYour Name 1371*5113495bSYour Name OR 1372*5113495bSYour Name 1373*5113495bSYour Name Field valid if the BAR control type indicates Basic Block 1374*5113495bSYour Name ACK request 1375*5113495bSYour Name 1376*5113495bSYour Name Start Sequence control, subfield Start sequence number 1377*5113495bSYour Name 1378*5113495bSYour Name <legal all> 1379*5113495bSYour Name */ 1380*5113495bSYour Name 1381*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018 1382*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20 1383*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31 1384*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000 1385*5113495bSYour Name 1386*5113495bSYour Name 1387*5113495bSYour Name /* Description NR1_PER_TID_INFO_RESERVED 1388*5113495bSYour Name 1389*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1390*5113495bSYour Name 1391*5113495bSYour Name 1392*5113495bSYour Name MU-BAR trigger variant user info 1393*5113495bSYour Name 1394*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1395*5113495bSYour Name and BAR_control_TID_info >=1 1396*5113495bSYour Name 1397*5113495bSYour Name Per TID info, field "Reserved 1398*5113495bSYour Name Field" 1399*5113495bSYour Name 1400*5113495bSYour Name <legal all> 1401*5113495bSYour Name */ 1402*5113495bSYour Name 1403*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000018 1404*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_LSB 32 1405*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MSB 43 1406*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000 1407*5113495bSYour Name 1408*5113495bSYour Name 1409*5113495bSYour Name /* Description NR1_PER_TID_INFO_TID_VALUE 1410*5113495bSYour Name 1411*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1412*5113495bSYour Name 1413*5113495bSYour Name 1414*5113495bSYour Name MU-BAR trigger variant user info 1415*5113495bSYour Name 1416*5113495bSYour Name 1417*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1418*5113495bSYour Name and BAR_control_TID_info >=1 1419*5113495bSYour Name 1420*5113495bSYour Name Per TID info, field "TID value" 1421*5113495bSYour Name 1422*5113495bSYour Name <legal all> 1423*5113495bSYour Name */ 1424*5113495bSYour Name 1425*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000018 1426*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_LSB 44 1427*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MSB 47 1428*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000 1429*5113495bSYour Name 1430*5113495bSYour Name 1431*5113495bSYour Name /* Description NR1_START_SEQ_CTRL_FRAG_NUMBER 1432*5113495bSYour Name 1433*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1434*5113495bSYour Name 1435*5113495bSYour Name 1436*5113495bSYour Name MU-BAR trigger variant user info 1437*5113495bSYour Name 1438*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1439*5113495bSYour Name and BAR_control_TID_info >=1 1440*5113495bSYour Name 1441*5113495bSYour Name Start Sequence control, subfield fragment 1442*5113495bSYour Name 1443*5113495bSYour Name <legal all> 1444*5113495bSYour Name */ 1445*5113495bSYour Name 1446*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000018 1447*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_LSB 48 1448*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MSB 51 1449*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000 1450*5113495bSYour Name 1451*5113495bSYour Name 1452*5113495bSYour Name /* Description NR1_START_SEQ_CTRL_START_SEQ_NUMBER 1453*5113495bSYour Name 1454*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1455*5113495bSYour Name 1456*5113495bSYour Name 1457*5113495bSYour Name MU-BAR trigger variant user info 1458*5113495bSYour Name 1459*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1460*5113495bSYour Name and BAR_control_TID_info >=1 1461*5113495bSYour Name 1462*5113495bSYour Name Start Sequence control, subfield Start sequence number 1463*5113495bSYour Name 1464*5113495bSYour Name <legal all> 1465*5113495bSYour Name */ 1466*5113495bSYour Name 1467*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000018 1468*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52 1469*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63 1470*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000 1471*5113495bSYour Name 1472*5113495bSYour Name 1473*5113495bSYour Name /* Description NR2_PER_TID_INFO_RESERVED 1474*5113495bSYour Name 1475*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1476*5113495bSYour Name 1477*5113495bSYour Name 1478*5113495bSYour Name MU-BAR trigger variant user info 1479*5113495bSYour Name 1480*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1481*5113495bSYour Name and BAR_control_TID_info >=2 1482*5113495bSYour Name 1483*5113495bSYour Name Per TID info, field "Reserved 1484*5113495bSYour Name Field" 1485*5113495bSYour Name 1486*5113495bSYour Name <legal all> 1487*5113495bSYour Name */ 1488*5113495bSYour Name 1489*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020 1490*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_LSB 0 1491*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MSB 11 1492*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff 1493*5113495bSYour Name 1494*5113495bSYour Name 1495*5113495bSYour Name /* Description NR2_PER_TID_INFO_TID_VALUE 1496*5113495bSYour Name 1497*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1498*5113495bSYour Name 1499*5113495bSYour Name 1500*5113495bSYour Name MU-BAR trigger variant user info 1501*5113495bSYour Name 1502*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1503*5113495bSYour Name and BAR_control_TID_info >=2 1504*5113495bSYour Name 1505*5113495bSYour Name Per TID info, field "TID value" 1506*5113495bSYour Name 1507*5113495bSYour Name <legal all> 1508*5113495bSYour Name */ 1509*5113495bSYour Name 1510*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020 1511*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_LSB 12 1512*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MSB 15 1513*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000 1514*5113495bSYour Name 1515*5113495bSYour Name 1516*5113495bSYour Name /* Description NR2_START_SEQ_CTRL_FRAG_NUMBER 1517*5113495bSYour Name 1518*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1519*5113495bSYour Name 1520*5113495bSYour Name 1521*5113495bSYour Name MU-BAR trigger variant user info 1522*5113495bSYour Name 1523*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1524*5113495bSYour Name and BAR_control_TID_info >=2 1525*5113495bSYour Name 1526*5113495bSYour Name Start Sequence control, subfield fragment 1527*5113495bSYour Name 1528*5113495bSYour Name <legal all> 1529*5113495bSYour Name */ 1530*5113495bSYour Name 1531*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020 1532*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_LSB 16 1533*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MSB 19 1534*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000 1535*5113495bSYour Name 1536*5113495bSYour Name 1537*5113495bSYour Name /* Description NR2_START_SEQ_CTRL_START_SEQ_NUMBER 1538*5113495bSYour Name 1539*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1540*5113495bSYour Name 1541*5113495bSYour Name 1542*5113495bSYour Name MU-BAR trigger variant user info 1543*5113495bSYour Name 1544*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1545*5113495bSYour Name and BAR_control_TID_info >=2 1546*5113495bSYour Name 1547*5113495bSYour Name Start Sequence control, subfield Start sequence number 1548*5113495bSYour Name 1549*5113495bSYour Name <legal all> 1550*5113495bSYour Name */ 1551*5113495bSYour Name 1552*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020 1553*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20 1554*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31 1555*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000 1556*5113495bSYour Name 1557*5113495bSYour Name 1558*5113495bSYour Name /* Description NR3_PER_TID_INFO_RESERVED 1559*5113495bSYour Name 1560*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1561*5113495bSYour Name 1562*5113495bSYour Name 1563*5113495bSYour Name MU-BAR trigger variant user info 1564*5113495bSYour Name 1565*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1566*5113495bSYour Name and BAR_control_TID_info >=3 1567*5113495bSYour Name 1568*5113495bSYour Name Per TID info, field "Reserved 1569*5113495bSYour Name Field" 1570*5113495bSYour Name 1571*5113495bSYour Name <legal all> 1572*5113495bSYour Name */ 1573*5113495bSYour Name 1574*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000020 1575*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_LSB 32 1576*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MSB 43 1577*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000 1578*5113495bSYour Name 1579*5113495bSYour Name 1580*5113495bSYour Name /* Description NR3_PER_TID_INFO_TID_VALUE 1581*5113495bSYour Name 1582*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1583*5113495bSYour Name 1584*5113495bSYour Name 1585*5113495bSYour Name MU-BAR trigger variant user info 1586*5113495bSYour Name 1587*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1588*5113495bSYour Name and BAR_control_TID_info >=3 1589*5113495bSYour Name 1590*5113495bSYour Name Per TID info, field "TID value" 1591*5113495bSYour Name 1592*5113495bSYour Name <legal all> 1593*5113495bSYour Name */ 1594*5113495bSYour Name 1595*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000020 1596*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_LSB 44 1597*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MSB 47 1598*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000 1599*5113495bSYour Name 1600*5113495bSYour Name 1601*5113495bSYour Name /* Description NR3_START_SEQ_CTRL_FRAG_NUMBER 1602*5113495bSYour Name 1603*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1604*5113495bSYour Name 1605*5113495bSYour Name 1606*5113495bSYour Name MU-BAR trigger variant user info 1607*5113495bSYour Name 1608*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1609*5113495bSYour Name and BAR_control_TID_info >=3 1610*5113495bSYour Name 1611*5113495bSYour Name Start Sequence control, subfield fragment 1612*5113495bSYour Name 1613*5113495bSYour Name <legal all> 1614*5113495bSYour Name */ 1615*5113495bSYour Name 1616*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000020 1617*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_LSB 48 1618*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MSB 51 1619*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000 1620*5113495bSYour Name 1621*5113495bSYour Name 1622*5113495bSYour Name /* Description NR3_START_SEQ_CTRL_START_SEQ_NUMBER 1623*5113495bSYour Name 1624*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1625*5113495bSYour Name 1626*5113495bSYour Name 1627*5113495bSYour Name MU-BAR trigger variant user info 1628*5113495bSYour Name 1629*5113495bSYour Name 1630*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1631*5113495bSYour Name and BAR_control_TID_info >=3 1632*5113495bSYour Name 1633*5113495bSYour Name Start Sequence control, subfield Start sequence number 1634*5113495bSYour Name 1635*5113495bSYour Name <legal all> 1636*5113495bSYour Name */ 1637*5113495bSYour Name 1638*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000020 1639*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52 1640*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63 1641*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000 1642*5113495bSYour Name 1643*5113495bSYour Name 1644*5113495bSYour Name /* Description NR4_PER_TID_INFO_RESERVED 1645*5113495bSYour Name 1646*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1647*5113495bSYour Name 1648*5113495bSYour Name 1649*5113495bSYour Name MU-BAR trigger variant user info 1650*5113495bSYour Name 1651*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1652*5113495bSYour Name and BAR_control_TID_info >=4 1653*5113495bSYour Name 1654*5113495bSYour Name Per TID info, field "Reserved 1655*5113495bSYour Name Field" 1656*5113495bSYour Name 1657*5113495bSYour Name <legal all> 1658*5113495bSYour Name */ 1659*5113495bSYour Name 1660*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028 1661*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_LSB 0 1662*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MSB 11 1663*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff 1664*5113495bSYour Name 1665*5113495bSYour Name 1666*5113495bSYour Name /* Description NR4_PER_TID_INFO_TID_VALUE 1667*5113495bSYour Name 1668*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1669*5113495bSYour Name 1670*5113495bSYour Name 1671*5113495bSYour Name MU-BAR trigger variant user info 1672*5113495bSYour Name 1673*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1674*5113495bSYour Name and BAR_control_TID_info >=4 1675*5113495bSYour Name 1676*5113495bSYour Name Per TID info, field "TID value" 1677*5113495bSYour Name 1678*5113495bSYour Name <legal all> 1679*5113495bSYour Name */ 1680*5113495bSYour Name 1681*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028 1682*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_LSB 12 1683*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MSB 15 1684*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000 1685*5113495bSYour Name 1686*5113495bSYour Name 1687*5113495bSYour Name /* Description NR4_START_SEQ_CTRL_FRAG_NUMBER 1688*5113495bSYour Name 1689*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1690*5113495bSYour Name 1691*5113495bSYour Name 1692*5113495bSYour Name MU-BAR trigger variant user info 1693*5113495bSYour Name 1694*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1695*5113495bSYour Name and BAR_control_TID_info >=4 1696*5113495bSYour Name 1697*5113495bSYour Name Start Sequence control, subfield fragment 1698*5113495bSYour Name 1699*5113495bSYour Name <legal all> 1700*5113495bSYour Name */ 1701*5113495bSYour Name 1702*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028 1703*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_LSB 16 1704*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MSB 19 1705*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000 1706*5113495bSYour Name 1707*5113495bSYour Name 1708*5113495bSYour Name /* Description NR4_START_SEQ_CTRL_START_SEQ_NUMBER 1709*5113495bSYour Name 1710*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1711*5113495bSYour Name 1712*5113495bSYour Name 1713*5113495bSYour Name MU-BAR trigger variant user info 1714*5113495bSYour Name 1715*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1716*5113495bSYour Name and BAR_control_TID_info >=4 1717*5113495bSYour Name 1718*5113495bSYour Name Start Sequence control, subfield Start sequence number 1719*5113495bSYour Name 1720*5113495bSYour Name <legal all> 1721*5113495bSYour Name */ 1722*5113495bSYour Name 1723*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028 1724*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20 1725*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31 1726*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000 1727*5113495bSYour Name 1728*5113495bSYour Name 1729*5113495bSYour Name /* Description NR5_PER_TID_INFO_RESERVED 1730*5113495bSYour Name 1731*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1732*5113495bSYour Name 1733*5113495bSYour Name 1734*5113495bSYour Name MU-BAR trigger variant user info 1735*5113495bSYour Name 1736*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1737*5113495bSYour Name and BAR_control_TID_info >=5 1738*5113495bSYour Name 1739*5113495bSYour Name Per TID info, field "Reserved 1740*5113495bSYour Name Field" 1741*5113495bSYour Name 1742*5113495bSYour Name <legal all> 1743*5113495bSYour Name */ 1744*5113495bSYour Name 1745*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000028 1746*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_LSB 32 1747*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MSB 43 1748*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000 1749*5113495bSYour Name 1750*5113495bSYour Name 1751*5113495bSYour Name /* Description NR5_PER_TID_INFO_TID_VALUE 1752*5113495bSYour Name 1753*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1754*5113495bSYour Name 1755*5113495bSYour Name 1756*5113495bSYour Name MU-BAR trigger variant user info 1757*5113495bSYour Name 1758*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1759*5113495bSYour Name and BAR_control_TID_info >=5 1760*5113495bSYour Name 1761*5113495bSYour Name Per TID info, field "TID value" 1762*5113495bSYour Name 1763*5113495bSYour Name <legal all> 1764*5113495bSYour Name */ 1765*5113495bSYour Name 1766*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000028 1767*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_LSB 44 1768*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MSB 47 1769*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000 1770*5113495bSYour Name 1771*5113495bSYour Name 1772*5113495bSYour Name /* Description NR5_START_SEQ_CTRL_FRAG_NUMBER 1773*5113495bSYour Name 1774*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1775*5113495bSYour Name 1776*5113495bSYour Name 1777*5113495bSYour Name MU-BAR trigger variant user info 1778*5113495bSYour Name 1779*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1780*5113495bSYour Name and BAR_control_TID_info >=5 1781*5113495bSYour Name 1782*5113495bSYour Name Start Sequence control, subfield fragment 1783*5113495bSYour Name 1784*5113495bSYour Name <legal all> 1785*5113495bSYour Name */ 1786*5113495bSYour Name 1787*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000028 1788*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_LSB 48 1789*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MSB 51 1790*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000 1791*5113495bSYour Name 1792*5113495bSYour Name 1793*5113495bSYour Name /* Description NR5_START_SEQ_CTRL_START_SEQ_NUMBER 1794*5113495bSYour Name 1795*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1796*5113495bSYour Name 1797*5113495bSYour Name 1798*5113495bSYour Name MU-BAR trigger variant user info 1799*5113495bSYour Name 1800*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1801*5113495bSYour Name and BAR_control_TID_info >=5 1802*5113495bSYour Name 1803*5113495bSYour Name Start Sequence control, subfield Start sequence number 1804*5113495bSYour Name 1805*5113495bSYour Name <legal all> 1806*5113495bSYour Name */ 1807*5113495bSYour Name 1808*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000028 1809*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52 1810*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63 1811*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000 1812*5113495bSYour Name 1813*5113495bSYour Name 1814*5113495bSYour Name /* Description NR6_PER_TID_INFO_RESERVED 1815*5113495bSYour Name 1816*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1817*5113495bSYour Name 1818*5113495bSYour Name 1819*5113495bSYour Name MU-BAR trigger variant user info 1820*5113495bSYour Name 1821*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1822*5113495bSYour Name and BAR_control_TID_info >=6 1823*5113495bSYour Name 1824*5113495bSYour Name Per TID info, field "Reserved 1825*5113495bSYour Name Field" 1826*5113495bSYour Name 1827*5113495bSYour Name <legal all> 1828*5113495bSYour Name */ 1829*5113495bSYour Name 1830*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030 1831*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_LSB 0 1832*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MSB 11 1833*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MASK 0x0000000000000fff 1834*5113495bSYour Name 1835*5113495bSYour Name 1836*5113495bSYour Name /* Description NR6_PER_TID_INFO_TID_VALUE 1837*5113495bSYour Name 1838*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1839*5113495bSYour Name 1840*5113495bSYour Name 1841*5113495bSYour Name MU-BAR trigger variant user info 1842*5113495bSYour Name 1843*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1844*5113495bSYour Name and BAR_control_TID_info >=6 1845*5113495bSYour Name 1846*5113495bSYour Name Per TID info, field "TID value" 1847*5113495bSYour Name 1848*5113495bSYour Name <legal all> 1849*5113495bSYour Name */ 1850*5113495bSYour Name 1851*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030 1852*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_LSB 12 1853*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MSB 15 1854*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MASK 0x000000000000f000 1855*5113495bSYour Name 1856*5113495bSYour Name 1857*5113495bSYour Name /* Description NR6_START_SEQ_CTRL_FRAG_NUMBER 1858*5113495bSYour Name 1859*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1860*5113495bSYour Name 1861*5113495bSYour Name 1862*5113495bSYour Name MU-BAR trigger variant user info 1863*5113495bSYour Name 1864*5113495bSYour Name 1865*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1866*5113495bSYour Name and BAR_control_TID_info >=6 1867*5113495bSYour Name 1868*5113495bSYour Name Start Sequence control, subfield fragment 1869*5113495bSYour Name 1870*5113495bSYour Name <legal all> 1871*5113495bSYour Name */ 1872*5113495bSYour Name 1873*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030 1874*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_LSB 16 1875*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MSB 19 1876*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x00000000000f0000 1877*5113495bSYour Name 1878*5113495bSYour Name 1879*5113495bSYour Name /* Description NR6_START_SEQ_CTRL_START_SEQ_NUMBER 1880*5113495bSYour Name 1881*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1882*5113495bSYour Name 1883*5113495bSYour Name 1884*5113495bSYour Name MU-BAR trigger variant user info 1885*5113495bSYour Name 1886*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1887*5113495bSYour Name and BAR_control_TID_info >=6 1888*5113495bSYour Name 1889*5113495bSYour Name Start Sequence control, subfield Start sequence number 1890*5113495bSYour Name 1891*5113495bSYour Name <legal all> 1892*5113495bSYour Name */ 1893*5113495bSYour Name 1894*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030 1895*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 20 1896*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 31 1897*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0x00000000fff00000 1898*5113495bSYour Name 1899*5113495bSYour Name 1900*5113495bSYour Name /* Description NR7_PER_TID_INFO_RESERVED 1901*5113495bSYour Name 1902*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1903*5113495bSYour Name 1904*5113495bSYour Name 1905*5113495bSYour Name MU-BAR trigger variant user info 1906*5113495bSYour Name 1907*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1908*5113495bSYour Name and BAR_control_TID_info >=7 1909*5113495bSYour Name 1910*5113495bSYour Name Per TID info, field "Reserved 1911*5113495bSYour Name Field" 1912*5113495bSYour Name 1913*5113495bSYour Name <legal all> 1914*5113495bSYour Name */ 1915*5113495bSYour Name 1916*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_OFFSET 0x0000000000000030 1917*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_LSB 32 1918*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MSB 43 1919*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MASK 0x00000fff00000000 1920*5113495bSYour Name 1921*5113495bSYour Name 1922*5113495bSYour Name /* Description NR7_PER_TID_INFO_TID_VALUE 1923*5113495bSYour Name 1924*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1925*5113495bSYour Name 1926*5113495bSYour Name 1927*5113495bSYour Name MU-BAR trigger variant user info 1928*5113495bSYour Name 1929*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1930*5113495bSYour Name and BAR_control_TID_info >=7 1931*5113495bSYour Name 1932*5113495bSYour Name Per TID info, field "TID value" 1933*5113495bSYour Name 1934*5113495bSYour Name <legal all> 1935*5113495bSYour Name */ 1936*5113495bSYour Name 1937*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_OFFSET 0x0000000000000030 1938*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_LSB 44 1939*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MSB 47 1940*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MASK 0x0000f00000000000 1941*5113495bSYour Name 1942*5113495bSYour Name 1943*5113495bSYour Name /* Description NR7_START_SEQ_CTRL_FRAG_NUMBER 1944*5113495bSYour Name 1945*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1946*5113495bSYour Name 1947*5113495bSYour Name 1948*5113495bSYour Name MU-BAR trigger variant user info 1949*5113495bSYour Name 1950*5113495bSYour Name Field only valid if the BAR control type indicates Multi-TID 1951*5113495bSYour Name and BAR_control_TID_info >=7 1952*5113495bSYour Name 1953*5113495bSYour Name Start Sequence control, subfield fragment 1954*5113495bSYour Name 1955*5113495bSYour Name <legal all> 1956*5113495bSYour Name */ 1957*5113495bSYour Name 1958*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_OFFSET 0x0000000000000030 1959*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_LSB 48 1960*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MSB 51 1961*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MASK 0x000f000000000000 1962*5113495bSYour Name 1963*5113495bSYour Name 1964*5113495bSYour Name /* Description NR7_START_SEQ_CTRL_START_SEQ_NUMBER 1965*5113495bSYour Name 1966*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1967*5113495bSYour Name 1968*5113495bSYour Name 1969*5113495bSYour Name MU-BAR trigger variant user info 1970*5113495bSYour Name 1971*5113495bSYour Name Field valid if the BAR control type indicates Multi-TID 1972*5113495bSYour Name and BAR_control_TID_info >=7 1973*5113495bSYour Name 1974*5113495bSYour Name Start Sequence control, subfield Start sequence number 1975*5113495bSYour Name 1976*5113495bSYour Name <legal all> 1977*5113495bSYour Name */ 1978*5113495bSYour Name 1979*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET 0x0000000000000030 1980*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_LSB 52 1981*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MSB 63 1982*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MASK 0xfff0000000000000 1983*5113495bSYour Name 1984*5113495bSYour Name 1985*5113495bSYour Name /* Description FB_SEGMENT_RETRANSMISSION_BITMAP 1986*5113495bSYour Name 1987*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 1988*5113495bSYour Name 1989*5113495bSYour Name 1990*5113495bSYour Name Beamforming_report_poll trigger variant user info 1991*5113495bSYour Name 1992*5113495bSYour Name Segment information field extracted from the trigger frame 1993*5113495bSYour Name 1994*5113495bSYour Name 1995*5113495bSYour Name <legal all> 1996*5113495bSYour Name */ 1997*5113495bSYour Name 1998*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_OFFSET 0x0000000000000038 1999*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_LSB 0 2000*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MSB 7 2001*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MASK 0x00000000000000ff 2002*5113495bSYour Name 2003*5113495bSYour Name 2004*5113495bSYour Name /* Description RESERVED_14A 2005*5113495bSYour Name 2006*5113495bSYour Name <legal 0> 2007*5113495bSYour Name */ 2008*5113495bSYour Name 2009*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_OFFSET 0x0000000000000038 2010*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_LSB 8 2011*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MSB 9 2012*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MASK 0x0000000000000300 2013*5113495bSYour Name 2014*5113495bSYour Name 2015*5113495bSYour Name /* Description U_SIG_PUNCTURE_PATTERN_ENCODING 2016*5113495bSYour Name 2017*5113495bSYour Name This field is only valid if the trigger was received in 2018*5113495bSYour Name an EHT PPDU. 2019*5113495bSYour Name 2020*5113495bSYour Name The 6-bit value used in U-SIG and/or EHT-SIG Common field 2021*5113495bSYour Name for the puncture pattern 2022*5113495bSYour Name <legal 0-29> 2023*5113495bSYour Name */ 2024*5113495bSYour Name 2025*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET 0x0000000000000038 2026*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB 10 2027*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB 15 2028*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK 0x000000000000fc00 2029*5113495bSYour Name 2030*5113495bSYour Name 2031*5113495bSYour Name /* Description DOT11BE_PUNCTURE_BITMAP 2032*5113495bSYour Name 2033*5113495bSYour Name This field is only valid if the trigger was received in 2034*5113495bSYour Name an EHT PPDU. 2035*5113495bSYour Name 2036*5113495bSYour Name The bitmap of 20 MHz sub-bands valid in the EHT PPDU reception 2037*5113495bSYour Name 2038*5113495bSYour Name 2039*5113495bSYour Name RXPCU gets this from the received U-SIG and/or EHT-SIG via 2040*5113495bSYour Name PHY microcode. 2041*5113495bSYour Name 2042*5113495bSYour Name <legal all> 2043*5113495bSYour Name */ 2044*5113495bSYour Name 2045*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_OFFSET 0x0000000000000038 2046*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_LSB 16 2047*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MSB 31 2048*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MASK 0x00000000ffff0000 2049*5113495bSYour Name 2050*5113495bSYour Name 2051*5113495bSYour Name /* Description RX_CHAIN_MASK 2052*5113495bSYour Name 2053*5113495bSYour Name Description dependent on the setting of field Rx_chain_mask_type. 2054*5113495bSYour Name 2055*5113495bSYour Name 2056*5113495bSYour Name The chain mask at the start of the reception of this frame 2057*5113495bSYour Name when Rx_chain_mask_type is set to 1'b0. In this mode used 2058*5113495bSYour Name in 11ax TPC calculations for UL OFDMA/MIMO and has to be 2059*5113495bSYour Name in sync with the rssi_comb value as this is also used by 2060*5113495bSYour Name the MAC for the TPC calculations. 2061*5113495bSYour Name 2062*5113495bSYour Name 2063*5113495bSYour Name The final rx chain mask used for the frame reception when 2064*5113495bSYour Name Rx_chain_mask_type is set to 1'b1 2065*5113495bSYour Name 2066*5113495bSYour Name each bit is one antenna 2067*5113495bSYour Name 0: the chain is NOT used 2068*5113495bSYour Name 1: the chain is used 2069*5113495bSYour Name 2070*5113495bSYour Name Supports up to 8 chains 2071*5113495bSYour Name <legal all> 2072*5113495bSYour Name */ 2073*5113495bSYour Name 2074*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_OFFSET 0x0000000000000038 2075*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_LSB 32 2076*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MSB 39 2077*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MASK 0x000000ff00000000 2078*5113495bSYour Name 2079*5113495bSYour Name 2080*5113495bSYour Name /* Description RX_DURATION_FIELD 2081*5113495bSYour Name 2082*5113495bSYour Name The duration field embedded in the received trigger frame. 2083*5113495bSYour Name 2084*5113495bSYour Name PDG uses this field to calculate what the duration field 2085*5113495bSYour Name value should be in the response frame. 2086*5113495bSYour Name This is returned to the TX PCU 2087*5113495bSYour Name <legal all> 2088*5113495bSYour Name */ 2089*5113495bSYour Name 2090*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_OFFSET 0x0000000000000038 2091*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_LSB 40 2092*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MSB 55 2093*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MASK 0x00ffff0000000000 2094*5113495bSYour Name 2095*5113495bSYour Name 2096*5113495bSYour Name /* Description SCRAMBLER_SEED 2097*5113495bSYour Name 2098*5113495bSYour Name This field provides the 7-bit seed for the data scrambler. 2099*5113495bSYour Name 2100*5113495bSYour Name Used in response generation to MU-RTS trigger, where CTS 2101*5113495bSYour Name needs to have the same scrambler seed as the RTS 2102*5113495bSYour Name <legal all> 2103*5113495bSYour Name */ 2104*5113495bSYour Name 2105*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_OFFSET 0x0000000000000038 2106*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_LSB 56 2107*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MSB 62 2108*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MASK 0x7f00000000000000 2109*5113495bSYour Name 2110*5113495bSYour Name 2111*5113495bSYour Name /* Description RX_CHAIN_MASK_TYPE 2112*5113495bSYour Name 2113*5113495bSYour Name Indicates if the field rx_chain_mask represents the mask 2114*5113495bSYour Name at start of reception (on which the Rssi_comb value is 2115*5113495bSYour Name based), or the setting used during the remainder of the 2116*5113495bSYour Name reception 2117*5113495bSYour Name 2118*5113495bSYour Name 1'b0: rxtd.listen_pri80_mask 2119*5113495bSYour Name 1'b1: Final receive mask 2120*5113495bSYour Name 2121*5113495bSYour Name <legal all> 2122*5113495bSYour Name */ 2123*5113495bSYour Name 2124*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_OFFSET 0x0000000000000038 2125*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_LSB 63 2126*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MSB 63 2127*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MASK 0x8000000000000000 2128*5113495bSYour Name 2129*5113495bSYour Name 2130*5113495bSYour Name /* Description MLO_STA_ID_DETAILS_RX 2131*5113495bSYour Name 2132*5113495bSYour Name Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID' 2133*5113495bSYour Name from address search. 2134*5113495bSYour Name 2135*5113495bSYour Name See definition of mlo_sta_id_details. 2136*5113495bSYour Name 2137*5113495bSYour Name Hamilton v1 filled 'Bss_color' in bits [5:0] and 'Qos_null_only_response_tx' 2138*5113495bSYour Name in bit [6] here. 2139*5113495bSYour Name */ 2140*5113495bSYour Name 2141*5113495bSYour Name 2142*5113495bSYour Name /* Description NSTR_MLO_STA_ID 2143*5113495bSYour Name 2144*5113495bSYour Name ID of peer participating in non-STR MLO 2145*5113495bSYour Name */ 2146*5113495bSYour Name 2147*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET 0x0000000000000040 2148*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB 0 2149*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB 9 2150*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK 0x00000000000003ff 2151*5113495bSYour Name 2152*5113495bSYour Name 2153*5113495bSYour Name /* Description BLOCK_SELF_ML_SYNC 2154*5113495bSYour Name 2155*5113495bSYour Name Only valid for TX 2156*5113495bSYour Name 2157*5113495bSYour Name When set, this provides an indication to block the peer 2158*5113495bSYour Name for self-link. 2159*5113495bSYour Name */ 2160*5113495bSYour Name 2161*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET 0x0000000000000040 2162*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB 10 2163*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB 10 2164*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK 0x0000000000000400 2165*5113495bSYour Name 2166*5113495bSYour Name 2167*5113495bSYour Name /* Description BLOCK_PARTNER_ML_SYNC 2168*5113495bSYour Name 2169*5113495bSYour Name Only valid for TX 2170*5113495bSYour Name 2171*5113495bSYour Name When set, this provides an indication to block the peer 2172*5113495bSYour Name for partner links. 2173*5113495bSYour Name */ 2174*5113495bSYour Name 2175*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x0000000000000040 2176*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB 11 2177*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB 11 2178*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK 0x0000000000000800 2179*5113495bSYour Name 2180*5113495bSYour Name 2181*5113495bSYour Name /* Description NSTR_MLO_STA_ID_VALID 2182*5113495bSYour Name 2183*5113495bSYour Name All the fields in this TLV are valid only if this bit is 2184*5113495bSYour Name set. 2185*5113495bSYour Name */ 2186*5113495bSYour Name 2187*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x0000000000000040 2188*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB 12 2189*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB 12 2190*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK 0x0000000000001000 2191*5113495bSYour Name 2192*5113495bSYour Name 2193*5113495bSYour Name /* Description RESERVED_0A 2194*5113495bSYour Name 2195*5113495bSYour Name <legal 0> 2196*5113495bSYour Name */ 2197*5113495bSYour Name 2198*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET 0x0000000000000040 2199*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB 13 2200*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB 15 2201*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK 0x000000000000e000 2202*5113495bSYour Name 2203*5113495bSYour Name 2204*5113495bSYour Name /* Description NORMALIZED_PRE_RSSI_COMB 2205*5113495bSYour Name 2206*5113495bSYour Name Combined pre_rssi of all chains, but "normalized" back to 2207*5113495bSYour Name a single chain. This avoids PDG from having to evaluate 2208*5113495bSYour Name this in combination with receive chain mask and perform 2209*5113495bSYour Name all kinds of pre-processing algorithms. 2210*5113495bSYour Name 2211*5113495bSYour Name Based on primary channel RSSI. 2212*5113495bSYour Name 2213*5113495bSYour Name RSSI is reported as 8b signed values. Nominally value is 2214*5113495bSYour Name in dB units above or below the noisefloor(minCCApwr). 2215*5113495bSYour Name 2216*5113495bSYour Name The resolution can be: 2217*5113495bSYour Name 1dB or 0.5dB. This is statically configured within the PHY 2218*5113495bSYour Name and MAC 2219*5113495bSYour Name 2220*5113495bSYour Name In case of 1dB, the Range is: 2221*5113495bSYour Name -128dB to 127dB 2222*5113495bSYour Name 2223*5113495bSYour Name In case of 0.5dB, the Range is: 2224*5113495bSYour Name -64dB to 63.5dB 2225*5113495bSYour Name 2226*5113495bSYour Name <legal all> 2227*5113495bSYour Name */ 2228*5113495bSYour Name 2229*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_OFFSET 0x0000000000000040 2230*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_LSB 16 2231*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MSB 23 2232*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MASK 0x0000000000ff0000 2233*5113495bSYour Name 2234*5113495bSYour Name 2235*5113495bSYour Name /* Description NORMALIZED_RSSI_COMB 2236*5113495bSYour Name 2237*5113495bSYour Name Combined rssi of all chains, but "normalized" back to a 2238*5113495bSYour Name single chain. This avoids PDG from having to evaluate this 2239*5113495bSYour Name in combination with receive chain mask and perform all 2240*5113495bSYour Name kinds of pre-processing algorithms. 2241*5113495bSYour Name 2242*5113495bSYour Name Based on primary channel RSSI. 2243*5113495bSYour Name 2244*5113495bSYour Name RSSI is reported as 8b signed values. Nominally value is 2245*5113495bSYour Name in dB units above or below the noisefloor(minCCApwr). 2246*5113495bSYour Name 2247*5113495bSYour Name The resolution can be: 2248*5113495bSYour Name 1dB or 0.5dB. This is statically configured within the PHY 2249*5113495bSYour Name and MAC 2250*5113495bSYour Name In case of 1dB, the Range is: 2251*5113495bSYour Name -128dB to 127dB 2252*5113495bSYour Name 2253*5113495bSYour Name In case of 0.5dB, the Range is: 2254*5113495bSYour Name -64dB to 63.5dB 2255*5113495bSYour Name 2256*5113495bSYour Name <legal all> 2257*5113495bSYour Name */ 2258*5113495bSYour Name 2259*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_OFFSET 0x0000000000000040 2260*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_LSB 24 2261*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MSB 31 2262*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MASK 0x00000000ff000000 2263*5113495bSYour Name 2264*5113495bSYour Name 2265*5113495bSYour Name /* Description SW_PEER_ID 2266*5113495bSYour Name 2267*5113495bSYour Name Used by the PHY to correlated received trigger frames with 2268*5113495bSYour Name an AP and calculate long term statistics for this AP 2269*5113495bSYour Name <legal all> 2270*5113495bSYour Name */ 2271*5113495bSYour Name 2272*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_OFFSET 0x0000000000000040 2273*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_LSB 32 2274*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MSB 47 2275*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MASK 0x0000ffff00000000 2276*5113495bSYour Name 2277*5113495bSYour Name 2278*5113495bSYour Name /* Description RESPONSE_TX_DURATION 2279*5113495bSYour Name 2280*5113495bSYour Name Field filled in by PDG based on the value that is given 2281*5113495bSYour Name in field response_Length in the RECEIVED_TRIGGER_INFO TLV 2282*5113495bSYour Name 2283*5113495bSYour Name 2284*5113495bSYour Name The amount of time the transmission of the HW response shall 2285*5113495bSYour Name take (in us) 2286*5113495bSYour Name 2287*5113495bSYour Name <legal all> 2288*5113495bSYour Name */ 2289*5113495bSYour Name 2290*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_OFFSET 0x0000000000000040 2291*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_LSB 48 2292*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MSB 63 2293*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MASK 0xffff000000000000 2294*5113495bSYour Name 2295*5113495bSYour Name 2296*5113495bSYour Name /* Description RANGING_TRIGGER_SUBTYPE 2297*5113495bSYour Name 2298*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2299*5113495bSYour Name 2300*5113495bSYour Name 2301*5113495bSYour Name Indicates the Trigger subtype for the current ranging TF 2302*5113495bSYour Name 2303*5113495bSYour Name 2304*5113495bSYour Name <enum 0 TF_Poll> 2305*5113495bSYour Name <enum 1 TF_Sound> 2306*5113495bSYour Name <enum 2 TF_Secure_Sound> 2307*5113495bSYour Name <enum 3 TF_Report> 2308*5113495bSYour Name 2309*5113495bSYour Name Hamilton v1 did not include this (and any subsequent) word. 2310*5113495bSYour Name 2311*5113495bSYour Name <legal 0-3> 2312*5113495bSYour Name */ 2313*5113495bSYour Name 2314*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_OFFSET 0x0000000000000048 2315*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_LSB 0 2316*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MSB 3 2317*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MASK 0x000000000000000f 2318*5113495bSYour Name 2319*5113495bSYour Name 2320*5113495bSYour Name /* Description TBR_TRIGGER_COMMON_INFO_79_68 2321*5113495bSYour Name 2322*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2323*5113495bSYour Name 2324*5113495bSYour Name 2325*5113495bSYour Name Ranging trigger variant common info 2326*5113495bSYour Name 2327*5113495bSYour Name Includes fields "Reserved," "Token," "Sounding Dialog Token 2328*5113495bSYour Name Number" 2329*5113495bSYour Name 2330*5113495bSYour Name If the Trigger Dependent Common Info sub-field is less than 2331*5113495bSYour Name 16 bits, the upper bits are set to 0. 2332*5113495bSYour Name 2333*5113495bSYour Name <legal all> 2334*5113495bSYour Name */ 2335*5113495bSYour Name 2336*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_OFFSET 0x0000000000000048 2337*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_LSB 4 2338*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MSB 15 2339*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MASK 0x000000000000fff0 2340*5113495bSYour Name 2341*5113495bSYour Name 2342*5113495bSYour Name /* Description TBR_TRIGGER_SOUND_RESERVED_20_12 2343*5113495bSYour Name 2344*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2345*5113495bSYour Name and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound 2346*5113495bSYour Name 2347*5113495bSYour Name 2348*5113495bSYour Name Ranging trigger variant sounding/secure sounding sub-variant 2349*5113495bSYour Name user info bits [20:12] 2350*5113495bSYour Name 2351*5113495bSYour Name <legal all> 2352*5113495bSYour Name */ 2353*5113495bSYour Name 2354*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_OFFSET 0x0000000000000048 2355*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_LSB 16 2356*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MSB 24 2357*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MASK 0x0000000001ff0000 2358*5113495bSYour Name 2359*5113495bSYour Name 2360*5113495bSYour Name /* Description I2R_REP 2361*5113495bSYour Name 2362*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2363*5113495bSYour Name and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound 2364*5113495bSYour Name 2365*5113495bSYour Name 2366*5113495bSYour Name Ranging trigger variant sounding/secure sounding sub-variant 2367*5113495bSYour Name user info field "I2R Rep" 2368*5113495bSYour Name 2369*5113495bSYour Name PDG uses this to to populate Nrep in 'MACTX_11AZ_USER_DESC_PER_USER.' 2370*5113495bSYour Name 2371*5113495bSYour Name 2372*5113495bSYour Name <legal all> 2373*5113495bSYour Name */ 2374*5113495bSYour Name 2375*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_I2R_REP_OFFSET 0x0000000000000048 2376*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_I2R_REP_LSB 25 2377*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_I2R_REP_MSB 27 2378*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_I2R_REP_MASK 0x000000000e000000 2379*5113495bSYour Name 2380*5113495bSYour Name 2381*5113495bSYour Name /* Description TBR_TRIGGER_SOUND_RESERVED_25_24 2382*5113495bSYour Name 2383*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2384*5113495bSYour Name and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound 2385*5113495bSYour Name 2386*5113495bSYour Name 2387*5113495bSYour Name Ranging trigger variant sounding/secure sounding sub-variant 2388*5113495bSYour Name user info bits [25:24] 2389*5113495bSYour Name 2390*5113495bSYour Name <legal all> 2391*5113495bSYour Name */ 2392*5113495bSYour Name 2393*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_OFFSET 0x0000000000000048 2394*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_LSB 28 2395*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MSB 29 2396*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MASK 0x0000000030000000 2397*5113495bSYour Name 2398*5113495bSYour Name 2399*5113495bSYour Name /* Description RESERVED_18A 2400*5113495bSYour Name 2401*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2402*5113495bSYour Name 2403*5113495bSYour Name 2404*5113495bSYour Name User trigger info 2405*5113495bSYour Name 2406*5113495bSYour Name Reserved bit 39 in the Trigger 'User Info' 2407*5113495bSYour Name 2408*5113495bSYour Name In case of an EHT AP, the bit 39 of the Trigger 'User Info' 2409*5113495bSYour Name called 'PS160' is used along with HE_SIGA_Reserved to determine 2410*5113495bSYour Name EHT_trigger_response. In case of EHT, 'PS160' is also included 2411*5113495bSYour Name in the MSB of field RU_allocation. 2412*5113495bSYour Name 2413*5113495bSYour Name <legal all> 2414*5113495bSYour Name */ 2415*5113495bSYour Name 2416*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_OFFSET 0x0000000000000048 2417*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_LSB 30 2418*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MSB 30 2419*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MASK 0x0000000040000000 2420*5113495bSYour Name 2421*5113495bSYour Name 2422*5113495bSYour Name /* Description QOS_NULL_ONLY_RESPONSE_TX 2423*5113495bSYour Name 2424*5113495bSYour Name Field filled in by PDG based on Rxpcu_PCIe_L0_req_duration 2425*5113495bSYour Name 2426*5113495bSYour Name 2427*5113495bSYour Name If based on the duration for which RXPCU has asserted the 2428*5113495bSYour Name 'L0 request' signal to PCIe and the PCIe L1SS exit + MAC 2429*5113495bSYour Name + PHY Tx latencies, PDG determines that null delimiters 2430*5113495bSYour Name + a programmable minimum MPDU size cannot fit the trigger 2431*5113495bSYour Name response, PDG sets this bit. 2432*5113495bSYour Name 2433*5113495bSYour Name HWSCH uses this bit to determine whether to select only 2434*5113495bSYour Name the 'SCHEDULER_CMD' with Trig_resp_qos_null_only set, i.e. 2435*5113495bSYour Name which transmit only QoS Nulls. 2436*5113495bSYour Name 2437*5113495bSYour Name This is filled as zero if ILP is unsupported (e.g. in Maple 2438*5113495bSYour Name and Spruce) or disabled. 2439*5113495bSYour Name <legal all> 2440*5113495bSYour Name */ 2441*5113495bSYour Name 2442*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_OFFSET 0x0000000000000048 2443*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_LSB 31 2444*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MSB 31 2445*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MASK 0x0000000080000000 2446*5113495bSYour Name 2447*5113495bSYour Name 2448*5113495bSYour Name /* Description TBR_TRIGGER_SOUND_SAC 2449*5113495bSYour Name 2450*5113495bSYour Name Field only valid if Trigger_type = ax_tb_ranging_trigger 2451*5113495bSYour Name and Ranging_Trigger_Subtype = TF_Secure_Sound 2452*5113495bSYour Name 2453*5113495bSYour Name Ranging trigger variant secure sounding sub-variant user 2454*5113495bSYour Name info field "SAC" 2455*5113495bSYour Name 2456*5113495bSYour Name <legal all> 2457*5113495bSYour Name */ 2458*5113495bSYour Name 2459*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_OFFSET 0x0000000000000048 2460*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_LSB 32 2461*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MSB 47 2462*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MASK 0x0000ffff00000000 2463*5113495bSYour Name 2464*5113495bSYour Name 2465*5113495bSYour Name /* Description RESERVED_19A 2466*5113495bSYour Name 2467*5113495bSYour Name <legal 0> 2468*5113495bSYour Name */ 2469*5113495bSYour Name 2470*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_OFFSET 0x0000000000000048 2471*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_LSB 48 2472*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MSB 55 2473*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MASK 0x00ff000000000000 2474*5113495bSYour Name 2475*5113495bSYour Name 2476*5113495bSYour Name /* Description U_SIG_RESERVED2 2477*5113495bSYour Name 2478*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2479*5113495bSYour Name 2480*5113495bSYour Name 2481*5113495bSYour Name EHT Special User Info 2482*5113495bSYour Name 2483*5113495bSYour Name Indicates the values of the 5 'disregard' bits [41:37] in 2484*5113495bSYour Name the U-SIG of the EHT_TRIG PPDU transmitted as a response 2485*5113495bSYour Name to the Trigger frame 2486*5113495bSYour Name <legal all> 2487*5113495bSYour Name */ 2488*5113495bSYour Name 2489*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_OFFSET 0x0000000000000048 2490*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_LSB 56 2491*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MSB 60 2492*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MASK 0x1f00000000000000 2493*5113495bSYour Name 2494*5113495bSYour Name 2495*5113495bSYour Name /* Description RESERVED_19B 2496*5113495bSYour Name 2497*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2498*5113495bSYour Name 2499*5113495bSYour Name 2500*5113495bSYour Name EHT Special User Info 2501*5113495bSYour Name 2502*5113495bSYour Name Reserved bits in the Trigger 2503*5113495bSYour Name <legal all> 2504*5113495bSYour Name */ 2505*5113495bSYour Name 2506*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_OFFSET 0x0000000000000048 2507*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_LSB 61 2508*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MSB 63 2509*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MASK 0xe000000000000000 2510*5113495bSYour Name 2511*5113495bSYour Name 2512*5113495bSYour Name /* Description EHT_SPECIAL_AID12 2513*5113495bSYour Name 2514*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2515*5113495bSYour Name 2516*5113495bSYour Name 2517*5113495bSYour Name EHT Special User Info 2518*5113495bSYour Name 2519*5113495bSYour Name The AID12 subfield of the Special User Info field should 2520*5113495bSYour Name be '2007' for EHT R1 triggers. 2521*5113495bSYour Name 2522*5113495bSYour Name Note strictly needed, but added here for debugging purposes. 2523*5113495bSYour Name 2524*5113495bSYour Name <legal all> 2525*5113495bSYour Name */ 2526*5113495bSYour Name 2527*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_OFFSET 0x0000000000000050 2528*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_LSB 0 2529*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MSB 11 2530*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MASK 0x0000000000000fff 2531*5113495bSYour Name 2532*5113495bSYour Name 2533*5113495bSYour Name /* Description PHY_VERSION 2534*5113495bSYour Name 2535*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2536*5113495bSYour Name 2537*5113495bSYour Name 2538*5113495bSYour Name EHT Special User Info 2539*5113495bSYour Name 2540*5113495bSYour Name The PHY version should be '0' for EHT R1 triggers. 2541*5113495bSYour Name 2542*5113495bSYour Name Note strictly needed, but added here for debugging purposes. 2543*5113495bSYour Name 2544*5113495bSYour Name <legal all> 2545*5113495bSYour Name */ 2546*5113495bSYour Name 2547*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_OFFSET 0x0000000000000050 2548*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_LSB 12 2549*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MSB 14 2550*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MASK 0x0000000000007000 2551*5113495bSYour Name 2552*5113495bSYour Name 2553*5113495bSYour Name /* Description BANDWIDTH_EXT 2554*5113495bSYour Name 2555*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2556*5113495bSYour Name 2557*5113495bSYour Name 2558*5113495bSYour Name EHT Special User Info 2559*5113495bSYour Name 2560*5113495bSYour Name 2561*5113495bSYour Name 2562*5113495bSYour Name This along with the field Bandwidth determines the HE-SIG-A/U-SIG 2563*5113495bSYour Name BW value for the HE/EHT Trigger-based PPDU. 2564*5113495bSYour Name 2565*5113495bSYour Name Bandwidth/Bandwidth_ext: 2566*5113495bSYour Name 0/0: 20 MHz 2567*5113495bSYour Name 1/0: 40 MHz 2568*5113495bSYour Name 2/0: 80 MHz 2569*5113495bSYour Name 3/1: 160 MHz 2570*5113495bSYour Name 3/2: 320 MHz channelization 1 2571*5113495bSYour Name 3/3: 320 MHz channelization 2 2572*5113495bSYour Name All other cominations are reserved. 2573*5113495bSYour Name 2574*5113495bSYour Name <legal all> 2575*5113495bSYour Name */ 2576*5113495bSYour Name 2577*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_OFFSET 0x0000000000000050 2578*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_LSB 15 2579*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MSB 16 2580*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MASK 0x0000000000018000 2581*5113495bSYour Name 2582*5113495bSYour Name 2583*5113495bSYour Name /* Description EHT_SPATIAL_REUSE 2584*5113495bSYour Name 2585*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2586*5113495bSYour Name 2587*5113495bSYour Name 2588*5113495bSYour Name EHT Special User Info 2589*5113495bSYour Name 2590*5113495bSYour Name Indicates the value of the Spatial Reuse in the U-SIG of 2591*5113495bSYour Name the EHT_TRIG PPDU transmitted as a response to the Trigger 2592*5113495bSYour Name frame 2593*5113495bSYour Name <legal all> 2594*5113495bSYour Name */ 2595*5113495bSYour Name 2596*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_OFFSET 0x0000000000000050 2597*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_LSB 17 2598*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MSB 24 2599*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MASK 0x0000000001fe0000 2600*5113495bSYour Name 2601*5113495bSYour Name 2602*5113495bSYour Name /* Description U_SIG_RESERVED1 2603*5113495bSYour Name 2604*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2605*5113495bSYour Name 2606*5113495bSYour Name 2607*5113495bSYour Name EHT Special User Info 2608*5113495bSYour Name 2609*5113495bSYour Name Indicates the values of the 6 'disregard' bits [25:20] and 2610*5113495bSYour Name 1 'validate' bit [28] in the U-SIG of the EHT_TRIG PPDU 2611*5113495bSYour Name transmitted as a response to the Trigger frame 2612*5113495bSYour Name <legal all> 2613*5113495bSYour Name */ 2614*5113495bSYour Name 2615*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_OFFSET 0x0000000000000050 2616*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_LSB 25 2617*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MSB 31 2618*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MASK 0x00000000fe000000 2619*5113495bSYour Name 2620*5113495bSYour Name 2621*5113495bSYour Name /* Description EHT_TRIGGER_SPECIAL_USER_INFO_71_40 2622*5113495bSYour Name 2623*5113495bSYour Name Field only valid when ax_trigger_source = 11ax_trigger_frame 2624*5113495bSYour Name 2625*5113495bSYour Name 2626*5113495bSYour Name EHT Trigger Dependent field in Special User Info 2627*5113495bSYour Name 2628*5113495bSYour Name If the Trigger Dependent User Info sub-field is less than 2629*5113495bSYour Name 32 bits, the upper bits are set to 0. 2630*5113495bSYour Name 2631*5113495bSYour Name <legal all> 2632*5113495bSYour Name */ 2633*5113495bSYour Name 2634*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_OFFSET 0x0000000000000050 2635*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_LSB 32 2636*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MSB 63 2637*5113495bSYour Name #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MASK 0xffffffff00000000 2638*5113495bSYour Name 2639*5113495bSYour Name 2640*5113495bSYour Name 2641*5113495bSYour Name #endif // OFDMA_TRIGGER_DETAILS 2642