1 /* 2 * Copyright (c) 2018 The Linux Foundation. All rights reserved. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for 5 * any purpose with or without fee is hereby granted, provided that the 6 * above copyright notice and this permission notice appear in all 7 * copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 10 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 11 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 12 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 13 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 14 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 15 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 16 * PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 // $ATH_LICENSE_HW_HDR_C$ 20 // 21 // DO NOT EDIT! This file is automatically generated 22 // These definitions are tied to a particular hardware layout 23 24 25 #ifndef _HE_SIG_B2_OFDMA_INFO_H_ 26 #define _HE_SIG_B2_OFDMA_INFO_H_ 27 #if !defined(__ASSEMBLER__) 28 #endif 29 30 31 // ################ START SUMMARY ################# 32 // 33 // Dword Fields 34 // 0 sta_id[10:0], nsts[13:11], txbf[14], sta_mcs[18:15], sta_dcm[19], sta_coding[20], reserved_0[31:21] 35 // 36 // ################ END SUMMARY ################# 37 38 #define NUM_OF_DWORDS_HE_SIG_B2_OFDMA_INFO 1 39 40 struct he_sig_b2_ofdma_info { 41 uint32_t sta_id : 11, //[10:0] 42 nsts : 3, //[13:11] 43 txbf : 1, //[14] 44 sta_mcs : 4, //[18:15] 45 sta_dcm : 1, //[19] 46 sta_coding : 1, //[20] 47 reserved_0 : 11; //[31:21] 48 }; 49 50 /* 51 52 sta_id 53 54 Identifies the STA that is addressed. Details of STA ID 55 are TBD 56 57 nsts 58 59 MAC RX side usage only: 60 61 62 63 Number of spatial streams for this user 64 65 66 67 <enum 0 1_spatial_stream>Single spatial stream 68 69 <enum 1 2_spatial_streams>2 spatial streams 70 71 <enum 2 3_spatial_streams>3 spatial streams 72 73 <enum 3 4_spatial_streams>4 spatial streams 74 75 <enum 4 5_spatial_streams>5 spatial streams 76 77 <enum 5 6_spatial_streams>6 spatial streams 78 79 <enum 6 7_spatial_streams>7 spatial streams 80 81 <enum 7 8_spatial_streams>8 spatial streams 82 83 txbf 84 85 Indicates whether beamforming is applied 86 87 0: No beamforming 88 89 1: beamforming 90 91 <legal all> 92 93 sta_mcs 94 95 Indicates the data MCS 96 97 sta_dcm 98 99 100 0: No DCM 101 102 1:DCM 103 104 <legal all> 105 106 sta_coding 107 108 Distinguishes between BCC/LDPC 109 110 111 112 0: BCC 113 114 1: LDPC 115 116 <legal all> 117 118 reserved_0 119 120 <legal 0> 121 */ 122 123 124 /* Description HE_SIG_B2_OFDMA_INFO_0_STA_ID 125 126 Identifies the STA that is addressed. Details of STA ID 127 are TBD 128 */ 129 #define HE_SIG_B2_OFDMA_INFO_0_STA_ID_OFFSET 0x00000000 130 #define HE_SIG_B2_OFDMA_INFO_0_STA_ID_LSB 0 131 #define HE_SIG_B2_OFDMA_INFO_0_STA_ID_MASK 0x000007ff 132 133 /* Description HE_SIG_B2_OFDMA_INFO_0_NSTS 134 135 MAC RX side usage only: 136 137 138 139 Number of spatial streams for this user 140 141 142 143 <enum 0 1_spatial_stream>Single spatial stream 144 145 <enum 1 2_spatial_streams>2 spatial streams 146 147 <enum 2 3_spatial_streams>3 spatial streams 148 149 <enum 3 4_spatial_streams>4 spatial streams 150 151 <enum 4 5_spatial_streams>5 spatial streams 152 153 <enum 5 6_spatial_streams>6 spatial streams 154 155 <enum 6 7_spatial_streams>7 spatial streams 156 157 <enum 7 8_spatial_streams>8 spatial streams 158 */ 159 #define HE_SIG_B2_OFDMA_INFO_0_NSTS_OFFSET 0x00000000 160 #define HE_SIG_B2_OFDMA_INFO_0_NSTS_LSB 11 161 #define HE_SIG_B2_OFDMA_INFO_0_NSTS_MASK 0x00003800 162 163 /* Description HE_SIG_B2_OFDMA_INFO_0_TXBF 164 165 Indicates whether beamforming is applied 166 167 0: No beamforming 168 169 1: beamforming 170 171 <legal all> 172 */ 173 #define HE_SIG_B2_OFDMA_INFO_0_TXBF_OFFSET 0x00000000 174 #define HE_SIG_B2_OFDMA_INFO_0_TXBF_LSB 14 175 #define HE_SIG_B2_OFDMA_INFO_0_TXBF_MASK 0x00004000 176 177 /* Description HE_SIG_B2_OFDMA_INFO_0_STA_MCS 178 179 Indicates the data MCS 180 */ 181 #define HE_SIG_B2_OFDMA_INFO_0_STA_MCS_OFFSET 0x00000000 182 #define HE_SIG_B2_OFDMA_INFO_0_STA_MCS_LSB 15 183 #define HE_SIG_B2_OFDMA_INFO_0_STA_MCS_MASK 0x00078000 184 185 /* Description HE_SIG_B2_OFDMA_INFO_0_STA_DCM 186 187 188 0: No DCM 189 190 1:DCM 191 192 <legal all> 193 */ 194 #define HE_SIG_B2_OFDMA_INFO_0_STA_DCM_OFFSET 0x00000000 195 #define HE_SIG_B2_OFDMA_INFO_0_STA_DCM_LSB 19 196 #define HE_SIG_B2_OFDMA_INFO_0_STA_DCM_MASK 0x00080000 197 198 /* Description HE_SIG_B2_OFDMA_INFO_0_STA_CODING 199 200 Distinguishes between BCC/LDPC 201 202 203 204 0: BCC 205 206 1: LDPC 207 208 <legal all> 209 */ 210 #define HE_SIG_B2_OFDMA_INFO_0_STA_CODING_OFFSET 0x00000000 211 #define HE_SIG_B2_OFDMA_INFO_0_STA_CODING_LSB 20 212 #define HE_SIG_B2_OFDMA_INFO_0_STA_CODING_MASK 0x00100000 213 214 /* Description HE_SIG_B2_OFDMA_INFO_0_RESERVED_0 215 216 <legal 0> 217 */ 218 #define HE_SIG_B2_OFDMA_INFO_0_RESERVED_0_OFFSET 0x00000000 219 #define HE_SIG_B2_OFDMA_INFO_0_RESERVED_0_LSB 21 220 #define HE_SIG_B2_OFDMA_INFO_0_RESERVED_0_MASK 0xffe00000 221 222 223 #endif // _HE_SIG_B2_OFDMA_INFO_H_ 224