12#ifndef IEEE80211RADIOTAP_H
13#define IEEE80211RADIOTAP_H
16#define PKTHDR_RADIOTAP_VERSION 0
179enum ieee80211_radiotap_type {
180 IEEE80211_RADIOTAP_TSFT = 0,
181 IEEE80211_RADIOTAP_FLAGS = 1,
182 IEEE80211_RADIOTAP_RATE = 2,
183 IEEE80211_RADIOTAP_CHANNEL = 3,
184 IEEE80211_RADIOTAP_FHSS = 4,
185 IEEE80211_RADIOTAP_DBM_ANTSIGNAL = 5,
186 IEEE80211_RADIOTAP_DBM_ANTNOISE = 6,
187 IEEE80211_RADIOTAP_LOCK_QUALITY = 7,
188 IEEE80211_RADIOTAP_TX_ATTENUATION = 8,
189 IEEE80211_RADIOTAP_DB_TX_ATTENUATION = 9,
190 IEEE80211_RADIOTAP_DBM_TX_POWER = 10,
191 IEEE80211_RADIOTAP_ANTENNA = 11,
192 IEEE80211_RADIOTAP_DB_ANTSIGNAL = 12,
193 IEEE80211_RADIOTAP_DB_ANTNOISE = 13,
194 IEEE80211_RADIOTAP_RX_FLAGS = 14,
195 IEEE80211_RADIOTAP_TX_FLAGS = 15,
196 IEEE80211_RADIOTAP_RTS_RETRIES = 16,
197 IEEE80211_RADIOTAP_DATA_RETRIES = 17,
198 IEEE80211_RADIOTAP_XCHANNEL = 18,
199 IEEE80211_RADIOTAP_MCS = 19,
200 IEEE80211_RADIOTAP_AMPDU_STATUS = 20,
201 IEEE80211_RADIOTAP_VHT = 21,
202 IEEE80211_RADIOTAP_TIMESTAMP = 22,
203 IEEE80211_RADIOTAP_HE = 23,
204 IEEE80211_RADIOTAP_HE_MU = 24,
205 IEEE80211_RAFIOTAP_HE_MU_USER = 25,
206 IEEE80211_RADIOTAP_0_LENGTH_PSDU = 26,
207 IEEE80211_RADIOTAP_L_SIG = 27,
208 IEEE80211_RADIOTAP_TLVS = 28,
211 IEEE80211_RADIOTAP_RADIOTAP_NAMESPACE = 29,
212 IEEE80211_RADIOTAP_VENDOR_NAMESPACE = 30,
213 IEEE80211_RADIOTAP_EXT = 31
223#define IEEE80211_RADIOTAP_TLV_S1G 32
224#define IEEE80211_RADIOTAP_TLV_U_SIG 33
225#define IEEE80211_RADIOTAP_TLV_EHT 34
229#define IEEE80211_RADIOTAP_NOTDEFINED 0x02000000
233#define IEEE80211_CHAN_700MHZ 0x00000001
234#define IEEE80211_CHAN_800MHZ 0x00000002
235#define IEEE80211_CHAN_900MHZ 0x00000004
236#define IEEE80211_CHAN_TURBO 0x00000010
237#define IEEE80211_CHAN_CCK 0x00000020
238#define IEEE80211_CHAN_OFDM 0x00000040
239#define IEEE80211_CHAN_2GHZ 0x00000080
240#define IEEE80211_CHAN_5GHZ 0x00000100
241#define IEEE80211_CHAN_PASSIVE 0x00000200
242#define IEEE80211_CHAN_DYN 0x00000400
243#define IEEE80211_CHAN_GFSK 0x00000800
246#define IEEE80211_CHAN_GSM 0x00001000
247#define IEEE80211_CHAN_STURBO 0x00002000
248#define IEEE80211_CHAN_HALF 0x00004000
249#define IEEE80211_CHAN_QUARTER 0x00008000
250#define IEEE80211_CHAN_HT20 0x00010000
251#define IEEE80211_CHAN_HT40U 0x00020000
252#define IEEE80211_CHAN_HT40D 0x00040000
254#define IEEE80211_CHAN_HT40 (IEEE80211_CHAN_HT40U | IEEE80211_CHAN_HT40D)
255#define IEEE80211_CHAN_HT (IEEE80211_CHAN_HT20 | IEEE80211_CHAN_HT40)
256#define IEEE80211_CHAN_S1G \
257 (IEEE80211_CHAN_700MHZ | IEEE80211_CHAN_800MHZ | \
258 IEEE80211_CHAN_900MHZ)
260#define IEEE80211_CHAN_ALL \
261 (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_5GHZ | IEEE80211_CHAN_GFSK | \
262 IEEE80211_CHAN_700MHZ | IEEE80211_CHAN_800MHZ | \
263 IEEE80211_CHAN_900MHZ | \
264 IEEE80211_CHAN_CCK | IEEE80211_CHAN_OFDM | IEEE80211_CHAN_DYN | \
265 IEEE80211_CHAN_HALF | IEEE80211_CHAN_QUARTER | \
267#define IEEE80211_CHAN_ALLTURBO \
268 (IEEE80211_CHAN_ALL | IEEE80211_CHAN_TURBO | IEEE80211_CHAN_STURBO)
271#define IEEE80211_RADIOTAP_F_CFP 0x01
274#define IEEE80211_RADIOTAP_F_SHORTPRE 0x02
278#define IEEE80211_RADIOTAP_F_WEP 0x04
281#define IEEE80211_RADIOTAP_F_FRAG 0x08
284#define IEEE80211_RADIOTAP_F_FCS 0x10
285#define IEEE80211_RADIOTAP_F_DATAPAD 0x20
289#define IEEE80211_RADIOTAP_F_BADFCS 0x40
292#define IEEE80211_RADIOTAP_F_RX_BADPLCP 0x0002
295#define IEEE80211_RADIOTAP_F_TX_FAIL 0x0001
297#define IEEE80211_RADIOTAP_F_TX_CTS 0x0002
298#define IEEE80211_RADIOTAP_F_TX_RTS 0x0004
299#define IEEE80211_RADIOTAP_F_TX_NOACK 0x0008
300#define IEEE80211_RADIOTAP_F_TX_NOSEQNO 0x0010
302#define IEEE80211_RADIOTAP_F_TX_ORDER 0x0020
307#define IEEE80211_RADIOTAP_MCS_HAVE_BW 0x01
308#define IEEE80211_RADIOTAP_MCS_HAVE_MCS 0x02
309#define IEEE80211_RADIOTAP_MCS_HAVE_GI 0x04
310#define IEEE80211_RADIOTAP_MCS_HAVE_FMT 0x08
311#define IEEE80211_RADIOTAP_MCS_HAVE_FEC 0x10
312#define IEEE80211_RADIOTAP_MCS_HAVE_STBC 0x20
313#define IEEE80211_RADIOTAP_MCS_HAVE_NESS 0x40
314#define IEEE80211_RADIOTAP_MCS_NESS_BIT1 0x80
316#define IEEE80211_RADIOTAP_MCS_BW_MASK 0x03
317#define IEEE80211_RADIOTAP_MCS_BW_20 0
318#define IEEE80211_RADIOTAP_MCS_BW_40 1
319#define IEEE80211_RADIOTAP_MCS_BW_20L 2
320#define IEEE80211_RADIOTAP_MCS_BW_20U 3
321#define IEEE80211_RADIOTAP_MCS_SGI 0x04
322#define IEEE80211_RADIOTAP_MCS_FMT_GF 0x08
323#define IEEE80211_RADIOTAP_MCS_FEC_LDPC 0x10
324#define IEEE80211_RADIOTAP_MCS_STBC_MASK 0x60
325#define IEEE80211_RADIOTAP_MCS_STBC_SHIFT 5
326#define IEEE80211_RADIOTAP_MCS_STBC_1 1
327#define IEEE80211_RADIOTAP_MCS_STBC_2 2
328#define IEEE80211_RADIOTAP_MCS_STBC_3 3
329#define IEEE80211_RADIOTAP_MCS_NESS_BIT0 0x80
332#define IEEE80211_RADIOTAP_AMPDU_REPORT_ZEROLEN 0x0001
333#define IEEE80211_RADIOTAP_AMPDU_IS_ZEROLEN 0x0002
334#define IEEE80211_RADIOTAP_AMPDU_LAST_KNOWN 0x0004
335#define IEEE80211_RADIOTAP_AMPDU_IS_LAST 0x0008
336#define IEEE80211_RADIOTAP_AMPDU_DELIM_CRC_ERR 0x0010
337#define IEEE80211_RADIOTAP_AMPDU_DELIM_CRC_KNOWN 0x0020
338#define IEEE80211_RADIOTAP_AMPDU_EOF 0x0040
339#define IEEE80211_RADIOTAP_AMPDU_EOF_KNOWN 0x0080
342#define IEEE80211_RADIOTAP_VHT_HAVE_STBC 0x0001
343#define IEEE80211_RADIOTAP_VHT_HAVE_TXOP_PS 0x0002
344#define IEEE80211_RADIOTAP_VHT_HAVE_GI 0x0004
345#define IEEE80211_RADIOTAP_VHT_HAVE_SGI_NSYM_DA 0x0008
346#define IEEE80211_RADIOTAP_VHT_HAVE_LDPC_EXTRA 0x0010
347#define IEEE80211_RADIOTAP_VHT_HAVE_BF 0x0020
348#define IEEE80211_RADIOTAP_VHT_HAVE_BW 0x0040
349#define IEEE80211_RADIOTAP_VHT_HAVE_GID 0x0080
350#define IEEE80211_RADIOTAP_VHT_HAVE_PAID 0x0100
351#define IEEE80211_RADIOTAP_VHT_STBC 0x01
352#define IEEE80211_RADIOTAP_VHT_TXOP_PS 0x02
353#define IEEE80211_RADIOTAP_VHT_SGI 0x04
354#define IEEE80211_RADIOTAP_VHT_SGI_NSYM_DA 0x08
355#define IEEE80211_RADIOTAP_VHT_LDPC_EXTRA 0x10
356#define IEEE80211_RADIOTAP_VHT_BF 0x20
357#define IEEE80211_RADIOTAP_VHT_NSS 0x0f
358#define IEEE80211_RADIOTAP_VHT_MCS 0xf0
359#define IEEE80211_RADIOTAP_VHT_CODING_LDPC 0x01
361#define IEEE80211_RADIOTAP_VHT_BW_MASK 0x1f
362#define IEEE80211_RADIOTAP_VHT_BW_20 IEEE80211_RADIOTAP_MCS_BW_20
363#define IEEE80211_RADIOTAP_VHT_BW_40 IEEE80211_RADIOTAP_MCS_BW_40
364#define IEEE80211_RADIOTAP_VHT_BW_20L IEEE80211_RADIOTAP_MCS_BW_20L
365#define IEEE80211_RADIOTAP_VHT_BW_20U IEEE80211_RADIOTAP_MCS_BW_20U
366#define IEEE80211_RADIOTAP_VHT_BW_80 4
367#define IEEE80211_RADIOTAP_VHT_BW_40L 5
368#define IEEE80211_RADIOTAP_VHT_BW_40U 6
369#define IEEE80211_RADIOTAP_VHT_BW_20LL 7
370#define IEEE80211_RADIOTAP_VHT_BW_20LU 8
371#define IEEE80211_RADIOTAP_VHT_BW_20UL 9
372#define IEEE80211_RADIOTAP_VHT_BW_20UU 10
373#define IEEE80211_RADIOTAP_VHT_BW_160 11
374#define IEEE80211_RADIOTAP_VHT_BW_80L 12
375#define IEEE80211_RADIOTAP_VHT_BW_80U 13
376#define IEEE80211_RADIOTAP_VHT_BW_40LL 14
377#define IEEE80211_RADIOTAP_VHT_BW_40LU 15
378#define IEEE80211_RADIOTAP_VHT_BW_40UL 16
379#define IEEE80211_RADIOTAP_VHT_BW_40UU 17
380#define IEEE80211_RADIOTAP_VHT_BW_20LLL 18
381#define IEEE80211_RADIOTAP_VHT_BW_20LLU 19
382#define IEEE80211_RADIOTAP_VHT_BW_20LUL 20
383#define IEEE80211_RADIOTAP_VHT_BW_20LUU 21
384#define IEEE80211_RADIOTAP_VHT_BW_20ULL 22
385#define IEEE80211_RADIOTAP_VHT_BW_20ULU 23
386#define IEEE80211_RADIOTAP_VHT_BW_20UUL 24
387#define IEEE80211_RADIOTAP_VHT_BW_20UUU 25
390#define IEEE80211_RADIOTAP_TS_UNIT_MASK 0x0F
391#define IEEE80211_RADIOTAP_TS_UNIT_MSEC 0x00
392#define IEEE80211_RADIOTAP_TS_UNIT_USEC 0x01
393#define IEEE80211_RADIOTAP_TS_UNIT_NSEC 0x02
394#define IEEE80211_RADIOTAP_TS_SPOS_MASK 0xF0
395#define IEEE80211_RADIOTAP_TS_SPOS_SHIFT 4
396#define IEEE80211_RADIOTAP_TS_SPOS_MPDU 0x0
397#define IEEE80211_RADIOTAP_TS_SPOS_ACQ 0x1
398#define IEEE80211_RADIOTAP_TS_SPOS_EOF 0x2
399#define IEEE80211_RADIOTAP_TS_SPOS_UNDEF 0xF
402#define IEEE80211_RADIOTAP_HE_PPDU_FORMAT_MASK 0x0003
403#define IEEE80211_RADIOTAP_HE_PPDU_FORMAT_HE_SU 0
404#define IEEE80211_RADIOTAP_HE_PPDU_FORMAT_HE_EXT_SU 1
405#define IEEE80211_RADIOTAP_HE_PPDU_FORMAT_HE_MU 2
406#define IEEE80211_RADIOTAP_HE_PPDU_FORMAT_HE_TRIG 3
407#define IEEE80211_RADIOTAP_HE_BSS_COLOR_KNOWN 0x0004
408#define IEEE80211_RADIOTAP_HE_BEAM_CHANGE_KNOWN 0x0008
409#define IEEE80211_RADIOTAP_HE_UL_DL_KNOWN 0x0010
410#define IEEE80211_RADIOTAP_HE_DATA_MCS_KNOWN 0x0020
411#define IEEE80211_RADIOTAP_HE_DATA_DCM_KNOWN 0x0040
412#define IEEE80211_RADIOTAP_HE_CODING_KNOWN 0x0080
413#define IEEE80211_RADIOTAP_HE_LDPC_EXTRA_SYMBOL_SEGMENT_KNOWN 0x0100
414#define IEEE80211_RADIOTAP_HE_STBC_KNOWN 0x0200
415#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_KNOWN 0x0400
416#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_2_KNOWN 0x0800
417#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_3_KNOWN 0x1000
418#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_4_KNOWN 0x2000
419#define IEEE80211_RADIOTAP_HE_DATA_BW_RU_ALLOCATION_KNOWN 0x4000
420#define IEEE80211_RADIOTAP_HE_DOPPLER_KNOWN 0x8000
421#define IEEE80211_RADIOTAP_HE_PRI_SEC_80_MHZ_KNOWN 0x0001
422#define IEEE80211_RADIOTAP_HE_GI_KNOWN 0x0002
423#define IEEE80211_RADIOTAP_HE_NUM_LTF_SYMBOLS_KNOWN 0x0004
424#define IEEE80211_RADIOTAP_HE_PRE_FEC_PADDING_FACTOR_KNOWN 0x0008
425#define IEEE80211_RADIOTAP_HE_TXBF_KNOWN 0x0010
426#define IEEE80211_RADIOTAP_HE_PE_DISAMBIGUITY_KNOWN 0x0020
427#define IEEE80211_RADIOTAP_HE_TXOP_KNOWN 0x0040
428#define IEEE80211_RADIOTAP_HE_MIDAMBLE_PERIODICITY_KNOWN 0x0080
429#define IEEE80211_RADIOTAP_HE_RU_ALLOCATION_OFFSET 0x3F00
430#define IEEE80211_RADIOTAP_HE_RU_ALLOCATION_OFFSET_KNOWN 0x4000
431#define IEEE80211_RADIOTAP_HE_PRI_SEC_80_MHZ 0x8000
432#define IEEE80211_RADIOTAP_HE_BSS_COLOR_MASK 0x003F
433#define IEEE80211_RADIOTAP_HE_BEAM_CHANGE 0x0040
434#define IEEE80211_RADIOTAP_HE_UL_DL 0x0080
435#define IEEE80211_RADIOTAP_HE_DATA_MCS_MASK 0x0F00
436#define IEEE80211_RADIOTAP_HE_DATA_DCM 0x1000
437#define IEEE80211_RADIOTAP_HE_CODING 0x2000
438#define IEEE80211_RADIOTAP_HE_LDPC_EXTRA_SYMBOL_SEGMENT 0x4000
439#define IEEE80211_RADIOTAP_HE_STBC 0x8000
441#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_MASK 0x000F
442#define IEEE80211_RADIOTAP_HE_D4_FFF0 0xFFF0
444#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_1_MASK 0X000F
445#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_2_MASK 0X00F0
446#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_3_MASK 0X0F00
447#define IEEE80211_RADIOTAP_HE_SPATIAL_REUSE_4_MASK 0XF000
449#define IEEE80211_RADIOTAP_HE_STA_ID_MASK 0x7FF0
450#define IEEE80211_RADIOTAP_HE_RESERVED_D4_B15 0x8000
452#define IEEE80211_RADIOTAP_HE_DATA_BANDWIDTH_RU_ALLOC_MASK 0x000F
453#define IEEE80211_RADIOTAP_HE_DATA_BANDWIDTH_RU_20 0
454#define IEEE80211_RADIOTAP_HE_DATA_BANDWIDTH_RU_40 1
455#define IEEE80211_RADIOTAP_HE_DATA_BANDWIDTH_RU_80 2
456#define IEEE80211_RADIOTAP_HE_DATA_BANDWIDTH_RU_160 3
457#define IEEE80211_RADIOTAP_HE_GI_MASK 0x0030
458#define IEEE80211_RADIOTAP_HE_GI_0_POINT_8_MICRO 0
459#define IEEE80211_RADIOTAP_HE_GI_1_POINT_6_MICRO 1
460#define IEEE80211_RADIOTAP_HE_GI_3_POINT_2_MICRO 2
461#define IEEE80211_RADIOTAP_HE_GI_RESERVED 3
462#define IEEE80211_RADIOTAP_HE_LTF_SYMBOL_SIZE 0x00C0
463#define IEEE80211_RADIOTAP_HE_NUM_LTF_SYMBOLS_MASK 0x0700
464#define IEEE80211_RADIOTAP_HE_RESERVED_D5_B11 0x0800
465#define IEEE80211_RADIOTAP_HE_PRE_FEC_PADDING_FACTOR_MASK 0x3000
466#define IEEE80211_RADIOTAP_HE_TXBF 0x4000
467#define IEEE80211_RADIOTAP_HE_PE_DISAMBIGUITY 0x8000
468#define IEEE80211_RADIOTAP_HE_NSTS_MASK 0x000F
469#define IEEE80211_RADIOTAP_HE_DOPLER_VALUE 0x0010
470#define IEEE80211_RADIOTAP_HE_RESERVED_D6_00E0 0x00E0
471#define IEEE80211_RADIOTAP_HE_TXOP_VALUE_MASK 0x7F00
472#define IEEE80211_RADIOTAP_HE_MIDAMBLE_PERIODICITY 0x8000
475#define IEEE80211_RADIOTAP_HE_MU_SIG_B_MCS_MASK 0x000F
476#define IEEE80211_RADIOTAP_HE_MU_SIG_B_MCS_KNOWN 0x0010
477#define IEEE80211_RADIOTAP_HE_MU_SIG_B_DCM 0x0020
478#define IEEE80211_RADIOTAP_HE_MU_SIG_B_DCM_KNOWN 0x0040
479#define IEEE80211_RADIOTAP_HE_MU_CHAN2_CENTER_26_TONE_RU_BIT_KNOWN 0x0080
480#define IEEE80211_RADIOTAP_HE_MU_CHAN1_RUS_KNOWN 0x0100
481#define IEEE80211_RADIOTAP_HE_MU_CHAN2_RUS_KNOWN 0x0200
482#define IEEE80211_RADIOTAP_HE_MU_RESERVED_F1_B10_B11 0x0C00
483#define IEEE80211_RADIOTAP_HE_MU_CHAN1_CENTER_26_TONE_RU_BIT_KNOWN 0x1000
484#define IEEE80211_RADIOTAP_HE_MU_CHAN1_CENTER_26_TONE_RU_VALUE 0x2000
485#define IEEE80211_RADIOTAP_HE_MU_SIG_B_COMPRESSION_KNOWN 0x4000
486#define IEEE80211_RADIOTAP_HE_MU_SYMBOL_CNT_OR_USER_CNT_KNOWN 0x8000
487#define IEEE80211_RADIOTAP_HE_MU_BW_FROM_BW_IN_SIG_A_MASK 0x0003
488#define IEEE80211_RADIOTAP_HE_MU_BW_FROM_BW_IN_SIG_A_KNOWN 0x0004
489#define IEEE80211_RADIOTAP_HE_MU_SIG_B_COMPRESSION_FROM_SIG_A 0x0008
490#define IEEE80211_RADIOTAP_HE_MU_SYMBOL_CNT_OR_USER_CNT 0x00F0
491#define IEEE80211_RADIOTAP_HE_MU_PREAMBLE_PUNCTURING_MASK 0x0300
492#define IEEE80211_RADIOTAP_HE_MU_PREAMBLE_PUNCTURING_KNOWN 0x0400
493#define IEEE80211_RADIOTAP_HE_MU_CHAN2_CENTER_26_TONE_RU_VALUE 0x0800
494#define IEEE80211_RADIOTAP_HE_MU_RESERVED_F2_B12_B15 0xF000
497#define IEEE80211_RADIOTAP_L_SIG_RATE_KNOWN 0x0001
498#define IEEE80211_RADIOTAP_L_SIG_LENGTH_KNOWN 0x0002
499#define IEEE80211_RADIOTAP_L_SIG_RESERVED_MASK 0xFFFC
500#define IEEE80211_RADIOTAP_L_SIG_RATE_MASK 0x000F
501#define IEEE80211_RADIOTAP_L_SIG_LENGTH_MASK 0xFFF0
504#define IEEE80211_RADIOTAP_TLV_S1G_S1G_PPDU_FORMAT_KNOWN 0x0001
505#define IEEE80211_RADIOTAP_TLV_S1G_RESPONSE_INDICATION_KNOWN 0x0002
506#define IEEE80211_RADIOTAP_TLV_S1G_GUARD_INTERVAL_KNOWN 0x0004
507#define IEEE80211_RADIOTAP_TLV_S1G_NSS_KNOWN 0x0008
508#define IEEE80211_RADIOTAP_TLV_S1G_BANDWIDTH_KNOWN 0x0010
509#define IEEE80211_RADIOTAP_TLV_S1G_MCS_KNOWN 0x0020
510#define IEEE80211_RADIOTAP_TLV_S1G_COLOR_KNOWN 0x0040
511#define IEEE80211_RADIOTAP_TLV_S1G_UPLINK_INDICATION_KNOWN 0x0080
512#define IEEE80211_RADIOTAP_TLV_S1G_RESERVED_1 0xFF00
513#define IEEE80211_RADIOTAP_TLV_S1G_S1G_PPDU_FORMAT 0x0003
514#define IEEE80211_RADIOTAP_TLV_S1G_RESPONSE_INDICATION 0x000C
515#define IEEE80211_RADIOTAP_TLV_S1G_RESERVED_2 0x0010
516#define IEEE80211_RADIOTAP_TLV_S1G_GUARD_INTERVAL 0x0020
517#define IEEE80211_RADIOTAP_TLV_S1G_NSS 0x00C0
518#define IEEE80211_RADIOTAP_TLV_S1G_BANDWIDTH 0x0F00
519#define IEEE80211_RADIOTAP_TLV_S1G_MCS 0xF000
520#define IEEE80211_RADIOTAP_TLV_S1G_COLOR 0x0007
521#define IEEE80211_RADIOTAP_TLV_S1G_UPLINK_INDICATION 0x0008
522#define IEEE80211_RADIOTAP_TLV_S1G_RESERVED_3 0x00F0
523#define IEEE80211_RADIOTAP_TLV_S1G_RSSI 0xFF00
526#define IEEE80211_RADIOTAP_L_SIG_RATE_KNOWN 0x0001
527#define IEEE80211_RADIOTAP_L_SIG_LENGTH_KNOWN 0x0002
528#define IEEE80211_RADIOTAP_L_SIG_RESERVED_MASK 0xFFFC
529#define IEEE80211_RADIOTAP_L_SIG_RATE_MASK 0x000F
530#define IEEE80211_RADIOTAP_L_SIG_LENGTH_MASK 0xFFF0
532#define IEEE80211_RADIOTAP_TS_FLG_32BIT 0x01
533#define IEEE80211_RADIOTAP_TS_FLG_ACCURACY 0x02
535#define IEEE80211_RADIOTAP_USIG_PHY_VERSION_ID_KNOWN 0x00000001
536#define IEEE80211_RADIOTAP_USIG_BW_KNOWN 0x00000002
537#define IEEE80211_RADIOTAP_USIG_UL_DL_KNOWN 0x00000004
538#define IEEE80211_RADIOTAP_USIG_BSS_COLOR_KNOWN 0x00000008
539#define IEEE80211_RADIOTAP_USIG_TXOP_KNOWN 0x00000010
540#define IEEE80211_RADIOTAP_USIG_BAD_U_SIG_CRC 0x00000020
541#define IEEE80211_RADIOTAP_USIG_RESERVED 0x00000FC0
542#define IEEE80211_RADIOTAP_USIG_PHY_VERSION_IDENTIFIER 0x00007000
543#define IEEE80211_RADIOTAP_USIG_BW 0x00038000
544#define IEEE80211_RADIOTAP_USIG_UL_DL 0x00040000
545#define IEEE80211_RADIOTAP_USIG_BSS_COLOR 0x01F80000
546#define IEEE80211_RADIOTAP_USIG_TXOP 0xFE000000
549#define IEEE80211_RADIOTAP_USIG_BW_SHIFT 15
550#define IEEE80211_RADIOTAP_USIG_BW_20 0x0
551#define IEEE80211_RADIOTAP_USIG_BW_40 0x1
552#define IEEE80211_RADIOTAP_USIG_BW_80 0x2
553#define IEEE80211_RADIOTAP_USIG_BW_160 0x3
554#define IEEE80211_RADIOTAP_USIG_BW_320_1 0x4
555#define IEEE80211_RADIOTAP_USIG_BW_320_2 0x5
557#define IEEE80211_RADIOTAP_USIG_1_B20_B24 0x0000001F
558#define IEEE80211_RADIOTAP_USIG_1_B25 0x00000020
559#define IEEE80211_RADIOTAP_USIG_2_B0_B1 0x000000C0
560#define IEEE80211_RADIOTAP_USIG_2_B2 0x00000100
561#define IEEE80211_RADIOTAP_USIG_2_B3_B7 0x00003E00
562#define IEEE80211_RADIOTAP_USIG_2_B8 0x00004000
563#define IEEE80211_RADIOTAP_USIG_2_B9_B10 0x00018000
564#define IEEE80211_RADIOTAP_USIG_2_B11_B15 0x003E0000
565#define IEEE80211_RADIOTAP_USIG_2_B16_B19 0x03C00000
566#define IEEE80211_RADIOTAP_USIG_2_B20_B25 0xFC000000
568#define IEEE80211_RADIOTAP_USIG_1_B20_B25 0x0000003F
569#define IEEE80211_RADIOTAP_USIG_2_B3_B6 0x00001E00
570#define IEEE80211_RADIOTAP_USIG_2_B7_B10 0x0001E000
571#define IEEE80211_RADIOTAP_USIG_2_B11_B15 0x003E0000
572#define IEEE80211_RADIOTAP_USIG_2_B16_B19 0x03C00000
573#define IEEE80211_RADIOTAP_USIG_2_B20_B25 0xFC000000
575#define IEEE80211_RADIOTAP_EHT_RESERVED_1 0x00000001
576#define IEEE80211_RADIOTAP_EHT_SPATIAL_REUSE_KNOWN 0x00000002
577#define IEEE80211_RADIOTAP_EHT_GUARD_INTERVAL_KNOWN 0x00000004
578#define IEEE80211_RADIOTAP_EHT_RESERVED_8 0x00000008
579#define IEEE80211_RADIOTAP_EHT_NUMBER_LTF_SYMBOLS_KNOWN 0x00000010
580#define IEEE80211_RADIOTAP_EHT_LDPC_EXTRA_SYMBOL_SEGMENT_KNOWN 0x00000020
581#define IEEE80211_RADIOTAP_EHT_PRE_FEC_PADDING_FACTOR_KNOWN 0x00000040
582#define IEEE80211_RADIOTAP_EHT_PE_DISAMBIGUITY_KNOWN 0x00000080
583#define IEEE80211_RADIOTAP_EHT_DISREGARD_KNOWN 0x00000100
584#define IEEE80211_RADIOTAP_EHT_SOUNDING_DISREGARD_KNOWN 0x00000200
585#define IEEE80211_RADIOTAP_EHT_RESERVED_2 0x00001C00
586#define IEEE80211_RADIOTAP_EHT_CRC1_KNOWN 0x00002000
587#define IEEE80211_RADIOTAP_EHT_TAIL1_KNOWN 0x00004000
588#define IEEE80211_RADIOTAP_EHT_CRC2_KNOWN 0x00008000
589#define IEEE80211_RADIOTAP_EHT_TAIL2_KNOWN 0x00010000
590#define IEEE80211_RADIOTAP_EHT_NSS_KNOWN 0x00020000
591#define IEEE80211_RADIOTAP_EHT_BEAMFORMED_KNOWN 0x00040000
592#define IEEE80211_RADIOTAP_EHT_NUMBER_NON_OFDMA_USERS_KNOWN 0x00080000
593#define IEEE80211_RADIOTAP_EHT_USER_ENCODING_BLOCK_CRC_KNOWN 0x00100000
594#define IEEE80211_RADIOTAP_EHT_USER_ENCODING_BLOCK_TAIL_KNOWN 0x00200000
595#define IEEE80211_RADIOTAP_EHT_RU_MRU_SIZE_KNOWN 0x00400000
596#define IEEE80211_RADIOTAP_EHT_RU_MRU_INDEX_KNOWN 0x00800000
597#define IEEE80211_RADIOTAP_EHT_TB_RU_ALLOCATION_KNOWN 0x01000000
598#define IEEE80211_RADIOTAP_EHT_PRIMARY_80MHZ_CHANNEL_POS_KNOWN 0x02000000
599#define IEEE80211_RADIOTAP_EHT_RESERVED_FC 0xFC000000
602#define IEEE80211_RADIOTAP_EHT_GI_MASK 0x00000180
603#define IEEE80211_RADIOTAP_EHT_GI_SHIFT 7
606#define IEEE80211_RADIOTAP_EHT_RU_MRU_SIZE_MASK 0x0000001F
607#define IEEE80211_RADIOTAP_EHT_RU_MRU_SIZE_SHIFT 0
610#define IEEE80211_RADIOTAP_EHT_RU_26 0
611#define IEEE80211_RADIOTAP_EHT_RU_52 0x1
612#define IEEE80211_RADIOTAP_EHT_RU_106 0x2
613#define IEEE80211_RADIOTAP_EHT_RU_242 0x3
614#define IEEE80211_RADIOTAP_EHT_RU_484 0x4
615#define IEEE80211_RADIOTAP_EHT_RU_996 0x5
616#define IEEE80211_RADIOTAP_EHT_RU_2_TIMES_996 0x6
617#define IEEE80211_RADIOTAP_EHT_RU_4_TIMES_994 0x7
618#define IEEE80211_RADIOTAP_EHT_RU_52_PLUS_26 0x8
619#define IEEE80211_RADIOTAP_EHT_RU_106_PLUS_26 0x9
621#define IEEE80211_RADIOTAP_EHT_RU_484_PLUS_242 0xA
622#define IEEE80211_RADIOTAP_EHT_RU_996_PLUS_484 0xB
623#define IEEE80211_RADIOTAP_EHT_RU_996_PLUS_484_242 0xC
624#define IEEE80211_RADIOTAP_EHT_RU_2_TIMES_996_PLUS_484 0xD
625#define IEEE80211_RADIOTAP_EHT_RU_3_TIMES_996 0xE
626#define IEEE80211_RADIOTAP_EHT_RU_3_TIMES_996_PLUS_484 0xF
Definition packet-ieee80211-radiotap-defs.h:216