diff options
Diffstat (limited to 'include/net/mac80211.h')
-rw-r--r-- | include/net/mac80211.h | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index f7eba1300d82..cdd7cea1fd4c 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -1101,8 +1101,6 @@ static inline bool ieee80211_vif_is_mesh(struct ieee80211_vif *vif) | |||
1101 | * These flags are used for communication about keys between the driver | 1101 | * These flags are used for communication about keys between the driver |
1102 | * and mac80211, with the @flags parameter of &struct ieee80211_key_conf. | 1102 | * and mac80211, with the @flags parameter of &struct ieee80211_key_conf. |
1103 | * | 1103 | * |
1104 | * @IEEE80211_KEY_FLAG_WMM_STA: Set by mac80211, this flag indicates | ||
1105 | * that the STA this key will be used with could be using QoS. | ||
1106 | * @IEEE80211_KEY_FLAG_GENERATE_IV: This flag should be set by the | 1104 | * @IEEE80211_KEY_FLAG_GENERATE_IV: This flag should be set by the |
1107 | * driver to indicate that it requires IV generation for this | 1105 | * driver to indicate that it requires IV generation for this |
1108 | * particular key. | 1106 | * particular key. |
@@ -1127,7 +1125,6 @@ static inline bool ieee80211_vif_is_mesh(struct ieee80211_vif *vif) | |||
1127 | * %IEEE80211_KEY_FLAG_SW_MGMT_TX flag to encrypt such frames in SW. | 1125 | * %IEEE80211_KEY_FLAG_SW_MGMT_TX flag to encrypt such frames in SW. |
1128 | */ | 1126 | */ |
1129 | enum ieee80211_key_flags { | 1127 | enum ieee80211_key_flags { |
1130 | IEEE80211_KEY_FLAG_WMM_STA = 1<<0, | ||
1131 | IEEE80211_KEY_FLAG_GENERATE_IV = 1<<1, | 1128 | IEEE80211_KEY_FLAG_GENERATE_IV = 1<<1, |
1132 | IEEE80211_KEY_FLAG_GENERATE_MMIC= 1<<2, | 1129 | IEEE80211_KEY_FLAG_GENERATE_MMIC= 1<<2, |
1133 | IEEE80211_KEY_FLAG_PAIRWISE = 1<<3, | 1130 | IEEE80211_KEY_FLAG_PAIRWISE = 1<<3, |
@@ -1231,9 +1228,8 @@ enum ieee80211_sta_rx_bandwidth { | |||
1231 | * @addr: MAC address | 1228 | * @addr: MAC address |
1232 | * @aid: AID we assigned to the station if we're an AP | 1229 | * @aid: AID we assigned to the station if we're an AP |
1233 | * @supp_rates: Bitmap of supported rates (per band) | 1230 | * @supp_rates: Bitmap of supported rates (per band) |
1234 | * @ht_cap: HT capabilities of this STA; restricted to our own TX capabilities | 1231 | * @ht_cap: HT capabilities of this STA; restricted to our own capabilities |
1235 | * @vht_cap: VHT capabilities of this STA; Not restricting any capabilities | 1232 | * @vht_cap: VHT capabilities of this STA; restricted to our own capabilities |
1236 | * of remote STA. Taking as is. | ||
1237 | * @wme: indicates whether the STA supports WME. Only valid during AP-mode. | 1233 | * @wme: indicates whether the STA supports WME. Only valid during AP-mode. |
1238 | * @drv_priv: data area for driver use, will always be aligned to | 1234 | * @drv_priv: data area for driver use, will always be aligned to |
1239 | * sizeof(void *), size is determined in hw information. | 1235 | * sizeof(void *), size is determined in hw information. |
@@ -2135,6 +2131,24 @@ enum ieee80211_rate_control_changed { | |||
2135 | }; | 2131 | }; |
2136 | 2132 | ||
2137 | /** | 2133 | /** |
2134 | * enum ieee80211_roc_type - remain on channel type | ||
2135 | * | ||
2136 | * With the support for multi channel contexts and multi channel operations, | ||
2137 | * remain on channel operations might be limited/deferred/aborted by other | ||
2138 | * flows/operations which have higher priority (and vise versa). | ||
2139 | * Specifying the ROC type can be used by devices to prioritize the ROC | ||
2140 | * operations compared to other operations/flows. | ||
2141 | * | ||
2142 | * @IEEE80211_ROC_TYPE_NORMAL: There are no special requirements for this ROC. | ||
2143 | * @IEEE80211_ROC_TYPE_MGMT_TX: The remain on channel request is required | ||
2144 | * for sending managment frames offchannel. | ||
2145 | */ | ||
2146 | enum ieee80211_roc_type { | ||
2147 | IEEE80211_ROC_TYPE_NORMAL = 0, | ||
2148 | IEEE80211_ROC_TYPE_MGMT_TX, | ||
2149 | }; | ||
2150 | |||
2151 | /** | ||
2138 | * struct ieee80211_ops - callbacks from mac80211 to the driver | 2152 | * struct ieee80211_ops - callbacks from mac80211 to the driver |
2139 | * | 2153 | * |
2140 | * This structure contains various callbacks that the driver may | 2154 | * This structure contains various callbacks that the driver may |
@@ -2687,7 +2701,8 @@ struct ieee80211_ops { | |||
2687 | int (*remain_on_channel)(struct ieee80211_hw *hw, | 2701 | int (*remain_on_channel)(struct ieee80211_hw *hw, |
2688 | struct ieee80211_vif *vif, | 2702 | struct ieee80211_vif *vif, |
2689 | struct ieee80211_channel *chan, | 2703 | struct ieee80211_channel *chan, |
2690 | int duration); | 2704 | int duration, |
2705 | enum ieee80211_roc_type type); | ||
2691 | int (*cancel_remain_on_channel)(struct ieee80211_hw *hw); | 2706 | int (*cancel_remain_on_channel)(struct ieee80211_hw *hw); |
2692 | int (*set_ringparam)(struct ieee80211_hw *hw, u32 tx, u32 rx); | 2707 | int (*set_ringparam)(struct ieee80211_hw *hw, u32 tx, u32 rx); |
2693 | void (*get_ringparam)(struct ieee80211_hw *hw, | 2708 | void (*get_ringparam)(struct ieee80211_hw *hw, |