1ENUM IEEE80211_AMPDU(9) Advanced driver interface ENUM IEEE80211_AMPDU(9)
2
3
4
6 enum_ieee80211_ampdu_mlme_action - A-MPDU actions
7
9 enum ieee80211_ampdu_mlme_action {
10 IEEE80211_AMPDU_RX_START,
11 IEEE80211_AMPDU_RX_STOP,
12 IEEE80211_AMPDU_TX_START,
13 IEEE80211_AMPDU_TX_STOP_CONT,
14 IEEE80211_AMPDU_TX_STOP_FLUSH,
15 IEEE80211_AMPDU_TX_STOP_FLUSH_CONT,
16 IEEE80211_AMPDU_TX_OPERATIONAL
17 };
18
20 IEEE80211_AMPDU_RX_START
21 start RX aggregation
22
23 IEEE80211_AMPDU_RX_STOP
24 stop RX aggregation
25
26 IEEE80211_AMPDU_TX_START
27 start TX aggregation
28
29 IEEE80211_AMPDU_TX_STOP_CONT
30 stop TX aggregation but continue transmitting queued packets, now
31 unaggregated. After all packets are transmitted the driver has to
32 call ieee80211_stop_tx_ba_cb_irqsafe.
33
34 IEEE80211_AMPDU_TX_STOP_FLUSH
35 stop TX aggregation and flush all packets, called when the station
36 is removed. There's no need or reason to call
37 ieee80211_stop_tx_ba_cb_irqsafe in this case as mac80211 assumes
38 the session is gone and removes the station.
39
40 IEEE80211_AMPDU_TX_STOP_FLUSH_CONT
41 called when TX aggregation is stopped but the driver hasn't called
42 ieee80211_stop_tx_ba_cb_irqsafe yet and now the connection is
43 dropped and the station will be removed. Drivers should clean up
44 and drop remaining packets when this is called.
45
46 IEEE80211_AMPDU_TX_OPERATIONAL
47 TX aggregation has become operational
48
50 These flags are used with the ampdu_action callback in struct
51 ieee80211_ops to indicate which action is needed.
52
53 Note that drivers MUST be able to deal with a TX aggregation session
54 being stopped even before they OK'ed starting it by calling
55 ieee80211_start_tx_ba_cb_irqsafe, because the peer might receive the
56 addBA frame and send a delBA right away!
57
59 Johannes Berg <johannes@sipsolutions.net>
60 Author.
61
63Kernel Hackers Manual 3.10 June 2019 ENUM IEEE80211_AMPDU(9)