diff options
| author | David S. Miller <davem@davemloft.net> | 2018-05-23 15:53:00 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2018-05-23 15:53:00 -0400 |
| commit | 5ee6ad201e6cba94e199da78a7fdece8881352b4 (patch) | |
| tree | a009bd4981c8682578f32994e480c9deecab5924 /include/uapi/linux | |
| parent | 5a867abdf6db501af37004c331a7dbe81d4fe0b2 (diff) | |
| parent | bad2929733635f80f99930b252757c70372356fe (diff) | |
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.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/nl80211.h | 99 |
1 files changed, 97 insertions, 2 deletions
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index 9c3630146cec..06f9af23156b 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h | |||
| @@ -11,6 +11,7 @@ | |||
| 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 GmbH | 13 | * 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 any | 16 | * Permission to use, copy, modify, and/or distribute this software for any |
| 16 | * purpose with or without fee is hereby granted, provided that the above | 17 | * purpose with or without fee is hereby granted, provided that the above |
| @@ -203,7 +204,8 @@ | |||
| 203 | * FILS shared key authentication offload should be able to construct the | 204 | * FILS shared key authentication offload should be able to construct the |
| 204 | * authentication and association frames for FILS shared key authentication and | 205 | * authentication and association frames for FILS shared key authentication and |
| 205 | * eventually do a key derivation as per IEEE 802.11ai. The below additional | 206 | * 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_nai | 209 | * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai |
| 208 | * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai | 210 | * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai |
| 209 | * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message | 211 | * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message |
| @@ -214,7 +216,8 @@ | |||
| 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 the | 218 | * 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 renewal | 221 | * %NL80211_ATTR_FILS_KEK - used for key renewal |
| 219 | * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges | 222 | * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges |
| 220 | * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated | 223 | * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated |
| @@ -2225,6 +2228,16 @@ enum nl80211_commands { | |||
| 2225 | * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this | 2228 | * @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 available | 2241 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 2229 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 2242 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 2230 | * @__NL80211_ATTR_AFTER_LAST: internal use | 2243 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2659,6 +2672,11 @@ enum nl80211_attrs { | |||
| 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 { | |||
| 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 alignment | 3001 | * @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: internal | 3005 | * @__NL80211_STA_INFO_AFTER_LAST: internal |
| 2986 | * @NL80211_STA_INFO_MAX: highest possible station info attribute | 3006 | * @NL80211_STA_INFO_MAX: highest possible station info attribute |
| 2987 | */ | 3007 | */ |
| @@ -3021,6 +3041,7 @@ enum nl80211_sta_info { | |||
| 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 { | |||
| 3038 | * @NL80211_TID_STATS_TX_MSDU_FAILED: number of failed transmitted | 3059 | * @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 alignment | 3061 | * @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 here | 3063 | * @NUM_NL80211_TID_STATS: number of attributes here |
| 3042 | * @NL80211_TID_STATS_MAX: highest numbered attribute here | 3064 | * @NL80211_TID_STATS_MAX: highest numbered attribute here |
| 3043 | */ | 3065 | */ |
| @@ -3048,6 +3070,7 @@ enum nl80211_tid_stats { | |||
| 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, |
| @@ -3055,6 +3078,44 @@ enum nl80211_tid_stats { | |||
| 3055 | }; | 3078 | }; |
| 3056 | 3079 | ||
| 3057 | /** | 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 | |||
| 3118 | /** | ||
| 3058 | * enum nl80211_mpath_flags - nl80211 mesh path flags | 3119 | * enum nl80211_mpath_flags - nl80211 mesh path flags |
| 3059 | * | 3120 | * |
| 3060 | * @NL80211_MPATH_FLAG_ACTIVE: the mesh path is active | 3121 | * @NL80211_MPATH_FLAG_ACTIVE: the mesh path is active |
| @@ -3144,6 +3205,29 @@ enum nl80211_band_attr { | |||
| 3144 | #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA | 3205 | #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA |
| 3145 | 3206 | ||
| 3146 | /** | 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 | |||
| 3230 | /** | ||
| 3147 | * enum nl80211_frequency_attr - frequency attributes | 3231 | * enum nl80211_frequency_attr - frequency attributes |
| 3148 | * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved | 3232 | * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved |
| 3149 | * @NL80211_FREQUENCY_ATTR_FREQ: Frequency in MHz | 3233 | * @NL80211_FREQUENCY_ATTR_FREQ: Frequency in MHz |
| @@ -3192,6 +3276,9 @@ enum nl80211_band_attr { | |||
| 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 allowed | 3277 | * @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 number | 3282 | * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number |
| 3196 | * currently defined | 3283 | * currently defined |
| 3197 | * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use | 3284 | * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use |
| @@ -3220,6 +3307,7 @@ enum nl80211_frequency_attr { | |||
| 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 { | |||
| 5040 | * "radar detected" event. | 5128 | * "radar detected" event. |
| 5041 | * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and | 5129 | * @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 { | |||
| 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, |
