History

nl80211: Add wmm rule attribute to NL80211_CMD_GET_WIPHY dump command

This will serve userspace entity to maintain its regulatory limitation. More specifcally APs can use this data to calculate the WMM IE when building: beacons, probe responses, assoc responses etc...

Haim Dreyfuss committed 8 years ago

Commit 50f32711 parent 03737002 files · +81 −4Browse files

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

Unified · Split

include/uapi/linux/nl80211.h+28−0
@@ -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
@@ -3141,6 +3142,29 @@ enum nl80211_band_attr { · 3124 unmodified lines
3141 3142
3142#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA3143#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
3143 3144
3145/**
3146 * enum nl80211_wmm_rule - regulatory wmm rule
3147 *
3148 * @__NL80211_WMMR_INVALID: attribute number 0 is reserved
3149 * @NL80211_WMMR_CW_MIN: Minimum contention window slot.
3150 * @NL80211_WMMR_CW_MAX: Maximum contention window slot.
3151 * @NL80211_WMMR_AIFSN: Arbitration Inter Frame Space.
3152 * @NL80211_WMMR_TXOP: Maximum allowed tx operation time.
3153 * @nl80211_WMMR_MAX: highest possible wmm rule.
3154 * @__NL80211_WMMR_LAST: Internal use.
3155 */
3156enum nl80211_wmm_rule {
3157 __NL80211_WMMR_INVALID,
3158 NL80211_WMMR_CW_MIN,
3159 NL80211_WMMR_CW_MAX,
3160 NL80211_WMMR_AIFSN,
3161 NL80211_WMMR_TXOP,
3162
3163 /* keep last */
3164 __NL80211_WMMR_LAST,
3165 NL80211_WMMR_MAX = __NL80211_WMMR_LAST - 1
3166};
3167
3144/**3168/**
3145 * enum nl80211_frequency_attr - frequency attributes3169 * enum nl80211_frequency_attr - frequency attributes
3146 * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved3170 * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved
@@ -3190,6 +3214,9 @@ enum nl80211_band_attr { · 43 unmodified lines
3190 * on this channel in current regulatory domain.3214 * on this channel in current regulatory domain.
3191 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed3215 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
3192 * on this channel in current regulatory domain.3216 * on this channel in current regulatory domain.
3217 * @NL80211_FREQUENCY_ATTR_WMM: this channel has wmm limitations.
3218 * This is a nested attribute that contains the wmm limitation per AC.
3219 * (see &enum nl80211_wmm_rule)
3193 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number3220 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
3194 * currently defined3221 * currently defined
3195 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use3222 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -3218,6 +3245,7 @@ enum nl80211_frequency_attr { · 22 unmodified lines
3218 NL80211_FREQUENCY_ATTR_IR_CONCURRENT,3245 NL80211_FREQUENCY_ATTR_IR_CONCURRENT,
3219 NL80211_FREQUENCY_ATTR_NO_20MHZ,3246 NL80211_FREQUENCY_ATTR_NO_20MHZ,
3220 NL80211_FREQUENCY_ATTR_NO_10MHZ,3247 NL80211_FREQUENCY_ATTR_NO_10MHZ,
3248 NL80211_FREQUENCY_ATTR_WMM,
3221 3249
3222 /* keep last */3250 /* keep last */
3223 __NL80211_FREQUENCY_ATTR_AFTER_LAST,3251 __NL80211_FREQUENCY_ATTR_AFTER_LAST,