DORMANTno replies

[PATCH wireless-next] wifi: radiotap: add definitions for UHR U-SIG

From: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date: 2026-09-21 19:28:42
Subsystem: 802.11 (including cfg80211/nl80211), the rest · Maintainers: Johannes Berg, Linus Torvalds

From: Johannes Berg <redacted>

There are three different formats for MU, TB and ELR, add the
necessary definitions for them.

Signed-off-by: Johannes Berg <redacted>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
---
 include/net/ieee80211_radiotap.h | 45 +++++++++++++++++++++++++++++++-
 1 file changed, 44 insertions(+), 1 deletion(-)
diff --git a/include/net/ieee80211_radiotap.h b/include/net/ieee80211_radiotap.h
index ffdfbade25b8..733b5128a6df 100644
--- a/include/net/ieee80211_radiotap.h
+++ b/include/net/ieee80211_radiotap.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2017		Intel Deutschland GmbH
- * Copyright (c) 2018-2019, 2021-2022, 2025 Intel Corporation
+ * Copyright (c) 2018-2019, 2021-2022, 2025-2026 Intel Corporation
  *
  * Permission to use, copy, modify, and/or distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
@@ -608,6 +608,49 @@ enum ieee80211_radiotap_eht_usig_tb {
 	IEEE80211_RADIOTAP_EHT_USIG2_TB_B20_B25_TAIL		= 0xfc000000,
 };
 
+enum ieee80211_radiotap_uhr_usig_mu {
+	/* USIG-1 */
+	IEEE80211_RADIOTAP_UHR_USIG1_MU_BSS_COLOR_2		= 0x0000003f,
+	IEEE80211_RADIOTAP_UHR_USIG1_MU_B20_B24_DISREGARD	= 0x0000001f,
+	IEEE80211_RADIOTAP_UHR_USIG1_MU_B25_VALIDATE		= 0x00000020,
+	/* USIG-2 */
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B0_B1_PPDU_TYPE		= 0x000000c0,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B2_COBF_COSR		= 0x00000100,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B3_B7_PUNCTURED_INFO	= 0x00003e00,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B8_VALIDATE		= 0x00004000,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B9_B10_SIG_MCS		= 0x00018000,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B11_B15_UHR_SIG_SYMBOLS	= 0x003e0000,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B16_B19_CRC		= 0x03c00000,
+	IEEE80211_RADIOTAP_UHR_USIG2_MU_B20_B25_TAIL		= 0xfc000000,
+};
+
+enum ieee80211_radiotap_uhr_usig_tb {
+	/* USIG-1 */
+	IEEE80211_RADIOTAP_UHR_USIG1_TB_B20_B25_DISREGARD	= 0x0000001f,
+
+	/* USIG-2 */
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B0_B1_PPDU_TYPE		= 0x000000c0,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B2_VALIDATE		= 0x00000100,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B3_B6_SPATIAL_REUSE_1	= 0x00001e00,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B7_B10_SPATIAL_REUSE_2	= 0x0001e000,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B11_B15_DISREGARD	= 0x003e0000,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B16_B19_CRC		= 0x03c00000,
+	IEEE80211_RADIOTAP_UHR_USIG2_TB_B20_B25_TAIL		= 0xfc000000,
+};
+
+enum ieee80211_radiotap_uhr_usig_elr {
+	/* USIG-1 */
+	IEEE80211_RADIOTAP_UHR_USIG1_ELR_B20_B24_DISREGARD	= 0x0000001f,
+	IEEE80211_RADIOTAP_UHR_USIG1_ELR_B25_VALIDATE		= 0x00000020,
+
+	/* USIG-2 */
+	IEEE80211_RADIOTAP_UHR_USIG2_ELR_B0_B1_PPDU_TYPE	= 0x000000c0,
+	IEEE80211_RADIOTAP_UHR_USIG2_ELR_B2_B12_STA_ID		= 0x0007ff00,
+	IEEE80211_RADIOTAP_UHR_USIG2_ELR_B13_B15_VALIDATE	= 0x00380000,
+	IEEE80211_RADIOTAP_UHR_USIG2_ELR_B16_B19_CRC		= 0x03c00000,
+	IEEE80211_RADIOTAP_UHR_USIG2_ELR_B20_B25_TAIL		= 0xfc000000,
+};
+
 /*
  * ieee80211_radiotap_uhr_elr - content of UHR-ELR TLV (type 37)
  * see https://www.radiotap.org/fields/UHR-ELR for details
-- 
2.34.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help