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.h40
1 files changed, 25 insertions, 15 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 0a5de3ef527a..656442c6b1c3 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -42,7 +42,7 @@
42 * tasklet function. 42 * tasklet function.
43 * 43 *
44 * NOTE: If the driver opts to use the _irqsafe() functions, it may not also 44 * NOTE: If the driver opts to use the _irqsafe() functions, it may not also
45 * use the non-irqsafe functions! 45 * use the non-IRQ-safe functions!
46 */ 46 */
47 47
48/** 48/**
@@ -85,7 +85,7 @@ enum ieee80211_notification_types {
85 * struct ieee80211_ht_bss_info - describing BSS's HT characteristics 85 * struct ieee80211_ht_bss_info - describing BSS's HT characteristics
86 * 86 *
87 * This structure describes most essential parameters needed 87 * This structure describes most essential parameters needed
88 * to describe 802.11n HT characteristics in a BSS 88 * to describe 802.11n HT characteristics in a BSS.
89 * 89 *
90 * @primary_channel: channel number of primery channel 90 * @primary_channel: channel number of primery channel
91 * @bss_cap: 802.11n's general BSS capabilities (e.g. channel width) 91 * @bss_cap: 802.11n's general BSS capabilities (e.g. channel width)
@@ -201,9 +201,9 @@ struct ieee80211_bss_conf {
201}; 201};
202 202
203/** 203/**
204 * enum mac80211_tx_flags - flags to transmission information/status 204 * enum mac80211_tx_control_flags - flags to describe transmission information/status
205 * 205 *
206 * These flags are used with the @flags member of &ieee80211_tx_info 206 * These flags are used with the @flags member of &ieee80211_tx_info.
207 * 207 *
208 * @IEEE80211_TX_CTL_REQ_TX_STATUS: request TX status callback for this frame. 208 * @IEEE80211_TX_CTL_REQ_TX_STATUS: request TX status callback for this frame.
209 * @IEEE80211_TX_CTL_DO_NOT_ENCRYPT: send this frame without encryption; 209 * @IEEE80211_TX_CTL_DO_NOT_ENCRYPT: send this frame without encryption;
@@ -212,11 +212,12 @@ struct ieee80211_bss_conf {
212 * @IEEE80211_TX_CTL_USE_CTS_PROTECT: use CTS protection for the frame (e.g., 212 * @IEEE80211_TX_CTL_USE_CTS_PROTECT: use CTS protection for the frame (e.g.,
213 * for combined 802.11g / 802.11b networks) 213 * for combined 802.11g / 802.11b networks)
214 * @IEEE80211_TX_CTL_NO_ACK: tell the low level not to wait for an ack 214 * @IEEE80211_TX_CTL_NO_ACK: tell the low level not to wait for an ack
215 * @IEEE80211_TX_CTL_RATE_CTRL_PROBE 215 * @IEEE80211_TX_CTL_RATE_CTRL_PROBE: TBD
216 * @IEEE80211_TX_CTL_CLEAR_PS_FILT: clear powersave filter for destination 216 * @IEEE80211_TX_CTL_CLEAR_PS_FILT: clear powersave filter for destination
217 * station 217 * station
218 * @IEEE80211_TX_CTL_REQUEUE: 218 * @IEEE80211_TX_CTL_REQUEUE: TBD
219 * @IEEE80211_TX_CTL_FIRST_FRAGMENT: this is a first fragment of the frame 219 * @IEEE80211_TX_CTL_FIRST_FRAGMENT: this is a first fragment of the frame
220 * @IEEE80211_TX_CTL_SHORT_PREAMBLE: TBD
220 * @IEEE80211_TX_CTL_LONG_RETRY_LIMIT: this frame should be send using the 221 * @IEEE80211_TX_CTL_LONG_RETRY_LIMIT: this frame should be send using the
221 * through set_retry_limit configured long retry value 222 * through set_retry_limit configured long retry value
222 * @IEEE80211_TX_CTL_EAPOL_FRAME: internal to mac80211 223 * @IEEE80211_TX_CTL_EAPOL_FRAME: internal to mac80211
@@ -230,6 +231,7 @@ struct ieee80211_bss_conf {
230 * @IEEE80211_TX_CTL_40_MHZ_WIDTH: send this frame using 40 Mhz channel width 231 * @IEEE80211_TX_CTL_40_MHZ_WIDTH: send this frame using 40 Mhz channel width
231 * @IEEE80211_TX_CTL_DUP_DATA: duplicate data frame on both 20 Mhz channels 232 * @IEEE80211_TX_CTL_DUP_DATA: duplicate data frame on both 20 Mhz channels
232 * @IEEE80211_TX_CTL_SHORT_GI: send this frame using short guard interval 233 * @IEEE80211_TX_CTL_SHORT_GI: send this frame using short guard interval
234 * @IEEE80211_TX_CTL_INJECTED: TBD
233 * @IEEE80211_TX_STAT_TX_FILTERED: The frame was not transmitted 235 * @IEEE80211_TX_STAT_TX_FILTERED: The frame was not transmitted
234 * because the destination STA was in powersave mode. 236 * because the destination STA was in powersave mode.
235 * @IEEE80211_TX_STAT_ACK: Frame was acknowledged 237 * @IEEE80211_TX_STAT_ACK: Frame was acknowledged
@@ -280,6 +282,12 @@ enum mac80211_tx_control_flags {
280 * (3) TX status information - driver tells mac80211 what happened 282 * (3) TX status information - driver tells mac80211 what happened
281 * 283 *
282 * @flags: transmit info flags, defined above 284 * @flags: transmit info flags, defined above
285 * @band: TBD
286 * @tx_rate_idx: TBD
287 * @antenna_sel_tx: TBD
288 * @control: union for control data
289 * @status: union for status data
290 * @driver_data: array of driver_data pointers
283 * @retry_count: number of retries 291 * @retry_count: number of retries
284 * @excessive_retries: set to 1 if the frame was retried many times 292 * @excessive_retries: set to 1 if the frame was retried many times
285 * but not acknowledged 293 * but not acknowledged
@@ -562,8 +570,8 @@ enum ieee80211_key_alg {
562 570
563/** 571/**
564 * enum ieee80211_key_len - key length 572 * enum ieee80211_key_len - key length
565 * @WEP40: WEP 5 byte long key 573 * @LEN_WEP40: WEP 5-byte long key
566 * @WEP104: WEP 13 byte long key 574 * @LEN_WEP104: WEP 13-byte long key
567 */ 575 */
568enum ieee80211_key_len { 576enum ieee80211_key_len {
569 LEN_WEP40 = 5, 577 LEN_WEP40 = 5,
@@ -640,7 +648,7 @@ enum set_key_cmd {
640 * enum sta_notify_cmd - sta notify command 648 * enum sta_notify_cmd - sta notify command
641 * 649 *
642 * Used with the sta_notify() callback in &struct ieee80211_ops, this 650 * Used with the sta_notify() callback in &struct ieee80211_ops, this
643 * indicates addition and removal of a station to station table 651 * indicates addition and removal of a station to station table.
644 * 652 *
645 * @STA_NOTIFY_ADD: a station was added to the station table 653 * @STA_NOTIFY_ADD: a station was added to the station table
646 * @STA_NOTIFY_REMOVE: a station being removed from the station table 654 * @STA_NOTIFY_REMOVE: a station being removed from the station table
@@ -1340,7 +1348,7 @@ void ieee80211_unregister_hw(struct ieee80211_hw *hw);
1340 * 1348 *
1341 * This function frees everything that was allocated, including the 1349 * This function frees everything that was allocated, including the
1342 * private data for the driver. You must call ieee80211_unregister_hw() 1350 * private data for the driver. You must call ieee80211_unregister_hw()
1343 * before calling this function 1351 * before calling this function.
1344 * 1352 *
1345 * @hw: the hardware to free 1353 * @hw: the hardware to free
1346 */ 1354 */
@@ -1411,7 +1419,7 @@ void ieee80211_tx_status(struct ieee80211_hw *hw,
1411 struct sk_buff *skb); 1419 struct sk_buff *skb);
1412 1420
1413/** 1421/**
1414 * ieee80211_tx_status_irqsafe - irq-safe transmit status callback 1422 * ieee80211_tx_status_irqsafe - IRQ-safe transmit status callback
1415 * 1423 *
1416 * Like ieee80211_tx_status() but can be called in IRQ context 1424 * Like ieee80211_tx_status() but can be called in IRQ context
1417 * (internally defers to a tasklet.) 1425 * (internally defers to a tasklet.)
@@ -1589,6 +1597,8 @@ unsigned int ieee80211_hdrlen(__le16 fc);
1589 * @keyconf: the parameter passed with the set key 1597 * @keyconf: the parameter passed with the set key
1590 * @skb: the skb for which the key is needed 1598 * @skb: the skb for which the key is needed
1591 * @rc4key: a buffer to which the key will be written 1599 * @rc4key: a buffer to which the key will be written
1600 * @type: TBD
1601 * @key: TBD
1592 */ 1602 */
1593void ieee80211_get_tkip_key(struct ieee80211_key_conf *keyconf, 1603void ieee80211_get_tkip_key(struct ieee80211_key_conf *keyconf,
1594 struct sk_buff *skb, 1604 struct sk_buff *skb,
@@ -1639,7 +1649,7 @@ void ieee80211_wake_queues(struct ieee80211_hw *hw);
1639void ieee80211_scan_completed(struct ieee80211_hw *hw); 1649void ieee80211_scan_completed(struct ieee80211_hw *hw);
1640 1650
1641/** 1651/**
1642 * ieee80211_iterate_active_interfaces- iterate active interfaces 1652 * ieee80211_iterate_active_interfaces - iterate active interfaces
1643 * 1653 *
1644 * This function iterates over the interfaces associated with a given 1654 * This function iterates over the interfaces associated with a given
1645 * hardware that are currently active and calls the callback for them. 1655 * hardware that are currently active and calls the callback for them.
@@ -1706,7 +1716,7 @@ void ieee80211_start_tx_ba_cb(struct ieee80211_hw *hw, u8 *ra, u16 tid);
1706 * 1716 *
1707 * This function must be called by low level driver once it has 1717 * This function must be called by low level driver once it has
1708 * finished with preparations for the BA session. 1718 * finished with preparations for the BA session.
1709 * This version of the function is irq safe. 1719 * This version of the function is IRQ-safe.
1710 */ 1720 */
1711void ieee80211_start_tx_ba_cb_irqsafe(struct ieee80211_hw *hw, const u8 *ra, 1721void ieee80211_start_tx_ba_cb_irqsafe(struct ieee80211_hw *hw, const u8 *ra,
1712 u16 tid); 1722 u16 tid);
@@ -1746,7 +1756,7 @@ void ieee80211_stop_tx_ba_cb(struct ieee80211_hw *hw, u8 *ra, u8 tid);
1746 * 1756 *
1747 * This function must be called by low level driver once it has 1757 * This function must be called by low level driver once it has
1748 * finished with preparations for the BA session tear down. 1758 * finished with preparations for the BA session tear down.
1749 * This version of the function is irq safe. 1759 * This version of the function is IRQ-safe.
1750 */ 1760 */
1751void ieee80211_stop_tx_ba_cb_irqsafe(struct ieee80211_hw *hw, const u8 *ra, 1761void ieee80211_stop_tx_ba_cb_irqsafe(struct ieee80211_hw *hw, const u8 *ra,
1752 u16 tid); 1762 u16 tid);
@@ -1754,7 +1764,7 @@ void ieee80211_stop_tx_ba_cb_irqsafe(struct ieee80211_hw *hw, const u8 *ra,
1754/** 1764/**
1755 * ieee80211_notify_mac - low level driver notification 1765 * ieee80211_notify_mac - low level driver notification
1756 * @hw: pointer as obtained from ieee80211_alloc_hw(). 1766 * @hw: pointer as obtained from ieee80211_alloc_hw().
1757 * @notification_types: enum ieee80211_notification_types 1767 * @notif_type: enum ieee80211_notification_types
1758 * 1768 *
1759 * This function must be called by low level driver to inform mac80211 of 1769 * This function must be called by low level driver to inform mac80211 of
1760 * low level driver status change or force mac80211 to re-assoc for low 1770 * low level driver status change or force mac80211 to re-assoc for low