rt2x00: Only strip preamble bit in rt2400pci
authorIvo van Doorn <ivdoorn@gmail.com>
Sun, 9 Mar 2008 23:30:44 +0000 (00:30 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 13 Mar 2008 23:32:31 +0000 (19:32 -0400)
Only rt2400pci can have the preamble bit set in the PLCP value,
for all other drivers it should not be cleared since that will
conflict with the plcp values for OFDM rates.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/rt2x00/rt2400pci.c
drivers/net/wireless/rt2x00/rt2x00dev.c

index 4cd284209d160cca682ce7c18b76249e8d637d86..1f49561d3ddc6642af4d986d6c36718994c42714 100644 (file)
@@ -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;
index a885254d2e85cf1133fbe8ed3ea7784881385cd1..b81efc9b058d7af5ae6bbe1d8569ec39f16a1bfd 100644 (file)
@@ -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.
         */