diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c index 4cd284209d160cca682ce7c18b76249e8d637d86..1f49561d3ddc6642af4d986d6c36718994c42714 100644 --- a/drivers/net/wireless/rt2x00/rt2400pci.c +++ b/drivers/net/wireless/rt2x00/rt2400pci.c @@ -1072,9 +1072,10 @@ static void rt2400pci_fill_rxdone(struct queue_entry *entry, /* * Obtain the status about this packet. - * The signal is the PLCP value. + * The signal is the PLCP value, and needs to be stripped + * of the preamble bit (0x08). */ - rxdesc->signal = rt2x00_get_field32(word2, RXD_W2_SIGNAL); + rxdesc->signal = rt2x00_get_field32(word2, RXD_W2_SIGNAL) & ~0x08; rxdesc->signal_plcp = 1; rxdesc->rssi = rt2x00_get_field32(word2, RXD_W3_RSSI) - entry->queue->rt2x00dev->rssi_offset; diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index a885254d2e85cf1133fbe8ed3ea7784881385cd1..b81efc9b058d7af5ae6bbe1d8569ec39f16a1bfd 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c @@ -573,13 +573,6 @@ void rt2x00lib_rxdone(struct queue_entry *entry, int idx = -1; u16 fc; - /* - * If the signal is the plcp value, - * we need to strip the preamble bit (0x08). - */ - if (rxdesc->signal_plcp) - rxdesc->signal &= ~0x08; - /* * Update RX statistics. */