diff options
author | Helmut Schaa <helmut.schaa@googlemail.com> | 2010-10-09 07:35:48 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-10-11 15:04:22 -0400 |
commit | 12eec2cc0d5eacd8287646585dc88ab558d4866d (patch) | |
tree | a7d0de49f700e42cdb111ec6b72453e3c65d2562 /drivers/net/wireless/rt2x00/rt2800pci.c | |
parent | 74374725cdf466629fd401a81b3a04e4cdb0815f (diff) |
rt2x00: Fix tx status handling in rt2800pci
The patches "rt2x00: Improve TX status entry validation" and "rt2x00: rework tx
status handling in rt2800pci" together were causing problems with tx status
processing in rt2800pci:
phy1 -> rt2800pci_txdone: Warning - Got TX status for an empty queue 3, dropping
phy1 -> rt2800pci_txdone: Warning - Got TX status for an unavailable queue 7, dropping
Fix this by using the correct field definition for getting the QID out of the
tx status report.
Reported-by: Luis Correia <luis.f.correia@gmail.com>
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Tested-by: Luis Correia <luis.f.correia@gmail.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2800pci.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2800pci.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2800pci.c b/drivers/net/wireless/rt2x00/rt2800pci.c index cc4e17c437d1..b26739535986 100644 --- a/drivers/net/wireless/rt2x00/rt2800pci.c +++ b/drivers/net/wireless/rt2x00/rt2800pci.c | |||
@@ -676,7 +676,7 @@ static void rt2800pci_txdone(struct rt2x00_dev *rt2x00dev) | |||
676 | break; | 676 | break; |
677 | } | 677 | } |
678 | 678 | ||
679 | qid = rt2x00_get_field32(status, TX_STA_FIFO_PID_TYPE) - 1; | 679 | qid = rt2x00_get_field32(status, TX_STA_FIFO_PID_QUEUE); |
680 | if (qid >= QID_RX) { | 680 | if (qid >= QID_RX) { |
681 | /* | 681 | /* |
682 | * Unknown queue, this shouldn't happen. Just drop | 682 | * Unknown queue, this shouldn't happen. Just drop |