aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/mac80211.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net/mac80211.h')
-rw-r--r--include/net/mac80211.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 4a80d74975e8..27ef9f761ac5 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -286,8 +286,17 @@ enum mac80211_tx_control_flags {
286 286
287/* Transmit control fields. This data structure is passed to low-level driver 287/* Transmit control fields. This data structure is passed to low-level driver
288 * with each TX frame. The low-level driver is responsible for configuring 288 * with each TX frame. The low-level driver is responsible for configuring
289 * the hardware to use given values (depending on what is supported). */ 289 * the hardware to use given values (depending on what is supported).
290 290 *
291 * NOTE: Be careful with using the pointers outside of the ieee80211_ops->tx()
292 * context (i.e. when defering the work to a workqueue).
293 * The vif pointer is valid until the it has been removed with the
294 * ieee80211_ops->remove_interface() callback funtion.
295 * The hw_key pointer is valid until it has been removed with the
296 * ieee80211_ops->set_key() callback function.
297 * The tx_rate and alt_retry_rate pointers are valid until the phy is
298 * deregistered.
299 */
291struct ieee80211_tx_control { 300struct ieee80211_tx_control {
292 struct ieee80211_vif *vif; 301 struct ieee80211_vif *vif;
293 struct ieee80211_rate *tx_rate; 302 struct ieee80211_rate *tx_rate;
@@ -298,9 +307,11 @@ struct ieee80211_tx_control {
298 /* retry rate for the last retries */ 307 /* retry rate for the last retries */
299 struct ieee80211_rate *alt_retry_rate; 308 struct ieee80211_rate *alt_retry_rate;
300 309
310 /* Key used for hardware encryption
311 * NULL if IEEE80211_TXCTL_DO_NOT_ENCRYPT is set */
312 struct ieee80211_key_conf *hw_key;
313
301 u32 flags; /* tx control flags defined above */ 314 u32 flags; /* tx control flags defined above */
302 u8 key_idx; /* keyidx from hw->set_key(), undefined if
303 * IEEE80211_TXCTL_DO_NOT_ENCRYPT is set */
304 u8 retry_limit; /* 1 = only first attempt, 2 = one retry, .. 315 u8 retry_limit; /* 1 = only first attempt, 2 = one retry, ..
305 * This could be used when set_retry_limit 316 * This could be used when set_retry_limit
306 * is not implemented by the driver */ 317 * is not implemented by the driver */