Explorar o código

rt2x00: Use IEEE80211_TX_CTL_MORE_FRAMES flag

Check the IEEE80211_TX_CTL_MORE_FRAMES flag to help determining
if the DMA queue should be kicked. At the moment this is combined
with the ieee80211_has_morefrags() but we might remove that later.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Ivo van Doorn %!s(int64=16) %!d(string=hai) anos
pai
achega
267e898755
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      drivers/net/wireless/rt2x00/rt2x00queue.c

+ 2 - 1
drivers/net/wireless/rt2x00/rt2x00queue.c

@@ -324,7 +324,8 @@ static void rt2x00queue_create_tx_descriptor(struct queue_entry *entry,
 	/*
 	/*
 	 * Check if more fragments are pending
 	 * Check if more fragments are pending
 	 */
 	 */
-	if (ieee80211_has_morefrags(hdr->frame_control)) {
+	if (ieee80211_has_morefrags(hdr->frame_control) ||
+	    (tx_info->flags & IEEE80211_TX_CTL_MORE_FRAMES)) {
 		__set_bit(ENTRY_TXD_BURST, &txdesc->flags);
 		__set_bit(ENTRY_TXD_BURST, &txdesc->flags);
 		__set_bit(ENTRY_TXD_MORE_FRAG, &txdesc->flags);
 		__set_bit(ENTRY_TXD_MORE_FRAG, &txdesc->flags);
 	}
 	}