History

Merge tag 'mac80211-next-for-davem-2018-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next

Johannes Berg says: For this round, we have various things all over the place, notably * a fix for a race in aggregation, which I want to let bake for a bit longer before sending to stable * some new statistics (ACK RSSI, TXQ) * TXQ configuration * preparations for HE, particularly radiotap * replace confusing "country IE" by "country element" since it's not referring to Ireland Note that I merged net-next to get a fix from mac80211 that got there via net, to apply one patch that would otherwise conflict. ====================

David S. Miller committed 8 years ago

Commit 5ee6ad22 parents 5a867ab bad292928 files · +968 −180Browse files

Showing the changes to include/uapi/linux (1 of 28 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+97−2
@@ -11,6 +11,7 @@ · 10 unmodified lines
1111 * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>
1212 * Copyright 2008 Colin McCabe <colin@cozybit.com>
1313 * Copyright 2015-2017 Intel Deutschland GmbH
14+ * Copyright (C) 2018 Intel Corporation
1415 *
1516 * Permission to use, copy, modify, and/or distribute this software for any
1617 * purpose with or without fee is hereby granted, provided that the above
@@ -203,7 +204,8 @@ · 186 unmodified lines
203204 * FILS shared key authentication offload should be able to construct the
204205 * authentication and association frames for FILS shared key authentication and
205206 * eventually do a key derivation as per IEEE 802.11ai. The below additional
206− * parameters should be given to driver in %NL80211_CMD_CONNECT.
207+ * parameters should be given to driver in %NL80211_CMD_CONNECT and/or in
208+ * %NL80211_CMD_UPDATE_CONNECT_PARAMS.
207209 * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai
208210 * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai
209211 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message
@@ -214,7 +216,8 @@ · 4 unmodified lines
214216 * as specified in IETF RFC 6696.
215217 *
216218 * When FILS shared key authentication is completed, driver needs to provide the
217− * below additional parameters to userspace.
219+ * below additional parameters to userspace, which can be either after setting
220+ * up a connection or after roaming.
218221 * %NL80211_ATTR_FILS_KEK - used for key renewal
219222 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges
220223 * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated
@@ -2225,6 +2228,16 @@ enum nl80211_commands { · 2004 unmodified lines
22252228 * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this
22262229 * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.
22272230 *
2231+ * @NL80211_ATTR_TXQ_STATS: TXQ statistics (nested attribute, see &enum
2232+ * nl80211_txq_stats)
2233+ * @NL80211_ATTR_TXQ_LIMIT: Total packet limit for the TXQ queues for this phy.
2234+ * The smaller of this and the memory limit is enforced.
2235+ * @NL80211_ATTR_TXQ_MEMORY_LIMIT: Total memory memory limit (in bytes) for the
2236+ * TXQ queues for this phy. The smaller of this and the packet limit is
2237+ * enforced.
2238+ * @NL80211_ATTR_TXQ_QUANTUM: TXQ scheduler quantum (bytes). Number of bytes
2239+ * a flow is assigned on each round of the DRR scheduler.
2240+ *
22282241 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
22292242 * @NL80211_ATTR_MAX: highest attribute number currently defined
22302243 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2659,6 +2672,11 @@ enum nl80211_attrs { · 428 unmodified lines
26592672
26602673 NL80211_ATTR_CONTROL_PORT_OVER_NL80211,
26612674
2675+ NL80211_ATTR_TXQ_STATS,
2676+ NL80211_ATTR_TXQ_LIMIT,
2677+ NL80211_ATTR_TXQ_MEMORY_LIMIT,
2678+ NL80211_ATTR_TXQ_QUANTUM,
2679+
26622680 /* add attributes here, update the policy in nl80211.c */
26632681
26642682 __NL80211_ATTR_AFTER_LAST,
@@ -2982,6 +3000,8 @@ enum nl80211_sta_bss_param { · 317 unmodified lines
29823000 * received from the station (u64, usec)
29833001 * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment
29843002 * @NL80211_STA_INFO_ACK_SIGNAL: signal strength of the last ACK frame(u8, dBm)
3003+ * @NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG: avg signal strength of (data)
3004+ * ACK frame (s8, dBm)
29853005 * @__NL80211_STA_INFO_AFTER_LAST: internal
29863006 * @NL80211_STA_INFO_MAX: highest possible station info attribute
29873007 */
@@ -3021,6 +3041,7 @@ enum nl80211_sta_info { · 33 unmodified lines
30213041 NL80211_STA_INFO_RX_DURATION,
30223042 NL80211_STA_INFO_PAD,
30233043 NL80211_STA_INFO_ACK_SIGNAL,
3044+ NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG,
30243045
30253046 /* keep last */
30263047 __NL80211_STA_INFO_AFTER_LAST,
@@ -3038,6 +3059,7 @@ enum nl80211_sta_info { · 11 unmodified lines
30383059 * @NL80211_TID_STATS_TX_MSDU_FAILED: number of failed transmitted
30393060 * MSDUs (u64)
30403061 * @NL80211_TID_STATS_PAD: attribute used for padding for 64-bit alignment
3062+ * @NL80211_TID_STATS_TXQ_STATS: TXQ stats (nested attribute)
30413063 * @NUM_NL80211_TID_STATS: number of attributes here
30423064 * @NL80211_TID_STATS_MAX: highest numbered attribute here
30433065 */
@@ -3048,12 +3070,51 @@ enum nl80211_tid_stats { · 4 unmodified lines
30483070 NL80211_TID_STATS_TX_MSDU_RETRIES,
30493071 NL80211_TID_STATS_TX_MSDU_FAILED,
30503072 NL80211_TID_STATS_PAD,
3073+ NL80211_TID_STATS_TXQ_STATS,
30513074
30523075 /* keep last */
30533076 NUM_NL80211_TID_STATS,
30543077 NL80211_TID_STATS_MAX = NUM_NL80211_TID_STATS - 1
30553078 };
30563079
3080+/**
3081+ * enum nl80211_txq_stats - per TXQ statistics attributes
3082+ * @__NL80211_TXQ_STATS_INVALID: attribute number 0 is reserved
3083+ * @NUM_NL80211_TXQ_STATS: number of attributes here
3084+ * @NL80211_TXQ_STATS_BACKLOG_BYTES: number of bytes currently backlogged
3085+ * @NL80211_TXQ_STATS_BACKLOG_PACKETS: number of packets currently
3086+ * backlogged
3087+ * @NL80211_TXQ_STATS_FLOWS: total number of new flows seen
3088+ * @NL80211_TXQ_STATS_DROPS: total number of packet drops
3089+ * @NL80211_TXQ_STATS_ECN_MARKS: total number of packet ECN marks
3090+ * @NL80211_TXQ_STATS_OVERLIMIT: number of drops due to queue space overflow
3091+ * @NL80211_TXQ_STATS_OVERMEMORY: number of drops due to memory limit overflow
3092+ * (only for per-phy stats)
3093+ * @NL80211_TXQ_STATS_COLLISIONS: number of hash collisions
3094+ * @NL80211_TXQ_STATS_TX_BYTES: total number of bytes dequeued from TXQ
3095+ * @NL80211_TXQ_STATS_TX_PACKETS: total number of packets dequeued from TXQ
3096+ * @NL80211_TXQ_STATS_MAX_FLOWS: number of flow buckets for PHY
3097+ * @NL80211_TXQ_STATS_MAX: highest numbered attribute here
3098+ */
3099+enum nl80211_txq_stats {
3100+ __NL80211_TXQ_STATS_INVALID,
3101+ NL80211_TXQ_STATS_BACKLOG_BYTES,
3102+ NL80211_TXQ_STATS_BACKLOG_PACKETS,
3103+ NL80211_TXQ_STATS_FLOWS,
3104+ NL80211_TXQ_STATS_DROPS,
3105+ NL80211_TXQ_STATS_ECN_MARKS,
3106+ NL80211_TXQ_STATS_OVERLIMIT,
3107+ NL80211_TXQ_STATS_OVERMEMORY,
3108+ NL80211_TXQ_STATS_COLLISIONS,
3109+ NL80211_TXQ_STATS_TX_BYTES,
3110+ NL80211_TXQ_STATS_TX_PACKETS,
3111+ NL80211_TXQ_STATS_MAX_FLOWS,
3112+
3113+ /* keep last */
3114+ NUM_NL80211_TXQ_STATS,
3115+ NL80211_TXQ_STATS_MAX = NUM_NL80211_TXQ_STATS - 1
3116+};
3117+
30573118 /**
30583119 * enum nl80211_mpath_flags - nl80211 mesh path flags
30593120 *
@@ -3143,6 +3204,29 @@ enum nl80211_band_attr { · 83 unmodified lines
31433204
31443205 #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
31453206
3207+/**
3208+ * enum nl80211_wmm_rule - regulatory wmm rule
3209+ *
3210+ * @__NL80211_WMMR_INVALID: attribute number 0 is reserved
3211+ * @NL80211_WMMR_CW_MIN: Minimum contention window slot.
3212+ * @NL80211_WMMR_CW_MAX: Maximum contention window slot.
3213+ * @NL80211_WMMR_AIFSN: Arbitration Inter Frame Space.
3214+ * @NL80211_WMMR_TXOP: Maximum allowed tx operation time.
3215+ * @nl80211_WMMR_MAX: highest possible wmm rule.
3216+ * @__NL80211_WMMR_LAST: Internal use.
3217+ */
3218+enum nl80211_wmm_rule {
3219+ __NL80211_WMMR_INVALID,
3220+ NL80211_WMMR_CW_MIN,
3221+ NL80211_WMMR_CW_MAX,
3222+ NL80211_WMMR_AIFSN,
3223+ NL80211_WMMR_TXOP,
3224+
3225+ /* keep last */
3226+ __NL80211_WMMR_LAST,
3227+ NL80211_WMMR_MAX = __NL80211_WMMR_LAST - 1
3228+};
3229+
31463230 /**
31473231 * enum nl80211_frequency_attr - frequency attributes
31483232 * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved
@@ -3192,6 +3276,9 @@ enum nl80211_band_attr { · 43 unmodified lines
31923276 * on this channel in current regulatory domain.
31933277 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
31943278 * on this channel in current regulatory domain.
3279+ * @NL80211_FREQUENCY_ATTR_WMM: this channel has wmm limitations.
3280+ * This is a nested attribute that contains the wmm limitation per AC.
3281+ * (see &enum nl80211_wmm_rule)
31953282 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
31963283 * currently defined
31973284 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -3220,6 +3307,7 @@ enum nl80211_frequency_attr { · 22 unmodified lines
32203307 NL80211_FREQUENCY_ATTR_IR_CONCURRENT,
32213308 NL80211_FREQUENCY_ATTR_NO_20MHZ,
32223309 NL80211_FREQUENCY_ATTR_NO_10MHZ,
3310+ NL80211_FREQUENCY_ATTR_WMM,
32233311
32243312 /* keep last */
32253313 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -5040,6 +5128,11 @@ enum nl80211_feature_flags { · 1814 unmodified lines
50405128 * "radar detected" event.
50415129 * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and
50425130 * receiving control port frames over nl80211 instead of the netdevice.
5131+ * @NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT: This Driver support data ack
5132+ * rssi if firmware support, this flag is to intimate about ack rssi
5133+ * support to nl80211.
5134+ * @NL80211_EXT_FEATURE_TXQS: Driver supports FQ-CoDel-enabled intermediate
5135+ * TXQs.
50435136 *
50445137 * @NUM_NL80211_EXT_FEATURES: number of extended features.
50455138 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -5072,6 +5165,8 @@ enum nl80211_ext_feature_index { · 26 unmodified lines
50725165 NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,
50735166 NL80211_EXT_FEATURE_DFS_OFFLOAD,
50745167 NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,
5168+ NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT,
5169+ NL80211_EXT_FEATURE_TXQS,
50755170
50765171 /* add new features before the definition below */
50775172 NUM_NL80211_EXT_FEATURES,