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
11 * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>11 * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>
12 * Copyright 2008 Colin McCabe <colin@cozybit.com>12 * Copyright 2008 Colin McCabe <colin@cozybit.com>
13 * Copyright 2015-2017 Intel Deutschland GmbH13 * Copyright 2015-2017 Intel Deutschland GmbH
14 * Copyright (C) 2018 Intel Corporation
14 *15 *
15 * Permission to use, copy, modify, and/or distribute this software for any16 * Permission to use, copy, modify, and/or distribute this software for any
16 * purpose with or without fee is hereby granted, provided that the above17 * purpose with or without fee is hereby granted, provided that the above
@@ -203,7 +204,8 @@ · 186 unmodified lines
203 * FILS shared key authentication offload should be able to construct the204 * FILS shared key authentication offload should be able to construct the
204 * authentication and association frames for FILS shared key authentication and205 * authentication and association frames for FILS shared key authentication and
205 * eventually do a key derivation as per IEEE 802.11ai. The below additional206 * 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.
207 * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai209 * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai
208 * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai210 * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai
209 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message211 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message
@@ -214,7 +216,8 @@ · 4 unmodified lines
214 * as specified in IETF RFC 6696.216 * as specified in IETF RFC 6696.
215 *217 *
216 * When FILS shared key authentication is completed, driver needs to provide the218 * 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.
218 * %NL80211_ATTR_FILS_KEK - used for key renewal221 * %NL80211_ATTR_FILS_KEK - used for key renewal
219 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges222 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges
220 * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated223 * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated
@@ -2225,6 +2228,16 @@ enum nl80211_commands { · 2004 unmodified lines
2225 * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this2228 * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this
2226 * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.2229 * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.
2227 *2230 *
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 *
2228 * @NUM_NL80211_ATTR: total number of nl80211_attrs available2241 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2229 * @NL80211_ATTR_MAX: highest attribute number currently defined2242 * @NL80211_ATTR_MAX: highest attribute number currently defined
2230 * @__NL80211_ATTR_AFTER_LAST: internal use2243 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2659,6 +2672,11 @@ enum nl80211_attrs { · 428 unmodified lines
2659 2672
2660 NL80211_ATTR_CONTROL_PORT_OVER_NL80211,2673 NL80211_ATTR_CONTROL_PORT_OVER_NL80211,
2661 2674
2675 NL80211_ATTR_TXQ_STATS,
2676 NL80211_ATTR_TXQ_LIMIT,
2677 NL80211_ATTR_TXQ_MEMORY_LIMIT,
2678 NL80211_ATTR_TXQ_QUANTUM,
2679
2662 /* add attributes here, update the policy in nl80211.c */2680 /* add attributes here, update the policy in nl80211.c */
2663 2681
2664 __NL80211_ATTR_AFTER_LAST,2682 __NL80211_ATTR_AFTER_LAST,
@@ -2982,6 +3000,8 @@ enum nl80211_sta_bss_param { · 317 unmodified lines
2982 * received from the station (u64, usec)3000 * received from the station (u64, usec)
2983 * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment3001 * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment
2984 * @NL80211_STA_INFO_ACK_SIGNAL: signal strength of the last ACK frame(u8, dBm)3002 * @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)
2985 * @__NL80211_STA_INFO_AFTER_LAST: internal3005 * @__NL80211_STA_INFO_AFTER_LAST: internal
2986 * @NL80211_STA_INFO_MAX: highest possible station info attribute3006 * @NL80211_STA_INFO_MAX: highest possible station info attribute
2987 */3007 */
@@ -3021,6 +3041,7 @@ enum nl80211_sta_info { · 33 unmodified lines
3021 NL80211_STA_INFO_RX_DURATION,3041 NL80211_STA_INFO_RX_DURATION,
3022 NL80211_STA_INFO_PAD,3042 NL80211_STA_INFO_PAD,
3023 NL80211_STA_INFO_ACK_SIGNAL,3043 NL80211_STA_INFO_ACK_SIGNAL,
3044 NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG,
3024 3045
3025 /* keep last */3046 /* keep last */
3026 __NL80211_STA_INFO_AFTER_LAST,3047 __NL80211_STA_INFO_AFTER_LAST,
@@ -3038,6 +3059,7 @@ enum nl80211_sta_info { · 11 unmodified lines
3038 * @NL80211_TID_STATS_TX_MSDU_FAILED: number of failed transmitted3059 * @NL80211_TID_STATS_TX_MSDU_FAILED: number of failed transmitted
3039 * MSDUs (u64)3060 * MSDUs (u64)
3040 * @NL80211_TID_STATS_PAD: attribute used for padding for 64-bit alignment3061 * @NL80211_TID_STATS_PAD: attribute used for padding for 64-bit alignment
3062 * @NL80211_TID_STATS_TXQ_STATS: TXQ stats (nested attribute)
3041 * @NUM_NL80211_TID_STATS: number of attributes here3063 * @NUM_NL80211_TID_STATS: number of attributes here
3042 * @NL80211_TID_STATS_MAX: highest numbered attribute here3064 * @NL80211_TID_STATS_MAX: highest numbered attribute here
3043 */3065 */
@@ -3048,12 +3070,51 @@ enum nl80211_tid_stats { · 4 unmodified lines
3048 NL80211_TID_STATS_TX_MSDU_RETRIES,3070 NL80211_TID_STATS_TX_MSDU_RETRIES,
3049 NL80211_TID_STATS_TX_MSDU_FAILED,3071 NL80211_TID_STATS_TX_MSDU_FAILED,
3050 NL80211_TID_STATS_PAD,3072 NL80211_TID_STATS_PAD,
3073 NL80211_TID_STATS_TXQ_STATS,
3051 3074
3052 /* keep last */3075 /* keep last */
3053 NUM_NL80211_TID_STATS,3076 NUM_NL80211_TID_STATS,
3054 NL80211_TID_STATS_MAX = NUM_NL80211_TID_STATS - 13077 NL80211_TID_STATS_MAX = NUM_NL80211_TID_STATS - 1
3055};3078};
3056 3079
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 */
3099enum 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
3057/**3118/**
3058 * enum nl80211_mpath_flags - nl80211 mesh path flags3119 * enum nl80211_mpath_flags - nl80211 mesh path flags
3059 *3120 *
@@ -3143,6 +3204,29 @@ enum nl80211_band_attr { · 83 unmodified lines
3143 3204
3144#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA3205#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
3145 3206
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 */
3218enum 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
3146/**3230/**
3147 * enum nl80211_frequency_attr - frequency attributes3231 * enum nl80211_frequency_attr - frequency attributes
3148 * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved3232 * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved
@@ -3192,6 +3276,9 @@ enum nl80211_band_attr { · 43 unmodified lines
3192 * on this channel in current regulatory domain.3276 * on this channel in current regulatory domain.
3193 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed3277 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
3194 * on this channel in current regulatory domain.3278 * 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)
3195 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number3282 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
3196 * currently defined3283 * currently defined
3197 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use3284 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -3220,6 +3307,7 @@ enum nl80211_frequency_attr { · 22 unmodified lines
3220 NL80211_FREQUENCY_ATTR_IR_CONCURRENT,3307 NL80211_FREQUENCY_ATTR_IR_CONCURRENT,
3221 NL80211_FREQUENCY_ATTR_NO_20MHZ,3308 NL80211_FREQUENCY_ATTR_NO_20MHZ,
3222 NL80211_FREQUENCY_ATTR_NO_10MHZ,3309 NL80211_FREQUENCY_ATTR_NO_10MHZ,
3310 NL80211_FREQUENCY_ATTR_WMM,
3223 3311
3224 /* keep last */3312 /* keep last */
3225 __NL80211_FREQUENCY_ATTR_AFTER_LAST,3313 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -5040,6 +5128,11 @@ enum nl80211_feature_flags { · 1814 unmodified lines
5040 * "radar detected" event.5128 * "radar detected" event.
5041 * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and5129 * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and
5042 * receiving control port frames over nl80211 instead of the netdevice.5130 * 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.
5043 *5136 *
5044 * @NUM_NL80211_EXT_FEATURES: number of extended features.5137 * @NUM_NL80211_EXT_FEATURES: number of extended features.
5045 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.5138 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -5072,6 +5165,8 @@ enum nl80211_ext_feature_index { · 26 unmodified lines
5072 NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,5165 NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,
5073 NL80211_EXT_FEATURE_DFS_OFFLOAD,5166 NL80211_EXT_FEATURE_DFS_OFFLOAD,
5074 NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,5167 NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,
5168 NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT,
5169 NL80211_EXT_FEATURE_TXQS,
5075 5170
5076 /* add new features before the definition below */5171 /* add new features before the definition below */
5077 NUM_NL80211_EXT_FEATURES,5172 NUM_NL80211_EXT_FEATURES,