mac80211: Update to version 5.7-rc3-1
[openwrt/openwrt.git] / package / network / utils / iw / patches / 001-nl80211_h_sync.patch
1 --- a/nl80211.h
2 +++ b/nl80211.h
3 @@ -11,7 +11,7 @@
4 * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>
5 * Copyright 2008 Colin McCabe <colin@cozybit.com>
6 * Copyright 2015-2017 Intel Deutschland GmbH
7 - * Copyright (C) 2018-2019 Intel Corporation
8 + * Copyright (C) 2018-2020 Intel Corporation
9 *
10 * Permission to use, copy, modify, and/or distribute this software for any
11 * purpose with or without fee is hereby granted, provided that the above
12 @@ -249,6 +249,45 @@
13 */
14
15 /**
16 + * DOC: VLAN offload support for setting group keys and binding STAs to VLANs
17 + *
18 + * By setting @NL80211_EXT_FEATURE_VLAN_OFFLOAD flag drivers can indicate they
19 + * support offloading VLAN functionality in a manner where the driver exposes a
20 + * single netdev that uses VLAN tagged frames and separate VLAN-specific netdevs
21 + * can then be added using RTM_NEWLINK/IFLA_VLAN_ID similarly to the Ethernet
22 + * case. Frames received from stations that are not assigned to any VLAN are
23 + * delivered on the main netdev and frames to such stations can be sent through
24 + * that main netdev.
25 + *
26 + * %NL80211_CMD_NEW_KEY (for group keys), %NL80211_CMD_NEW_STATION, and
27 + * %NL80211_CMD_SET_STATION will optionally specify vlan_id using
28 + * %NL80211_ATTR_VLAN_ID.
29 + */
30 +
31 +/**
32 + * DOC: TID configuration
33 + *
34 + * TID config support can be checked in the %NL80211_ATTR_TID_CONFIG
35 + * attribute given in wiphy capabilities.
36 + *
37 + * The necessary configuration parameters are mentioned in
38 + * &enum nl80211_tid_config_attr and it will be passed to the
39 + * %NL80211_CMD_SET_TID_CONFIG command in %NL80211_ATTR_TID_CONFIG.
40 + *
41 + * If the configuration needs to be applied for specific peer then the MAC
42 + * address of the peer needs to be passed in %NL80211_ATTR_MAC, otherwise the
43 + * configuration will be applied for all the connected peers in the vif except
44 + * any peers that have peer specific configuration for the TID by default; if
45 + * the %NL80211_TID_CONFIG_ATTR_OVERRIDE flag is set, peer specific values
46 + * will be overwritten.
47 + *
48 + * All this configuration is valid only for STA's current connection
49 + * i.e. the configuration will be reset to default when the STA connects back
50 + * after disconnection/roaming, and this configuration will be cleared when
51 + * the interface goes down.
52 + */
53 +
54 +/**
55 * enum nl80211_commands - supported nl80211 commands
56 *
57 * @NL80211_CMD_UNSPEC: unspecified command to catch errors
58 @@ -571,6 +610,14 @@
59 * set of BSSID,frequency parameters is used (i.e., either the enforcing
60 * %NL80211_ATTR_MAC,%NL80211_ATTR_WIPHY_FREQ or the less strict
61 * %NL80211_ATTR_MAC_HINT and %NL80211_ATTR_WIPHY_FREQ_HINT).
62 + * Driver shall not modify the IEs specified through %NL80211_ATTR_IE if
63 + * %NL80211_ATTR_MAC is included. However, if %NL80211_ATTR_MAC_HINT is
64 + * included, these IEs through %NL80211_ATTR_IE are specified by the user
65 + * space based on the best possible BSS selected. Thus, if the driver ends
66 + * up selecting a different BSS, it can modify these IEs accordingly (e.g.
67 + * userspace asks the driver to perform PMKSA caching with BSS1 and the
68 + * driver ends up selecting BSS2 with different PMKSA cache entry; RSNIE
69 + * has to get updated with the apt PMKID).
70 * %NL80211_ATTR_PREV_BSSID can be used to request a reassociation within
71 * the ESS in case the device is already associated and an association with
72 * a different BSS is desired.
73 @@ -1101,6 +1148,9 @@
74 * peer MAC address and %NL80211_ATTR_FRAME is used to specify the frame
75 * content. The frame is ethernet data.
76 *
77 + * @NL80211_CMD_SET_TID_CONFIG: Data frame TID specific configuration
78 + * is passed using %NL80211_ATTR_TID_CONFIG attribute.
79 + *
80 * @NL80211_CMD_MAX: highest used command number
81 * @__NL80211_CMD_AFTER_LAST: internal use
82 */
83 @@ -1325,6 +1375,8 @@ enum nl80211_commands {
84
85 NL80211_CMD_PROBE_MESH_LINK,
86
87 + NL80211_CMD_SET_TID_CONFIG,
88 +
89 /* add new commands above here */
90
91 /* used to define NL80211_CMD_MAX below */
92 @@ -1580,7 +1632,8 @@ enum nl80211_commands {
93 * flag is included, then control port frames are sent over NL80211 instead
94 * using %CMD_CONTROL_PORT_FRAME. If control port routing over NL80211 is
95 * to be used then userspace must also use the %NL80211_ATTR_SOCKET_OWNER
96 - * flag.
97 + * flag. When used with %NL80211_ATTR_CONTROL_PORT_NO_PREAUTH, pre-auth
98 + * frames are not forwared over the control port.
99 *
100 * @NL80211_ATTR_TESTDATA: Testmode data blob, passed through to the driver.
101 * We recommend using nested, driver-specific attributes within this.
102 @@ -2373,6 +2426,53 @@ enum nl80211_commands {
103 * the allowed channel bandwidth configurations. (u8 attribute)
104 * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13.
105 *
106 + * @NL80211_ATTR_VLAN_ID: VLAN ID (1..4094) for the station and VLAN group key
107 + * (u16).
108 + *
109 + * @NL80211_ATTR_HE_BSS_COLOR: nested attribute for BSS Color Settings.
110 + *
111 + * @NL80211_ATTR_IFTYPE_AKM_SUITES: nested array attribute, with each entry
112 + * using attributes from &enum nl80211_iftype_akm_attributes. This
113 + * attribute is sent in a response to %NL80211_CMD_GET_WIPHY indicating
114 + * supported AKM suites capability per interface. AKMs advertised in
115 + * %NL80211_ATTR_AKM_SUITES are default capabilities if AKM suites not
116 + * advertised for a specific interface type.
117 + *
118 + * @NL80211_ATTR_TID_CONFIG: TID specific configuration in a
119 + * nested attribute with &enum nl80211_tid_config_attr sub-attributes;
120 + * on output (in wiphy attributes) it contains only the feature sub-
121 + * attributes.
122 + *
123 + * @NL80211_ATTR_CONTROL_PORT_NO_PREAUTH: disable preauth frame rx on control
124 + * port in order to forward/receive them as ordinary data frames.
125 + *
126 + * @NL80211_ATTR_PMK_LIFETIME: Maximum lifetime for PMKSA in seconds (u32,
127 + * dot11RSNAConfigPMKReauthThreshold; 0 is not a valid value).
128 + * An optional parameter configured through %NL80211_CMD_SET_PMKSA.
129 + * Drivers that trigger roaming need to know the lifetime of the
130 + * configured PMKSA for triggering the full vs. PMKSA caching based
131 + * authentication. This timeout helps authentication methods like SAE,
132 + * where PMK gets updated only by going through a full (new SAE)
133 + * authentication instead of getting updated during an association for EAP
134 + * authentication. No new full authentication within the PMK expiry shall
135 + * result in a disassociation at the end of the lifetime.
136 + *
137 + * @NL80211_ATTR_PMK_REAUTH_THRESHOLD: Reauthentication threshold time, in
138 + * terms of percentage of %NL80211_ATTR_PMK_LIFETIME
139 + * (u8, dot11RSNAConfigPMKReauthThreshold, 1..100). This is an optional
140 + * parameter configured through %NL80211_CMD_SET_PMKSA. Requests the
141 + * driver to trigger a full authentication roam (without PMKSA caching)
142 + * after the reauthentication threshold time, but before the PMK lifetime
143 + * has expired.
144 + *
145 + * Authentication methods like SAE need to be able to generate a new PMKSA
146 + * entry without having to force a disconnection after the PMK timeout. If
147 + * no roaming occurs between the reauth threshold and PMK expiration,
148 + * disassociation is still forced.
149 + *
150 + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce
151 + * transmit power to stay within regulatory limits. u32, dBi.
152 + *
153 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
154 * @NL80211_ATTR_MAX: highest attribute number currently defined
155 * @__NL80211_ATTR_AFTER_LAST: internal use
156 @@ -2835,6 +2935,21 @@ enum nl80211_attrs {
157 NL80211_ATTR_WIPHY_EDMG_CHANNELS,
158 NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
159
160 + NL80211_ATTR_VLAN_ID,
161 +
162 + NL80211_ATTR_HE_BSS_COLOR,
163 +
164 + NL80211_ATTR_IFTYPE_AKM_SUITES,
165 +
166 + NL80211_ATTR_TID_CONFIG,
167 +
168 + NL80211_ATTR_CONTROL_PORT_NO_PREAUTH,
169 +
170 + NL80211_ATTR_PMK_LIFETIME,
171 + NL80211_ATTR_PMK_REAUTH_THRESHOLD,
172 +
173 + NL80211_ATTR_WIPHY_ANTENNA_GAIN,
174 +
175 /* add attributes here, update the policy in nl80211.c */
176
177 __NL80211_ATTR_AFTER_LAST,
178 @@ -3554,6 +3669,8 @@ enum nl80211_wmm_rule {
179 * @NL80211_FREQUENCY_ATTR_WMM: this channel has wmm limitations.
180 * This is a nested attribute that contains the wmm limitation per AC.
181 * (see &enum nl80211_wmm_rule)
182 + * @NL80211_FREQUENCY_ATTR_NO_HE: HE operation is not allowed on this channel
183 + * in current regulatory domain.
184 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
185 * currently defined
186 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
187 @@ -3583,6 +3700,7 @@ enum nl80211_frequency_attr {
188 NL80211_FREQUENCY_ATTR_NO_20MHZ,
189 NL80211_FREQUENCY_ATTR_NO_10MHZ,
190 NL80211_FREQUENCY_ATTR_WMM,
191 + NL80211_FREQUENCY_ATTR_NO_HE,
192
193 /* keep last */
194 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
195 @@ -3780,6 +3898,7 @@ enum nl80211_sched_scan_match_attr {
196 * @NL80211_RRF_NO_HT40PLUS: channels can't be used in HT40+ operation
197 * @NL80211_RRF_NO_80MHZ: 80MHz operation not allowed
198 * @NL80211_RRF_NO_160MHZ: 160MHz operation not allowed
199 + * @NL80211_RRF_NO_HE: HE operation not allowed
200 */
201 enum nl80211_reg_rule_flags {
202 NL80211_RRF_NO_OFDM = 1<<0,
203 @@ -3797,6 +3916,7 @@ enum nl80211_reg_rule_flags {
204 NL80211_RRF_NO_HT40PLUS = 1<<14,
205 NL80211_RRF_NO_80MHZ = 1<<15,
206 NL80211_RRF_NO_160MHZ = 1<<16,
207 + NL80211_RRF_NO_HE = 1<<17,
208 };
209
210 #define NL80211_RRF_PASSIVE_SCAN NL80211_RRF_NO_IR
211 @@ -4503,6 +4623,7 @@ enum nl80211_key_default_types {
212 * See &enum nl80211_key_default_types.
213 * @NL80211_KEY_MODE: the mode from enum nl80211_key_mode.
214 * Defaults to @NL80211_KEY_RX_TX.
215 + * @NL80211_KEY_DEFAULT_BEACON: flag indicating default Beacon frame key
216 *
217 * @__NL80211_KEY_AFTER_LAST: internal
218 * @NL80211_KEY_MAX: highest key attribute
219 @@ -4518,6 +4639,7 @@ enum nl80211_key_attributes {
220 NL80211_KEY_TYPE,
221 NL80211_KEY_DEFAULT_TYPES,
222 NL80211_KEY_MODE,
223 + NL80211_KEY_DEFAULT_BEACON,
224
225 /* keep last */
226 __NL80211_KEY_AFTER_LAST,
227 @@ -4674,6 +4796,69 @@ enum nl80211_tx_power_setting {
228 };
229
230 /**
231 + * enum nl80211_tid_config - TID config state
232 + * @NL80211_TID_CONFIG_ENABLE: Enable config for the TID
233 + * @NL80211_TID_CONFIG_DISABLE: Disable config for the TID
234 + */
235 +enum nl80211_tid_config {
236 + NL80211_TID_CONFIG_ENABLE,
237 + NL80211_TID_CONFIG_DISABLE,
238 +};
239 +
240 +/* enum nl80211_tid_config_attr - TID specific configuration.
241 + * @NL80211_TID_CONFIG_ATTR_PAD: pad attribute for 64-bit values
242 + * @NL80211_TID_CONFIG_ATTR_VIF_SUPP: a bitmap (u64) of attributes supported
243 + * for per-vif configuration; doesn't list the ones that are generic
244 + * (%NL80211_TID_CONFIG_ATTR_TIDS, %NL80211_TID_CONFIG_ATTR_OVERRIDE).
245 + * @NL80211_TID_CONFIG_ATTR_PEER_SUPP: same as the previous per-vif one, but
246 + * per peer instead.
247 + * @NL80211_TID_CONFIG_ATTR_OVERRIDE: flag attribue, if no peer
248 + * is selected, if set indicates that the new configuration overrides
249 + * all previous peer configurations, otherwise previous peer specific
250 + * configurations should be left untouched. If peer is selected then
251 + * it will reset particular TID configuration of that peer and it will
252 + * not accept other TID config attributes along with peer.
253 + * @NL80211_TID_CONFIG_ATTR_TIDS: a bitmask value of TIDs (bit 0 to 7)
254 + * Its type is u16.
255 + * @NL80211_TID_CONFIG_ATTR_NOACK: Configure ack policy for the TID.
256 + * specified in %NL80211_TID_CONFIG_ATTR_TID. see %enum nl80211_tid_config.
257 + * Its type is u8.
258 + * @NL80211_TID_CONFIG_ATTR_RETRY_SHORT: Number of retries used with data frame
259 + * transmission, user-space sets this configuration in
260 + * &NL80211_CMD_SET_TID_CONFIG. It is u8 type, min value is 1 and
261 + * the max value is advertised by the driver in this attribute on
262 + * output in wiphy capabilities.
263 + * @NL80211_TID_CONFIG_ATTR_RETRY_LONG: Number of retries used with data frame
264 + * transmission, user-space sets this configuration in
265 + * &NL80211_CMD_SET_TID_CONFIG. Its type is u8, min value is 1 and
266 + * the max value is advertised by the driver in this attribute on
267 + * output in wiphy capabilities.
268 + * @NL80211_TID_CONFIG_ATTR_AMPDU_CTRL: Enable/Disable aggregation for the TIDs
269 + * specified in %NL80211_TID_CONFIG_ATTR_TIDS. Its type is u8, using
270 + * the values from &nl80211_tid_config.
271 + * @NL80211_TID_CONFIG_ATTR_RTSCTS_CTRL: Enable/Disable RTS_CTS for the TIDs
272 + * specified in %NL80211_TID_CONFIG_ATTR_TIDS. It is u8 type, using
273 + * the values from &nl80211_tid_config.
274 + */
275 +enum nl80211_tid_config_attr {
276 + __NL80211_TID_CONFIG_ATTR_INVALID,
277 + NL80211_TID_CONFIG_ATTR_PAD,
278 + NL80211_TID_CONFIG_ATTR_VIF_SUPP,
279 + NL80211_TID_CONFIG_ATTR_PEER_SUPP,
280 + NL80211_TID_CONFIG_ATTR_OVERRIDE,
281 + NL80211_TID_CONFIG_ATTR_TIDS,
282 + NL80211_TID_CONFIG_ATTR_NOACK,
283 + NL80211_TID_CONFIG_ATTR_RETRY_SHORT,
284 + NL80211_TID_CONFIG_ATTR_RETRY_LONG,
285 + NL80211_TID_CONFIG_ATTR_AMPDU_CTRL,
286 + NL80211_TID_CONFIG_ATTR_RTSCTS_CTRL,
287 +
288 + /* keep last */
289 + __NL80211_TID_CONFIG_ATTR_AFTER_LAST,
290 + NL80211_TID_CONFIG_ATTR_MAX = __NL80211_TID_CONFIG_ATTR_AFTER_LAST - 1
291 +};
292 +
293 +/**
294 * enum nl80211_packet_pattern_attr - packet pattern attribute
295 * @__NL80211_PKTPAT_INVALID: invalid number for nested attribute
296 * @NL80211_PKTPAT_PATTERN: the pattern, values where the mask has
297 @@ -5484,6 +5669,26 @@ enum nl80211_feature_flags {
298 * @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in
299 * station mode (SAE password is passed as part of the connect command).
300 *
301 + * @NL80211_EXT_FEATURE_VLAN_OFFLOAD: The driver supports a single netdev
302 + * with VLAN tagged frames and separate VLAN-specific netdevs added using
303 + * vconfig similarly to the Ethernet case.
304 + *
305 + * @NL80211_EXT_FEATURE_AQL: The driver supports the Airtime Queue Limit (AQL)
306 + * feature, which prevents bufferbloat by using the expected transmission
307 + * time to limit the amount of data buffered in the hardware.
308 + *
309 + * @NL80211_EXT_FEATURE_BEACON_PROTECTION: The driver supports Beacon protection
310 + * and can receive key configuration for BIGTK using key indexes 6 and 7.
311 + *
312 + * @NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH: The driver can disable the
313 + * forwarding of preauth frames over the control port. They are then
314 + * handled as ordinary data frames.
315 + *
316 + * @NL80211_EXT_FEATURE_PROTECTED_TWT: Driver supports protected TWT frames
317 + *
318 + * @NL80211_EXT_FEATURE_DEL_IBSS_STA: The driver supports removing stations
319 + * in IBSS mode, essentially by dropping their state.
320 + *
321 * @NUM_NL80211_EXT_FEATURES: number of extended features.
322 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
323 */
324 @@ -5529,6 +5734,12 @@ enum nl80211_ext_feature_index {
325 NL80211_EXT_FEATURE_EXT_KEY_ID,
326 NL80211_EXT_FEATURE_STA_TX_PWR,
327 NL80211_EXT_FEATURE_SAE_OFFLOAD,
328 + NL80211_EXT_FEATURE_VLAN_OFFLOAD,
329 + NL80211_EXT_FEATURE_AQL,
330 + NL80211_EXT_FEATURE_BEACON_PROTECTION,
331 + NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH,
332 + NL80211_EXT_FEATURE_PROTECTED_TWT,
333 + NL80211_EXT_FEATURE_DEL_IBSS_STA,
334
335 /* add new features before the definition below */
336 NUM_NL80211_EXT_FEATURES,
337 @@ -6151,12 +6362,14 @@ enum nl80211_ftm_responder_stats {
338 * @NL80211_PREAMBLE_HT: HT preamble
339 * @NL80211_PREAMBLE_VHT: VHT preamble
340 * @NL80211_PREAMBLE_DMG: DMG preamble
341 + * @NL80211_PREAMBLE_HE: HE preamble
342 */
343 enum nl80211_preamble {
344 NL80211_PREAMBLE_LEGACY,
345 NL80211_PREAMBLE_HT,
346 NL80211_PREAMBLE_VHT,
347 NL80211_PREAMBLE_DMG,
348 + NL80211_PREAMBLE_HE,
349 };
350
351 /**
352 @@ -6349,6 +6562,10 @@ enum nl80211_peer_measurement_attrs {
353 * is valid)
354 * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_FTMS_PER_BURST: u32 attribute indicating
355 * the maximum FTMs per burst (if not present anything is valid)
356 + * @NL80211_PMSR_FTM_CAPA_ATTR_TRIGGER_BASED: flag attribute indicating if
357 + * trigger based ranging measurement is supported
358 + * @NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED: flag attribute indicating
359 + * if non trigger based ranging measurement is supported
360 *
361 * @NUM_NL80211_PMSR_FTM_CAPA_ATTR: internal
362 * @NL80211_PMSR_FTM_CAPA_ATTR_MAX: highest attribute number
363 @@ -6364,6 +6581,8 @@ enum nl80211_peer_measurement_ftm_capa {
364 NL80211_PMSR_FTM_CAPA_ATTR_BANDWIDTHS,
365 NL80211_PMSR_FTM_CAPA_ATTR_MAX_BURSTS_EXPONENT,
366 NL80211_PMSR_FTM_CAPA_ATTR_MAX_FTMS_PER_BURST,
367 + NL80211_PMSR_FTM_CAPA_ATTR_TRIGGER_BASED,
368 + NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED,
369
370 /* keep last */
371 NUM_NL80211_PMSR_FTM_CAPA_ATTR,
372 @@ -6393,6 +6612,20 @@ enum nl80211_peer_measurement_ftm_capa {
373 * @NL80211_PMSR_FTM_REQ_ATTR_REQUEST_LCI: request LCI data (flag)
374 * @NL80211_PMSR_FTM_REQ_ATTR_REQUEST_CIVICLOC: request civic location data
375 * (flag)
376 + * @NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED: request trigger based ranging
377 + * measurement (flag).
378 + * This attribute and %NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED are
379 + * mutually exclusive.
380 + * if neither %NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED nor
381 + * %NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED is set, EDCA based
382 + * ranging will be used.
383 + * @NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED: request non trigger based
384 + * ranging measurement (flag)
385 + * This attribute and %NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED are
386 + * mutually exclusive.
387 + * if neither %NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED nor
388 + * %NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED is set, EDCA based
389 + * ranging will be used.
390 *
391 * @NUM_NL80211_PMSR_FTM_REQ_ATTR: internal
392 * @NL80211_PMSR_FTM_REQ_ATTR_MAX: highest attribute number
393 @@ -6409,6 +6642,8 @@ enum nl80211_peer_measurement_ftm_req {
394 NL80211_PMSR_FTM_REQ_ATTR_NUM_FTMR_RETRIES,
395 NL80211_PMSR_FTM_REQ_ATTR_REQUEST_LCI,
396 NL80211_PMSR_FTM_REQ_ATTR_REQUEST_CIVICLOC,
397 + NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED,
398 + NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED,
399
400 /* keep last */
401 NUM_NL80211_PMSR_FTM_REQ_ATTR,
402 @@ -6548,5 +6783,51 @@ enum nl80211_obss_pd_attributes {
403 NL80211_HE_OBSS_PD_ATTR_MAX = __NL80211_HE_OBSS_PD_ATTR_LAST - 1,
404 };
405
406 +/**
407 + * enum nl80211_bss_color_attributes - BSS Color attributes
408 + * @__NL80211_HE_BSS_COLOR_ATTR_INVALID: Invalid
409 + *
410 + * @NL80211_HE_BSS_COLOR_ATTR_COLOR: the current BSS Color.
411 + * @NL80211_HE_BSS_COLOR_ATTR_DISABLED: is BSS coloring disabled.
412 + * @NL80211_HE_BSS_COLOR_ATTR_PARTIAL: the AID equation to be used..
413 + *
414 + * @__NL80211_HE_BSS_COLOR_ATTR_LAST: Internal
415 + * @NL80211_HE_BSS_COLOR_ATTR_MAX: highest BSS Color attribute.
416 + */
417 +enum nl80211_bss_color_attributes {
418 + __NL80211_HE_BSS_COLOR_ATTR_INVALID,
419 +
420 + NL80211_HE_BSS_COLOR_ATTR_COLOR,
421 + NL80211_HE_BSS_COLOR_ATTR_DISABLED,
422 + NL80211_HE_BSS_COLOR_ATTR_PARTIAL,
423 +
424 + /* keep last */
425 + __NL80211_HE_BSS_COLOR_ATTR_LAST,
426 + NL80211_HE_BSS_COLOR_ATTR_MAX = __NL80211_HE_BSS_COLOR_ATTR_LAST - 1,
427 +};
428 +
429 +/**
430 + * enum nl80211_iftype_akm_attributes - interface type AKM attributes
431 + * @__NL80211_IFTYPE_AKM_ATTR_INVALID: Invalid
432 + *
433 + * @NL80211_IFTYPE_AKM_ATTR_IFTYPES: nested attribute containing a flag
434 + * attribute for each interface type that supports AKM suites specified in
435 + * %NL80211_IFTYPE_AKM_ATTR_SUITES
436 + * @NL80211_IFTYPE_AKM_ATTR_SUITES: an array of u32. Used to indicate supported
437 + * AKM suites for the specified interface types.
438 + *
439 + * @__NL80211_IFTYPE_AKM_ATTR_LAST: Internal
440 + * @NL80211_IFTYPE_AKM_ATTR_MAX: highest interface type AKM attribute.
441 + */
442 +enum nl80211_iftype_akm_attributes {
443 + __NL80211_IFTYPE_AKM_ATTR_INVALID,
444 +
445 + NL80211_IFTYPE_AKM_ATTR_IFTYPES,
446 + NL80211_IFTYPE_AKM_ATTR_SUITES,
447 +
448 + /* keep last */
449 + __NL80211_IFTYPE_AKM_ATTR_LAST,
450 + NL80211_IFTYPE_AKM_ATTR_MAX = __NL80211_IFTYPE_AKM_ATTR_LAST - 1,
451 +};
452
453 #endif /* __LINUX_NL80211_H */