diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00dev.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00dev.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index 6499cc416ca3..e692608bee8b 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c | |||
@@ -464,7 +464,7 @@ void rt2x00lib_rxdone(struct rt2x00_dev *rt2x00dev, | |||
464 | { | 464 | { |
465 | struct rxdone_entry_desc rxdesc; | 465 | struct rxdone_entry_desc rxdesc; |
466 | struct sk_buff *skb; | 466 | struct sk_buff *skb; |
467 | struct ieee80211_rx_status *rx_status = &rt2x00dev->rx_status; | 467 | struct ieee80211_rx_status *rx_status; |
468 | unsigned int header_length; | 468 | unsigned int header_length; |
469 | int rate_idx; | 469 | int rate_idx; |
470 | 470 | ||
@@ -535,19 +535,21 @@ void rt2x00lib_rxdone(struct rt2x00_dev *rt2x00dev, | |||
535 | */ | 535 | */ |
536 | rt2x00link_update_stats(rt2x00dev, entry->skb, &rxdesc); | 536 | rt2x00link_update_stats(rt2x00dev, entry->skb, &rxdesc); |
537 | rt2x00debug_update_crypto(rt2x00dev, &rxdesc); | 537 | rt2x00debug_update_crypto(rt2x00dev, &rxdesc); |
538 | rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_RXDONE, entry->skb); | ||
538 | 539 | ||
540 | /* | ||
541 | * Initialize RX status information, and send frame | ||
542 | * to mac80211. | ||
543 | */ | ||
544 | rx_status = IEEE80211_SKB_RXCB(entry->skb); | ||
539 | rx_status->mactime = rxdesc.timestamp; | 545 | rx_status->mactime = rxdesc.timestamp; |
546 | rx_status->band = rt2x00dev->curr_band; | ||
547 | rx_status->freq = rt2x00dev->curr_freq; | ||
540 | rx_status->rate_idx = rate_idx; | 548 | rx_status->rate_idx = rate_idx; |
541 | rx_status->signal = rxdesc.rssi; | 549 | rx_status->signal = rxdesc.rssi; |
542 | rx_status->flag = rxdesc.flags; | 550 | rx_status->flag = rxdesc.flags; |
543 | rx_status->antenna = rt2x00dev->link.ant.active.rx; | 551 | rx_status->antenna = rt2x00dev->link.ant.active.rx; |
544 | 552 | ||
545 | /* | ||
546 | * Send frame to mac80211 & debugfs. | ||
547 | * mac80211 will clean up the skb structure. | ||
548 | */ | ||
549 | rt2x00debug_dump_frame(rt2x00dev, DUMP_FRAME_RXDONE, entry->skb); | ||
550 | memcpy(IEEE80211_SKB_RXCB(entry->skb), rx_status, sizeof(*rx_status)); | ||
551 | ieee80211_rx_ni(rt2x00dev->hw, entry->skb); | 553 | ieee80211_rx_ni(rt2x00dev->hw, entry->skb); |
552 | 554 | ||
553 | /* | 555 | /* |