mac80211: Update to version 5.5.19
[openwrt/openwrt.git] / package / network / utils / iw / patches / 001-nl80211_h_sync.patch
index 6b65f61846afeedd1f10e62c42fbd73feb12645e..57f05b711adfce8feb3413735962d74dea60652c 100644 (file)
@@ -1,28 +1,75 @@
 --- a/nl80211.h
 +++ b/nl80211.h
-@@ -2373,6 +2373,9 @@ enum nl80211_commands {
+@@ -249,6 +249,22 @@
+  */
+ /**
++ * 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
+  *
+  * @NL80211_CMD_UNSPEC: unspecified command to catch errors
+@@ -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,12 @@ 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).
++ *
 + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce
 + *    transmit power to stay within regulatory limits. u32, dBi.
 + *
   * @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 +2838,8 @@ enum nl80211_attrs {
+@@ -2835,6 +2865,10 @@ enum nl80211_attrs {
        NL80211_ATTR_WIPHY_EDMG_CHANNELS,
        NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
  
++      NL80211_ATTR_VLAN_ID,
++
 +      NL80211_ATTR_WIPHY_ANTENNA_GAIN,
 +
        /* add attributes here, update the policy in nl80211.c */
  
        __NL80211_ATTR_AFTER_LAST,
-@@ -5484,6 +5489,10 @@ enum nl80211_feature_flags {
+@@ -5484,6 +5518,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.
@@ -30,7 +77,7 @@
   * @NUM_NL80211_EXT_FEATURES: number of extended features.
   * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
   */
-@@ -5529,6 +5538,8 @@ enum nl80211_ext_feature_index {
+@@ -5529,6 +5571,8 @@ enum nl80211_ext_feature_index {
        NL80211_EXT_FEATURE_EXT_KEY_ID,
        NL80211_EXT_FEATURE_STA_TX_PWR,
        NL80211_EXT_FEATURE_SAE_OFFLOAD,