mac80211: Update to version 5.5.19
[oweals/openwrt.git] / package / network / utils / iw / patches / 001-nl80211_h_sync.patch
1 --- a/nl80211.h
2 +++ b/nl80211.h
3 @@ -249,6 +249,22 @@
4   */
5  
6  /**
7 + * DOC: VLAN offload support for setting group keys and binding STAs to VLANs
8 + *
9 + * By setting @NL80211_EXT_FEATURE_VLAN_OFFLOAD flag drivers can indicate they
10 + * support offloading VLAN functionality in a manner where the driver exposes a
11 + * single netdev that uses VLAN tagged frames and separate VLAN-specific netdevs
12 + * can then be added using RTM_NEWLINK/IFLA_VLAN_ID similarly to the Ethernet
13 + * case. Frames received from stations that are not assigned to any VLAN are
14 + * delivered on the main netdev and frames to such stations can be sent through
15 + * that main netdev.
16 + *
17 + * %NL80211_CMD_NEW_KEY (for group keys), %NL80211_CMD_NEW_STATION, and
18 + * %NL80211_CMD_SET_STATION will optionally specify vlan_id using
19 + * %NL80211_ATTR_VLAN_ID.
20 + */
21 +
22 +/**
23   * enum nl80211_commands - supported nl80211 commands
24   *
25   * @NL80211_CMD_UNSPEC: unspecified command to catch errors
26 @@ -571,6 +587,14 @@
27   *     set of BSSID,frequency parameters is used (i.e., either the enforcing
28   *     %NL80211_ATTR_MAC,%NL80211_ATTR_WIPHY_FREQ or the less strict
29   *     %NL80211_ATTR_MAC_HINT and %NL80211_ATTR_WIPHY_FREQ_HINT).
30 + *     Driver shall not modify the IEs specified through %NL80211_ATTR_IE if
31 + *     %NL80211_ATTR_MAC is included. However, if %NL80211_ATTR_MAC_HINT is
32 + *     included, these IEs through %NL80211_ATTR_IE are specified by the user
33 + *     space based on the best possible BSS selected. Thus, if the driver ends
34 + *     up selecting a different BSS, it can modify these IEs accordingly (e.g.
35 + *     userspace asks the driver to perform PMKSA caching with BSS1 and the
36 + *     driver ends up selecting BSS2 with different PMKSA cache entry; RSNIE
37 + *     has to get updated with the apt PMKID).
38   *     %NL80211_ATTR_PREV_BSSID can be used to request a reassociation within
39   *     the ESS in case the device is already associated and an association with
40   *     a different BSS is desired.
41 @@ -2373,6 +2397,12 @@ enum nl80211_commands {
42   *     the allowed channel bandwidth configurations. (u8 attribute)
43   *     Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13.
44   *
45 + * @NL80211_ATTR_VLAN_ID: VLAN ID (1..4094) for the station and VLAN group key
46 + *     (u16).
47 + *
48 + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce
49 + *     transmit power to stay within regulatory limits. u32, dBi.
50 + *
51   * @NUM_NL80211_ATTR: total number of nl80211_attrs available
52   * @NL80211_ATTR_MAX: highest attribute number currently defined
53   * @__NL80211_ATTR_AFTER_LAST: internal use
54 @@ -2835,6 +2865,10 @@ enum nl80211_attrs {
55         NL80211_ATTR_WIPHY_EDMG_CHANNELS,
56         NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
57  
58 +       NL80211_ATTR_VLAN_ID,
59 +
60 +       NL80211_ATTR_WIPHY_ANTENNA_GAIN,
61 +
62         /* add attributes here, update the policy in nl80211.c */
63  
64         __NL80211_ATTR_AFTER_LAST,
65 @@ -5484,6 +5518,14 @@ enum nl80211_feature_flags {
66   * @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in
67   *     station mode (SAE password is passed as part of the connect command).
68   *
69 + * @NL80211_EXT_FEATURE_VLAN_OFFLOAD: The driver supports a single netdev
70 + *     with VLAN tagged frames and separate VLAN-specific netdevs added using
71 + *     vconfig similarly to the Ethernet case.
72 + *
73 + * @NL80211_EXT_FEATURE_AQL: The driver supports the Airtime Queue Limit (AQL)
74 + *     feature, which prevents bufferbloat by using the expected transmission
75 + *     time to limit the amount of data buffered in the hardware.
76 + *
77   * @NUM_NL80211_EXT_FEATURES: number of extended features.
78   * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
79   */
80 @@ -5529,6 +5571,8 @@ enum nl80211_ext_feature_index {
81         NL80211_EXT_FEATURE_EXT_KEY_ID,
82         NL80211_EXT_FEATURE_STA_TX_PWR,
83         NL80211_EXT_FEATURE_SAE_OFFLOAD,
84 +       NL80211_EXT_FEATURE_VLAN_OFFLOAD,
85 +       NL80211_EXT_FEATURE_AQL,
86  
87         /* add new features before the definition below */
88         NUM_NL80211_EXT_FEATURES,