forked from Minki/linux
rt2x00: Check IEEE80211_TXCTL_SEND_AFTER_DTIM flag
When mac sets the IEEE80211_TXCTL_SEND_AFTER_DTIM flag, we should check if the ATIM queue is available in the driver and put the frame in that queue for proper behavior (send frame after beacon interval). Unfortunately not all drivers have this ATIM queue, and will lack this feature for now. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
a4fe07d913
commit
e4030a2f40
@ -99,7 +99,11 @@ int rt2x00mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
|
||||
/*
|
||||
* Determine which queue to put packet on.
|
||||
*/
|
||||
queue = rt2x00queue_get_queue(rt2x00dev, control->queue);
|
||||
if (control->flags & IEEE80211_TXCTL_SEND_AFTER_DTIM &&
|
||||
test_bit(DRIVER_REQUIRE_ATIM_QUEUE, &rt2x00dev->flags))
|
||||
queue = rt2x00queue_get_queue(rt2x00dev, RT2X00_BCN_QUEUE_ATIM);
|
||||
else
|
||||
queue = rt2x00queue_get_queue(rt2x00dev, control->queue);
|
||||
if (unlikely(!queue)) {
|
||||
ERROR(rt2x00dev,
|
||||
"Attempt to send packet over invalid queue %d.\n"
|
||||
|
Loading…
Reference in New Issue
Block a user