| From e9b59588f451c40ec766071e3388ea91d2e559fa Mon Sep 17 00:00:00 2001 |
| From: Johannes Berg <johannes.berg@intel.com> |
| Date: Wed, 15 Jan 2020 11:05:10 +0100 |
| Subject: [PATCH] iw: update nl80211.h |
| |
| Change-Id: I3b5b124f7d2985b9dc6f9481408bd412e50c0b5b |
| Signed-off-by: Johannes Berg <johannes.berg@intel.com> |
| --- |
| commit e9b59588f451c40ec766071e3388ea91d2e559fa upstream |
| |
| nl80211.h | 39 +++++++++++++++++++++++++++++++++++++++ |
| 1 file changed, 39 insertions(+) |
| |
| diff --git a/nl80211.h b/nl80211.h |
| index beee59c831a7..5eab191607f8 100644 |
| --- a/nl80211.h |
| +++ b/nl80211.h |
| @@ -248,6 +248,22 @@ |
| * %NL80211_ATTR_SAE_PASSWORD. |
| */ |
| |
| +/** |
| + * DOC: VLAN offload support for setting group keys and binding STAs to VLANs |
| + * |
| + * By setting @NL80211_EXT_FEATURE_VLAN_OFFLOAD flag drivers can indicate they |
| + * support offloading VLAN functionality in a manner where the driver exposes a |
| + * single netdev that uses VLAN tagged frames and separate VLAN-specific netdevs |
| + * can then be added using RTM_NEWLINK/IFLA_VLAN_ID similarly to the Ethernet |
| + * case. Frames received from stations that are not assigned to any VLAN are |
| + * delivered on the main netdev and frames to such stations can be sent through |
| + * that main netdev. |
| + * |
| + * %NL80211_CMD_NEW_KEY (for group keys), %NL80211_CMD_NEW_STATION, and |
| + * %NL80211_CMD_SET_STATION will optionally specify vlan_id using |
| + * %NL80211_ATTR_VLAN_ID. |
| + */ |
| + |
| /** |
| * enum nl80211_commands - supported nl80211 commands |
| * |
| @@ -571,6 +587,14 @@ |
| * set of BSSID,frequency parameters is used (i.e., either the enforcing |
| * %NL80211_ATTR_MAC,%NL80211_ATTR_WIPHY_FREQ or the less strict |
| * %NL80211_ATTR_MAC_HINT and %NL80211_ATTR_WIPHY_FREQ_HINT). |
| + * Driver shall not modify the IEs specified through %NL80211_ATTR_IE if |
| + * %NL80211_ATTR_MAC is included. However, if %NL80211_ATTR_MAC_HINT is |
| + * included, these IEs through %NL80211_ATTR_IE are specified by the user |
| + * space based on the best possible BSS selected. Thus, if the driver ends |
| + * up selecting a different BSS, it can modify these IEs accordingly (e.g. |
| + * userspace asks the driver to perform PMKSA caching with BSS1 and the |
| + * driver ends up selecting BSS2 with different PMKSA cache entry; RSNIE |
| + * has to get updated with the apt PMKID). |
| * %NL80211_ATTR_PREV_BSSID can be used to request a reassociation within |
| * the ESS in case the device is already associated and an association with |
| * a different BSS is desired. |
| @@ -2373,6 +2397,9 @@ enum nl80211_commands { |
| * the allowed channel bandwidth configurations. (u8 attribute) |
| * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13. |
| * |
| + * @NL80211_ATTR_VLAN_ID: VLAN ID (1..4094) for the station and VLAN group key |
| + * (u16). |
| + * |
| * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| * @NL80211_ATTR_MAX: highest attribute number currently defined |
| * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2835,6 +2862,8 @@ enum nl80211_attrs { |
| NL80211_ATTR_WIPHY_EDMG_CHANNELS, |
| NL80211_ATTR_WIPHY_EDMG_BW_CONFIG, |
| |
| + NL80211_ATTR_VLAN_ID, |
| + |
| /* add attributes here, update the policy in nl80211.c */ |
| |
| __NL80211_ATTR_AFTER_LAST, |
| @@ -5484,6 +5513,14 @@ enum nl80211_feature_flags { |
| * @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in |
| * station mode (SAE password is passed as part of the connect command). |
| * |
| + * @NL80211_EXT_FEATURE_VLAN_OFFLOAD: The driver supports a single netdev |
| + * with VLAN tagged frames and separate VLAN-specific netdevs added using |
| + * vconfig similarly to the Ethernet case. |
| + * |
| + * @NL80211_EXT_FEATURE_AQL: The driver supports the Airtime Queue Limit (AQL) |
| + * feature, which prevents bufferbloat by using the expected transmission |
| + * time to limit the amount of data buffered in the hardware. |
| + * |
| * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| */ |
| @@ -5529,6 +5566,8 @@ enum nl80211_ext_feature_index { |
| NL80211_EXT_FEATURE_EXT_KEY_ID, |
| NL80211_EXT_FEATURE_STA_TX_PWR, |
| NL80211_EXT_FEATURE_SAE_OFFLOAD, |
| + NL80211_EXT_FEATURE_VLAN_OFFLOAD, |
| + NL80211_EXT_FEATURE_AQL, |
| |
| /* add new features before the definition below */ |
| NUM_NL80211_EXT_FEATURES, |
| -- |
| 2.26.0.292.g33ef6b2f38-goog |
| |