aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2500pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2500pci.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2500pci.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
index c06f1b5e5887..aa195dab1554 100644
--- a/drivers/net/wireless/rt2x00/rt2500pci.c
+++ b/drivers/net/wireless/rt2x00/rt2500pci.c
@@ -1292,7 +1292,18 @@ static void rt2500pci_txdone(struct rt2x00_dev *rt2x00dev,
1292 /* 1292 /*
1293 * Obtain the status about this packet. 1293 * Obtain the status about this packet.
1294 */ 1294 */
1295 txdesc.status = rt2x00_get_field32(word, TXD_W0_RESULT); 1295 txdesc.flags = 0;
1296 switch (rt2x00_get_field32(word, TXD_W0_RESULT)) {
1297 case 0: /* Success */
1298 case 1: /* Success with retry */
1299 __set_bit(TXDONE_SUCCESS, &txdesc.flags);
1300 break;
1301 case 2: /* Failure, excessive retries */
1302 __set_bit(TXDONE_EXCESSIVE_RETRY, &txdesc.flags);
1303 /* Don't break, this is a failed frame! */
1304 default: /* Failure */
1305 __set_bit(TXDONE_FAILURE, &txdesc.flags);
1306 }
1296 txdesc.retry = rt2x00_get_field32(word, TXD_W0_RETRY_COUNT); 1307 txdesc.retry = rt2x00_get_field32(word, TXD_W0_RETRY_COUNT);
1297 1308
1298 rt2x00pci_txdone(rt2x00dev, entry, &txdesc); 1309 rt2x00pci_txdone(rt2x00dev, entry, &txdesc);