blob: 6c12bd8e8a8b6585c5c2a6c051429a0ea6ab1635 [file] [log] [blame]
developer66e89bc2024-04-23 14:50:01 +08001From c49eb9ee6847953b24ba265add49fa4ec587c7a8 Mon Sep 17 00:00:00 2001
2From: Johannes Berg <johannes.berg@intel.com>
3Date: Thu, 21 Dec 2023 20:42:17 +0100
4Subject: [PATCH 26/28] update nl80211.h
5
6Signed-off-by: Johannes Berg <johannes.berg@intel.com>
7---
8 info.c | 1 +
9 nl80211.h | 29 +++++++++++++++++++++++++++++
10 2 files changed, 30 insertions(+)
11
12diff --git a/info.c b/info.c
13index 317e7a3..40dcc81 100644
14--- a/info.c
15+++ b/info.c
16@@ -172,6 +172,7 @@ static void ext_feat_print(enum nl80211_ext_feature_index idx)
17 ext_feat_case(AUTH_AND_DEAUTH_RANDOM_TA, "random auth/deauth transmitter address");
18 ext_feat_case(OWE_OFFLOAD, "OWE DH element handling offload (client)");
19 ext_feat_case(OWE_OFFLOAD_AP, "OWE DH element handling offload (AP)");
20+ ext_feat_case(DFS_CONCURRENT, "DFS channel use under concurrent DFS master");
21 }
22 }
23
24diff --git a/nl80211.h b/nl80211.h
25index a682b54..1ccdcae 100644
26--- a/nl80211.h
27+++ b/nl80211.h
28@@ -4256,6 +4256,14 @@ enum nl80211_wmm_rule {
29 * in current regulatory domain.
30 * @NL80211_FREQUENCY_ATTR_PSD: Power spectral density (in dBm) that
31 * is allowed on this channel in current regulatory domain.
32+ * @NL80211_FREQUENCY_ATTR_DFS_CONCURRENT: Operation on this channel is
33+ * allowed for peer-to-peer or adhoc communication under the control
34+ * of a DFS master which operates on the same channel (FCC-594280 D01
35+ * Section B.3). Should be used together with %NL80211_RRF_DFS only.
36+ * @NL80211_FREQUENCY_ATTR_NO_UHB_VLP_CLIENT: Client connection to VLP AP
37+ * not allowed using this channel
38+ * @NL80211_FREQUENCY_ATTR_NO_UHB_AFC_CLIENT: Client connection to AFC AP
39+ * not allowed using this channel
40 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
41 * currently defined
42 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
43@@ -4295,6 +4303,9 @@ enum nl80211_frequency_attr {
44 NL80211_FREQUENCY_ATTR_NO_320MHZ,
45 NL80211_FREQUENCY_ATTR_NO_EHT,
46 NL80211_FREQUENCY_ATTR_PSD,
47+ NL80211_FREQUENCY_ATTR_DFS_CONCURRENT,
48+ NL80211_FREQUENCY_ATTR_NO_UHB_VLP_CLIENT,
49+ NL80211_FREQUENCY_ATTR_NO_UHB_AFC_CLIENT,
50
51 /* keep last */
52 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
53@@ -4500,6 +4511,12 @@ enum nl80211_sched_scan_match_attr {
54 * @NL80211_RRF_NO_320MHZ: 320MHz operation not allowed
55 * @NL80211_RRF_NO_EHT: EHT operation not allowed
56 * @NL80211_RRF_PSD: Ruleset has power spectral density value
57+ * @NL80211_RRF_DFS_CONCURRENT: Operation on this channel is allowed for
58+ peer-to-peer or adhoc communication under the control of a DFS master
59+ which operates on the same channel (FCC-594280 D01 Section B.3).
60+ Should be used together with %NL80211_RRF_DFS only.
61+ * @NL80211_RRF_NO_UHB_VLP_CLIENT: Client connection to VLP AP not allowed
62+ * @NL80211_RRF_NO_UHB_AFC_CLIENT: Client connection to AFC AP not allowed
63 */
64 enum nl80211_reg_rule_flags {
65 NL80211_RRF_NO_OFDM = 1<<0,
66@@ -4521,6 +4538,9 @@ enum nl80211_reg_rule_flags {
67 NL80211_RRF_NO_320MHZ = 1<<18,
68 NL80211_RRF_NO_EHT = 1<<19,
69 NL80211_RRF_PSD = 1<<20,
70+ NL80211_RRF_DFS_CONCURRENT = 1<<21,
71+ NL80211_RRF_NO_UHB_VLP_CLIENT = 1<<22,
72+ NL80211_RRF_NO_UHB_AFC_CLIENT = 1<<23,
73 };
74
75 #define NL80211_RRF_PASSIVE_SCAN NL80211_RRF_NO_IR
76@@ -5076,9 +5096,12 @@ enum nl80211_bss_use_for {
77 * BSS isn't possible
78 * @NL80211_BSS_CANNOT_USE_NSTR_NONPRIMARY: NSTR nonprimary links aren't
79 * supported by the device, and this BSS entry represents one.
80+ * @NL80211_BSS_CANNOT_USE_UHB_PWR_MISMATCH: STA is not supporting
81+ * the AP power type (SP, VLP, AP) that the AP uses.
82 */
83 enum nl80211_bss_cannot_use_reasons {
84 NL80211_BSS_CANNOT_USE_NSTR_NONPRIMARY = 1 << 0,
85+ NL80211_BSS_CANNOT_USE_UHB_PWR_MISMATCH = 1 << 1,
86 };
87
88 /**
89@@ -6492,6 +6515,11 @@ enum nl80211_feature_flags {
90 * @NL80211_EXT_FEATURE_OWE_OFFLOAD_AP: Driver/Device wants to do OWE DH IE
91 * handling in AP mode.
92 *
93+ * @NL80211_EXT_FEATURE_DFS_CONCURRENT: The device supports peer-to-peer or
94+ * ad hoc operation on DFS channels under the control of a concurrent
95+ * DFS master on the same channel as described in FCC-594280 D01
96+ * (Section B.3). This, for example, allows P2P GO and P2P clients to
97+ * operate on DFS channels as long as there's a concurrent BSS connection.
98 * @NUM_NL80211_EXT_FEATURES: number of extended features.
99 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
100 */
101@@ -6565,6 +6593,7 @@ enum nl80211_ext_feature_index {
102 NL80211_EXT_FEATURE_AUTH_AND_DEAUTH_RANDOM_TA,
103 NL80211_EXT_FEATURE_OWE_OFFLOAD,
104 NL80211_EXT_FEATURE_OWE_OFFLOAD_AP,
105+ NL80211_EXT_FEATURE_DFS_CONCURRENT,
106
107 /* add new features before the definition below */
108 NUM_NL80211_EXT_FEATURES,
109--
1102.39.2
111