mac80211: backport the txq scheduling / airtime fairness API
[openwrt/staging/dedeckeh.git] / package / network / utils / iw / patches / 001-nl80211_h_sync.patch
index e20484ac2fe76af3c54e508eff339fea881b2173..5f15684d30eea6a060c4f7d727de73abb4830b9b 100644 (file)
@@ -1,32 +1,45 @@
 --- a/nl80211.h
 +++ b/nl80211.h
-@@ -1724,8 +1724,7 @@ enum nl80211_attrs {
-       NL80211_ATTR_MDID,
-       NL80211_ATTR_IE_RIC,
+@@ -2299,6 +2299,12 @@ enum nl80211_commands {
+  *    This is also used for capability advertisement in the wiphy information,
+  *    with the appropriate sub-attributes.
+  *
++ * @NL80211_ATTR_AIRTIME_WEIGHT: Station's weight when scheduled by the airtime
++ *    scheduler.
++ *
++ * @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
+@@ -2748,6 +2754,10 @@ enum nl80211_attrs {
  
--      NL80211_ATTR_CRIT_PROT_ID,
--      NL80211_ATTR_MAX_CRIT_PROT_DURATION,
-+      NL80211_ATTR_WIPHY_ANTENNA_GAIN,
+       NL80211_ATTR_PEER_MEASUREMENTS,
  
++      NL80211_ATTR_AIRTIME_WEIGHT,
++
++      NL80211_ATTR_WIPHY_ANTENNA_GAIN,
++
        /* add attributes here, update the policy in nl80211.c */
  
-@@ -1991,6 +1990,10 @@ enum nl80211_sta_bss_param {
-  * @NL80211_STA_INFO_PEER_PM: peer mesh STA link-specific power mode
-  * @NL80211_STA_INFO_NONPEER_PM: neighbor mesh STA power save mode towards
-  *    non-peer STA
-+ * @NL80211_STA_INFO_CHAIN_SIGNAL: per-chain signal strength of last PPDU
-+ *    Contains a nested array of signal strength attributes (u8, dBm)
-+ * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average
-+ *    Same format as NL80211_STA_INFO_CHAIN_SIGNAL.
+       __NL80211_ATTR_AFTER_LAST,
+@@ -3125,6 +3135,9 @@ enum nl80211_sta_bss_param {
+  *    might not be fully accurate.
+  * @NL80211_STA_INFO_CONNECTED_TO_GATE: set to true if STA has a path to a
+  *    mesh gate (u8, 0 or 1)
++ * @NL80211_STA_INFO_TX_DURATION: aggregate PPDU duration for all frames
++ *    sent to the station (u64, usec)
++ * @NL80211_STA_INFO_AIRTIME_WEIGHT: current airtime weight for station (u16)
   * @__NL80211_STA_INFO_AFTER_LAST: internal
   * @NL80211_STA_INFO_MAX: highest possible station info attribute
   */
-@@ -2020,6 +2023,8 @@ enum nl80211_sta_info {
-       NL80211_STA_INFO_NONPEER_PM,
-       NL80211_STA_INFO_RX_BYTES64,
-       NL80211_STA_INFO_TX_BYTES64,
-+      NL80211_STA_INFO_CHAIN_SIGNAL,
-+      NL80211_STA_INFO_CHAIN_SIGNAL_AVG,
+@@ -3168,6 +3181,8 @@ enum nl80211_sta_info {
+       NL80211_STA_INFO_RX_MPDUS,
+       NL80211_STA_INFO_FCS_ERROR_COUNT,
+       NL80211_STA_INFO_CONNECTED_TO_GATE,
++      NL80211_STA_INFO_TX_DURATION,
++      NL80211_STA_INFO_AIRTIME_WEIGHT,
  
        /* keep last */
        __NL80211_STA_INFO_AFTER_LAST,