diff options
Diffstat (limited to 'drivers/net/wireless/p54/p54common.c')
-rw-r--r-- | drivers/net/wireless/p54/p54common.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c index 850857932e29..91ac9208b77d 100644 --- a/drivers/net/wireless/p54/p54common.c +++ b/drivers/net/wireless/p54/p54common.c | |||
@@ -407,7 +407,7 @@ static void p54_rx_frame_sent(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
407 | last_addr = range->end_addr; | 407 | last_addr = range->end_addr; |
408 | __skb_unlink(entry, &priv->tx_queue); | 408 | __skb_unlink(entry, &priv->tx_queue); |
409 | memset(&info->status, 0, sizeof(info->status)); | 409 | memset(&info->status, 0, sizeof(info->status)); |
410 | priv->tx_stats[info->queue].len--; | 410 | priv->tx_stats[skb_get_queue_mapping(skb)].len--; |
411 | entry_hdr = (struct p54_control_hdr *) entry->data; | 411 | entry_hdr = (struct p54_control_hdr *) entry->data; |
412 | entry_data = (struct p54_tx_control_allocdata *) entry_hdr->data; | 412 | entry_data = (struct p54_tx_control_allocdata *) entry_hdr->data; |
413 | if ((entry_hdr->magic1 & cpu_to_le16(0x4000)) != 0) | 413 | if ((entry_hdr->magic1 & cpu_to_le16(0x4000)) != 0) |
@@ -551,13 +551,13 @@ static int p54_tx(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
551 | size_t padding, len; | 551 | size_t padding, len; |
552 | u8 rate; | 552 | u8 rate; |
553 | 553 | ||
554 | current_queue = &priv->tx_stats[info->queue]; | 554 | current_queue = &priv->tx_stats[skb_get_queue_mapping(skb)]; |
555 | if (unlikely(current_queue->len > current_queue->limit)) | 555 | if (unlikely(current_queue->len > current_queue->limit)) |
556 | return NETDEV_TX_BUSY; | 556 | return NETDEV_TX_BUSY; |
557 | current_queue->len++; | 557 | current_queue->len++; |
558 | current_queue->count++; | 558 | current_queue->count++; |
559 | if (current_queue->len == current_queue->limit) | 559 | if (current_queue->len == current_queue->limit) |
560 | ieee80211_stop_queue(dev, info->queue); | 560 | ieee80211_stop_queue(dev, skb_get_queue_mapping(skb)); |
561 | 561 | ||
562 | padding = (unsigned long)(skb->data - (sizeof(*hdr) + sizeof(*txhdr))) & 3; | 562 | padding = (unsigned long)(skb->data - (sizeof(*hdr) + sizeof(*txhdr))) & 3; |
563 | len = skb->len; | 563 | len = skb->len; |
@@ -589,7 +589,7 @@ static int p54_tx(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
589 | memset(txhdr->rateset, rate, 8); | 589 | memset(txhdr->rateset, rate, 8); |
590 | txhdr->wep_key_present = 0; | 590 | txhdr->wep_key_present = 0; |
591 | txhdr->wep_key_len = 0; | 591 | txhdr->wep_key_len = 0; |
592 | txhdr->frame_type = cpu_to_le32(info->queue + 4); | 592 | txhdr->frame_type = cpu_to_le32(skb_get_queue_mapping(skb) + 4); |
593 | txhdr->magic4 = 0; | 593 | txhdr->magic4 = 0; |
594 | txhdr->antenna = (info->antenna_sel_tx == 0) ? | 594 | txhdr->antenna = (info->antenna_sel_tx == 0) ? |
595 | 2 : info->antenna_sel_tx - 1; | 595 | 2 : info->antenna_sel_tx - 1; |