diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00dev.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00dev.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index acf4d67ba43d..4fd0c25aebf3 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c | |||
@@ -580,8 +580,10 @@ void rt2x00lib_rxdone(struct queue_entry *entry, | |||
580 | for (i = 0; i < sband->n_bitrates; i++) { | 580 | for (i = 0; i < sband->n_bitrates; i++) { |
581 | rate = rt2x00_get_rate(sband->bitrates[i].hw_value); | 581 | rate = rt2x00_get_rate(sband->bitrates[i].hw_value); |
582 | 582 | ||
583 | if ((rxdesc->signal_plcp && rate->plcp == rxdesc->signal) || | 583 | if (((rxdesc->dev_flags & RXDONE_SIGNAL_PLCP) && |
584 | (!rxdesc->signal_plcp && rate->bitrate == rxdesc->signal)) { | 584 | (rate->plcp == rxdesc->signal)) || |
585 | (!(rxdesc->dev_flags & RXDONE_SIGNAL_PLCP) && | ||
586 | (rate->bitrate == rxdesc->signal))) { | ||
585 | idx = i; | 587 | idx = i; |
586 | break; | 588 | break; |
587 | } | 589 | } |
@@ -592,7 +594,7 @@ void rt2x00lib_rxdone(struct queue_entry *entry, | |||
592 | */ | 594 | */ |
593 | hdr = (struct ieee80211_hdr *)entry->skb->data; | 595 | hdr = (struct ieee80211_hdr *)entry->skb->data; |
594 | fc = le16_to_cpu(hdr->frame_control); | 596 | fc = le16_to_cpu(hdr->frame_control); |
595 | if (is_beacon(fc) && rxdesc->my_bss) | 597 | if (is_beacon(fc) && (rxdesc->dev_flags & RXDONE_MY_BSS)) |
596 | rt2x00lib_update_link_stats(&rt2x00dev->link, rxdesc->rssi); | 598 | rt2x00lib_update_link_stats(&rt2x00dev->link, rxdesc->rssi); |
597 | 599 | ||
598 | rt2x00dev->link.qual.rx_success++; | 600 | rt2x00dev->link.qual.rx_success++; |