CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
orangepi-xunlong

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

GitHub Repository: orangepi-xunlong/orangepi-build
Path: blob/next/external/cache/sources/wl/include/bcmwifi_rates.h
Views: 3960
1
/*
2
* Indices for 802.11 a/b/g/n/ac 1-3 chain symmetric transmit rates
3
*
4
* $Copyright Open Broadcom Corporation$
5
*
6
* $Id: bcmwifi_rates.h 5187 2012-06-29 06:17:50Z fsherstyuk $
7
*/
8
9
#ifndef _bcmwifi_rates_h_
10
#define _bcmwifi_rates_h_
11
12
#ifdef __cplusplus
13
extern "C" {
14
#endif /* __cplusplus */
15
16
17
#define WL_RATESET_SZ_DSSS 4
18
#define WL_RATESET_SZ_OFDM 8
19
#define WL_RATESET_SZ_HT_MCS 8
20
#define WL_RATESET_SZ_VHT_MCS 10
21
22
#define WL_TX_CHAINS_MAX 3
23
24
#define WL_RATE_DISABLED (-128) /* Power value corresponding to unsupported rate */
25
26
/* Transmit channel bandwidths */
27
typedef enum wl_tx_bw {
28
WL_TX_BW_20,
29
WL_TX_BW_40,
30
WL_TX_BW_80,
31
WL_TX_BW_20IN40,
32
WL_TX_BW_20IN80,
33
WL_TX_BW_40IN80,
34
WL_TX_BW_ALL
35
} wl_tx_bw_t;
36
37
38
/*
39
* Transmit modes.
40
* Not all modes are listed here, only those required for disambiguation. e.g. SPEXP is not listed
41
*/
42
typedef enum wl_tx_mode {
43
WL_TX_MODE_NONE,
44
WL_TX_MODE_STBC,
45
WL_TX_MODE_CDD,
46
WL_TX_MODE_TXBF,
47
WL_NUM_TX_MODES
48
} wl_tx_mode_t;
49
50
51
/* Number of transmit chains */
52
typedef enum wl_tx_chains {
53
WL_TX_CHAINS_1 = 1,
54
WL_TX_CHAINS_2,
55
WL_TX_CHAINS_3
56
} wl_tx_chains_t;
57
58
59
/* Number of transmit streams */
60
typedef enum wl_tx_nss {
61
WL_TX_NSS_1 = 1,
62
WL_TX_NSS_2,
63
WL_TX_NSS_3
64
} wl_tx_nss_t;
65
66
67
typedef enum clm_rates {
68
/************
69
* 1 chain *
70
************
71
*/
72
73
/* 1 Stream */
74
WL_RATE_1X1_DSSS_1 = 0,
75
WL_RATE_1X1_DSSS_2 = 1,
76
WL_RATE_1X1_DSSS_5_5 = 2,
77
WL_RATE_1X1_DSSS_11 = 3,
78
79
WL_RATE_1X1_OFDM_6 = 4,
80
WL_RATE_1X1_OFDM_9 = 5,
81
WL_RATE_1X1_OFDM_12 = 6,
82
WL_RATE_1X1_OFDM_18 = 7,
83
WL_RATE_1X1_OFDM_24 = 8,
84
WL_RATE_1X1_OFDM_36 = 9,
85
WL_RATE_1X1_OFDM_48 = 10,
86
WL_RATE_1X1_OFDM_54 = 11,
87
88
WL_RATE_1X1_MCS0 = 12,
89
WL_RATE_1X1_MCS1 = 13,
90
WL_RATE_1X1_MCS2 = 14,
91
WL_RATE_1X1_MCS3 = 15,
92
WL_RATE_1X1_MCS4 = 16,
93
WL_RATE_1X1_MCS5 = 17,
94
WL_RATE_1X1_MCS6 = 18,
95
WL_RATE_1X1_MCS7 = 19,
96
97
WL_RATE_1X1_VHT0SS1 = 12,
98
WL_RATE_1X1_VHT1SS1 = 13,
99
WL_RATE_1X1_VHT2SS1 = 14,
100
WL_RATE_1X1_VHT3SS1 = 15,
101
WL_RATE_1X1_VHT4SS1 = 16,
102
WL_RATE_1X1_VHT5SS1 = 17,
103
WL_RATE_1X1_VHT6SS1 = 18,
104
WL_RATE_1X1_VHT7SS1 = 19,
105
WL_RATE_1X1_VHT8SS1 = 20,
106
WL_RATE_1X1_VHT9SS1 = 21,
107
108
109
/************
110
* 2 chains *
111
************
112
*/
113
114
/* 1 Stream expanded + 1 */
115
WL_RATE_1X2_DSSS_1 = 22,
116
WL_RATE_1X2_DSSS_2 = 23,
117
WL_RATE_1X2_DSSS_5_5 = 24,
118
WL_RATE_1X2_DSSS_11 = 25,
119
120
WL_RATE_1X2_CDD_OFDM_6 = 26,
121
WL_RATE_1X2_CDD_OFDM_9 = 27,
122
WL_RATE_1X2_CDD_OFDM_12 = 28,
123
WL_RATE_1X2_CDD_OFDM_18 = 29,
124
WL_RATE_1X2_CDD_OFDM_24 = 30,
125
WL_RATE_1X2_CDD_OFDM_36 = 31,
126
WL_RATE_1X2_CDD_OFDM_48 = 32,
127
WL_RATE_1X2_CDD_OFDM_54 = 33,
128
129
WL_RATE_1X2_CDD_MCS0 = 34,
130
WL_RATE_1X2_CDD_MCS1 = 35,
131
WL_RATE_1X2_CDD_MCS2 = 36,
132
WL_RATE_1X2_CDD_MCS3 = 37,
133
WL_RATE_1X2_CDD_MCS4 = 38,
134
WL_RATE_1X2_CDD_MCS5 = 39,
135
WL_RATE_1X2_CDD_MCS6 = 40,
136
WL_RATE_1X2_CDD_MCS7 = 41,
137
138
WL_RATE_1X2_VHT0SS1 = 34,
139
WL_RATE_1X2_VHT1SS1 = 35,
140
WL_RATE_1X2_VHT2SS1 = 36,
141
WL_RATE_1X2_VHT3SS1 = 37,
142
WL_RATE_1X2_VHT4SS1 = 38,
143
WL_RATE_1X2_VHT5SS1 = 39,
144
WL_RATE_1X2_VHT6SS1 = 40,
145
WL_RATE_1X2_VHT7SS1 = 41,
146
WL_RATE_1X2_VHT8SS1 = 42,
147
WL_RATE_1X2_VHT9SS1 = 43,
148
149
/* 2 Streams */
150
WL_RATE_2X2_STBC_MCS0 = 44,
151
WL_RATE_2X2_STBC_MCS1 = 45,
152
WL_RATE_2X2_STBC_MCS2 = 46,
153
WL_RATE_2X2_STBC_MCS3 = 47,
154
WL_RATE_2X2_STBC_MCS4 = 48,
155
WL_RATE_2X2_STBC_MCS5 = 49,
156
WL_RATE_2X2_STBC_MCS6 = 50,
157
WL_RATE_2X2_STBC_MCS7 = 51,
158
159
WL_RATE_2X2_STBC_VHT0SS1 = 44,
160
WL_RATE_2X2_STBC_VHT1SS1 = 45,
161
WL_RATE_2X2_STBC_VHT2SS1 = 46,
162
WL_RATE_2X2_STBC_VHT3SS1 = 47,
163
WL_RATE_2X2_STBC_VHT4SS1 = 48,
164
WL_RATE_2X2_STBC_VHT5SS1 = 49,
165
WL_RATE_2X2_STBC_VHT6SS1 = 50,
166
WL_RATE_2X2_STBC_VHT7SS1 = 51,
167
WL_RATE_2X2_STBC_VHT8SS1 = 52,
168
WL_RATE_2X2_STBC_VHT9SS1 = 53,
169
170
WL_RATE_2X2_SDM_MCS8 = 54,
171
WL_RATE_2X2_SDM_MCS9 = 55,
172
WL_RATE_2X2_SDM_MCS10 = 56,
173
WL_RATE_2X2_SDM_MCS11 = 57,
174
WL_RATE_2X2_SDM_MCS12 = 58,
175
WL_RATE_2X2_SDM_MCS13 = 59,
176
WL_RATE_2X2_SDM_MCS14 = 60,
177
WL_RATE_2X2_SDM_MCS15 = 61,
178
179
WL_RATE_2X2_VHT0SS2 = 54,
180
WL_RATE_2X2_VHT1SS2 = 55,
181
WL_RATE_2X2_VHT2SS2 = 56,
182
WL_RATE_2X2_VHT3SS2 = 57,
183
WL_RATE_2X2_VHT4SS2 = 58,
184
WL_RATE_2X2_VHT5SS2 = 59,
185
WL_RATE_2X2_VHT6SS2 = 60,
186
WL_RATE_2X2_VHT7SS2 = 61,
187
WL_RATE_2X2_VHT8SS2 = 62,
188
WL_RATE_2X2_VHT9SS2 = 63,
189
190
/************
191
* 3 chains *
192
************
193
*/
194
195
/* 1 Stream expanded + 2 */
196
WL_RATE_1X3_DSSS_1 = 64,
197
WL_RATE_1X3_DSSS_2 = 65,
198
WL_RATE_1X3_DSSS_5_5 = 66,
199
WL_RATE_1X3_DSSS_11 = 67,
200
201
WL_RATE_1X3_CDD_OFDM_6 = 68,
202
WL_RATE_1X3_CDD_OFDM_9 = 69,
203
WL_RATE_1X3_CDD_OFDM_12 = 70,
204
WL_RATE_1X3_CDD_OFDM_18 = 71,
205
WL_RATE_1X3_CDD_OFDM_24 = 72,
206
WL_RATE_1X3_CDD_OFDM_36 = 73,
207
WL_RATE_1X3_CDD_OFDM_48 = 74,
208
WL_RATE_1X3_CDD_OFDM_54 = 75,
209
210
WL_RATE_1X3_CDD_MCS0 = 76,
211
WL_RATE_1X3_CDD_MCS1 = 77,
212
WL_RATE_1X3_CDD_MCS2 = 78,
213
WL_RATE_1X3_CDD_MCS3 = 79,
214
WL_RATE_1X3_CDD_MCS4 = 80,
215
WL_RATE_1X3_CDD_MCS5 = 81,
216
WL_RATE_1X3_CDD_MCS6 = 82,
217
WL_RATE_1X3_CDD_MCS7 = 83,
218
219
WL_RATE_1X3_VHT0SS1 = 76,
220
WL_RATE_1X3_VHT1SS1 = 77,
221
WL_RATE_1X3_VHT2SS1 = 78,
222
WL_RATE_1X3_VHT3SS1 = 79,
223
WL_RATE_1X3_VHT4SS1 = 80,
224
WL_RATE_1X3_VHT5SS1 = 81,
225
WL_RATE_1X3_VHT6SS1 = 82,
226
WL_RATE_1X3_VHT7SS1 = 83,
227
WL_RATE_1X3_VHT8SS1 = 84,
228
WL_RATE_1X3_VHT9SS1 = 85,
229
230
/* 2 Streams expanded + 1 */
231
WL_RATE_2X3_STBC_MCS0 = 86,
232
WL_RATE_2X3_STBC_MCS1 = 87,
233
WL_RATE_2X3_STBC_MCS2 = 88,
234
WL_RATE_2X3_STBC_MCS3 = 89,
235
WL_RATE_2X3_STBC_MCS4 = 90,
236
WL_RATE_2X3_STBC_MCS5 = 91,
237
WL_RATE_2X3_STBC_MCS6 = 92,
238
WL_RATE_2X3_STBC_MCS7 = 93,
239
240
WL_RATE_2X3_STBC_VHT0SS1 = 86,
241
WL_RATE_2X3_STBC_VHT1SS1 = 87,
242
WL_RATE_2X3_STBC_VHT2SS1 = 88,
243
WL_RATE_2X3_STBC_VHT3SS1 = 89,
244
WL_RATE_2X3_STBC_VHT4SS1 = 90,
245
WL_RATE_2X3_STBC_VHT5SS1 = 91,
246
WL_RATE_2X3_STBC_VHT6SS1 = 92,
247
WL_RATE_2X3_STBC_VHT7SS1 = 93,
248
WL_RATE_2X3_STBC_VHT8SS1 = 94,
249
WL_RATE_2X3_STBC_VHT9SS1 = 95,
250
251
WL_RATE_2X3_SDM_MCS8 = 96,
252
WL_RATE_2X3_SDM_MCS9 = 97,
253
WL_RATE_2X3_SDM_MCS10 = 98,
254
WL_RATE_2X3_SDM_MCS11 = 99,
255
WL_RATE_2X3_SDM_MCS12 = 100,
256
WL_RATE_2X3_SDM_MCS13 = 101,
257
WL_RATE_2X3_SDM_MCS14 = 102,
258
WL_RATE_2X3_SDM_MCS15 = 103,
259
260
WL_RATE_2X3_VHT0SS2 = 96,
261
WL_RATE_2X3_VHT1SS2 = 97,
262
WL_RATE_2X3_VHT2SS2 = 98,
263
WL_RATE_2X3_VHT3SS2 = 99,
264
WL_RATE_2X3_VHT4SS2 = 100,
265
WL_RATE_2X3_VHT5SS2 = 101,
266
WL_RATE_2X3_VHT6SS2 = 102,
267
WL_RATE_2X3_VHT7SS2 = 103,
268
WL_RATE_2X3_VHT8SS2 = 104,
269
WL_RATE_2X3_VHT9SS2 = 105,
270
271
/* 3 Streams */
272
WL_RATE_3X3_SDM_MCS16 = 106,
273
WL_RATE_3X3_SDM_MCS17 = 107,
274
WL_RATE_3X3_SDM_MCS18 = 108,
275
WL_RATE_3X3_SDM_MCS19 = 109,
276
WL_RATE_3X3_SDM_MCS20 = 110,
277
WL_RATE_3X3_SDM_MCS21 = 111,
278
WL_RATE_3X3_SDM_MCS22 = 112,
279
WL_RATE_3X3_SDM_MCS23 = 113,
280
281
WL_RATE_3X3_VHT0SS3 = 106,
282
WL_RATE_3X3_VHT1SS3 = 107,
283
WL_RATE_3X3_VHT2SS3 = 108,
284
WL_RATE_3X3_VHT3SS3 = 109,
285
WL_RATE_3X3_VHT4SS3 = 110,
286
WL_RATE_3X3_VHT5SS3 = 111,
287
WL_RATE_3X3_VHT6SS3 = 112,
288
WL_RATE_3X3_VHT7SS3 = 113,
289
WL_RATE_3X3_VHT8SS3 = 114,
290
WL_RATE_3X3_VHT9SS3 = 115,
291
292
293
/****************************
294
* TX Beamforming, 2 chains *
295
****************************
296
*/
297
298
/* 1 Stream expanded + 1 */
299
300
WL_RATE_1X2_TXBF_OFDM_6 = 116,
301
WL_RATE_1X2_TXBF_OFDM_9 = 117,
302
WL_RATE_1X2_TXBF_OFDM_12 = 118,
303
WL_RATE_1X2_TXBF_OFDM_18 = 119,
304
WL_RATE_1X2_TXBF_OFDM_24 = 120,
305
WL_RATE_1X2_TXBF_OFDM_36 = 121,
306
WL_RATE_1X2_TXBF_OFDM_48 = 122,
307
WL_RATE_1X2_TXBF_OFDM_54 = 123,
308
309
WL_RATE_1X2_TXBF_MCS0 = 124,
310
WL_RATE_1X2_TXBF_MCS1 = 125,
311
WL_RATE_1X2_TXBF_MCS2 = 126,
312
WL_RATE_1X2_TXBF_MCS3 = 127,
313
WL_RATE_1X2_TXBF_MCS4 = 128,
314
WL_RATE_1X2_TXBF_MCS5 = 129,
315
WL_RATE_1X2_TXBF_MCS6 = 130,
316
WL_RATE_1X2_TXBF_MCS7 = 131,
317
318
WL_RATE_1X2_TXBF_VHT0SS1 = 124,
319
WL_RATE_1X2_TXBF_VHT1SS1 = 125,
320
WL_RATE_1X2_TXBF_VHT2SS1 = 126,
321
WL_RATE_1X2_TXBF_VHT3SS1 = 127,
322
WL_RATE_1X2_TXBF_VHT4SS1 = 128,
323
WL_RATE_1X2_TXBF_VHT5SS1 = 129,
324
WL_RATE_1X2_TXBF_VHT6SS1 = 130,
325
WL_RATE_1X2_TXBF_VHT7SS1 = 131,
326
WL_RATE_1X2_TXBF_VHT8SS1 = 132,
327
WL_RATE_1X2_TXBF_VHT9SS1 = 133,
328
329
/* 2 Streams */
330
331
WL_RATE_2X2_TXBF_SDM_MCS8 = 134,
332
WL_RATE_2X2_TXBF_SDM_MCS9 = 135,
333
WL_RATE_2X2_TXBF_SDM_MCS10 = 136,
334
WL_RATE_2X2_TXBF_SDM_MCS11 = 137,
335
WL_RATE_2X2_TXBF_SDM_MCS12 = 138,
336
WL_RATE_2X2_TXBF_SDM_MCS13 = 139,
337
WL_RATE_2X2_TXBF_SDM_MCS14 = 140,
338
WL_RATE_2X2_TXBF_SDM_MCS15 = 141,
339
340
WL_RATE_2X2_TXBF_VHT0SS2 = 134,
341
WL_RATE_2X2_TXBF_VHT1SS2 = 135,
342
WL_RATE_2X2_TXBF_VHT2SS2 = 136,
343
WL_RATE_2X2_TXBF_VHT3SS2 = 137,
344
WL_RATE_2X2_TXBF_VHT4SS2 = 138,
345
WL_RATE_2X2_TXBF_VHT5SS2 = 139,
346
WL_RATE_2X2_TXBF_VHT6SS2 = 140,
347
WL_RATE_2X2_TXBF_VHT7SS2 = 141,
348
349
350
/****************************
351
* TX Beamforming, 3 chains *
352
****************************
353
*/
354
355
/* 1 Stream expanded + 2 */
356
357
WL_RATE_1X3_TXBF_OFDM_6 = 142,
358
WL_RATE_1X3_TXBF_OFDM_9 = 143,
359
WL_RATE_1X3_TXBF_OFDM_12 = 144,
360
WL_RATE_1X3_TXBF_OFDM_18 = 145,
361
WL_RATE_1X3_TXBF_OFDM_24 = 146,
362
WL_RATE_1X3_TXBF_OFDM_36 = 147,
363
WL_RATE_1X3_TXBF_OFDM_48 = 148,
364
WL_RATE_1X3_TXBF_OFDM_54 = 149,
365
366
WL_RATE_1X3_TXBF_MCS0 = 150,
367
WL_RATE_1X3_TXBF_MCS1 = 151,
368
WL_RATE_1X3_TXBF_MCS2 = 152,
369
WL_RATE_1X3_TXBF_MCS3 = 153,
370
WL_RATE_1X3_TXBF_MCS4 = 154,
371
WL_RATE_1X3_TXBF_MCS5 = 155,
372
WL_RATE_1X3_TXBF_MCS6 = 156,
373
WL_RATE_1X3_TXBF_MCS7 = 157,
374
375
WL_RATE_1X3_TXBF_VHT0SS1 = 150,
376
WL_RATE_1X3_TXBF_VHT1SS1 = 151,
377
WL_RATE_1X3_TXBF_VHT2SS1 = 152,
378
WL_RATE_1X3_TXBF_VHT3SS1 = 153,
379
WL_RATE_1X3_TXBF_VHT4SS1 = 154,
380
WL_RATE_1X3_TXBF_VHT5SS1 = 155,
381
WL_RATE_1X3_TXBF_VHT6SS1 = 156,
382
WL_RATE_1X3_TXBF_VHT7SS1 = 157,
383
WL_RATE_1X3_TXBF_VHT8SS1 = 158,
384
WL_RATE_1X3_TXBF_VHT9SS1 = 159,
385
386
/* 2 Streams expanded + 1 */
387
388
WL_RATE_2X3_TXBF_SDM_MCS8 = 160,
389
WL_RATE_2X3_TXBF_SDM_MCS9 = 161,
390
WL_RATE_2X3_TXBF_SDM_MCS10 = 162,
391
WL_RATE_2X3_TXBF_SDM_MCS11 = 163,
392
WL_RATE_2X3_TXBF_SDM_MCS12 = 164,
393
WL_RATE_2X3_TXBF_SDM_MCS13 = 165,
394
WL_RATE_2X3_TXBF_SDM_MCS14 = 166,
395
WL_RATE_2X3_TXBF_SDM_MCS15 = 167,
396
397
WL_RATE_2X3_TXBF_VHT0SS2 = 160,
398
WL_RATE_2X3_TXBF_VHT1SS2 = 161,
399
WL_RATE_2X3_TXBF_VHT2SS2 = 162,
400
WL_RATE_2X3_TXBF_VHT3SS2 = 163,
401
WL_RATE_2X3_TXBF_VHT4SS2 = 164,
402
WL_RATE_2X3_TXBF_VHT5SS2 = 165,
403
WL_RATE_2X3_TXBF_VHT6SS2 = 166,
404
WL_RATE_2X3_TXBF_VHT7SS2 = 167,
405
WL_RATE_2X3_TXBF_VHT8SS2 = 168,
406
WL_RATE_2X3_TXBF_VHT9SS2 = 169,
407
408
/* 3 Streams */
409
410
WL_RATE_3X3_TXBF_SDM_MCS16 = 170,
411
WL_RATE_3X3_TXBF_SDM_MCS17 = 171,
412
WL_RATE_3X3_TXBF_SDM_MCS18 = 172,
413
WL_RATE_3X3_TXBF_SDM_MCS19 = 173,
414
WL_RATE_3X3_TXBF_SDM_MCS20 = 174,
415
WL_RATE_3X3_TXBF_SDM_MCS21 = 175,
416
WL_RATE_3X3_TXBF_SDM_MCS22 = 176,
417
WL_RATE_3X3_TXBF_SDM_MCS23 = 177,
418
419
WL_RATE_3X3_TXBF_VHT0SS3 = 170,
420
WL_RATE_3X3_TXBF_VHT1SS3 = 171,
421
WL_RATE_3X3_TXBF_VHT2SS3 = 172,
422
WL_RATE_3X3_TXBF_VHT3SS3 = 173,
423
WL_RATE_3X3_TXBF_VHT4SS3 = 174,
424
WL_RATE_3X3_TXBF_VHT5SS3 = 175,
425
WL_RATE_3X3_TXBF_VHT6SS3 = 176,
426
WL_RATE_3X3_TXBF_VHT7SS3 = 177
427
} clm_rates_t;
428
429
/* Number of rate codes */
430
#define WL_NUMRATES 178
431
432
#ifdef __cplusplus
433
}
434
#endif /* __cplusplus */
435
436
#endif /* _bcmwifi_rates_h_ */
437
438