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