diff options
| -rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00usb.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c index b6b4542c2460..7fbb55c9da82 100644 --- a/drivers/net/wireless/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c | |||
| @@ -262,23 +262,20 @@ static void rt2x00usb_interrupt_txdone(struct urb *urb) | |||
| 262 | struct queue_entry *entry = (struct queue_entry *)urb->context; | 262 | struct queue_entry *entry = (struct queue_entry *)urb->context; |
| 263 | struct rt2x00_dev *rt2x00dev = entry->queue->rt2x00dev; | 263 | struct rt2x00_dev *rt2x00dev = entry->queue->rt2x00dev; |
| 264 | 264 | ||
| 265 | if (!test_and_clear_bit(ENTRY_OWNER_DEVICE_DATA, &entry->flags)) | 265 | if (!test_bit(ENTRY_OWNER_DEVICE_DATA, &entry->flags)) |
| 266 | return; | 266 | return; |
| 267 | |||
| 268 | if (rt2x00dev->ops->lib->tx_dma_done) | ||
| 269 | rt2x00dev->ops->lib->tx_dma_done(entry); | ||
| 270 | |||
| 271 | /* | ||
| 272 | * Report the frame as DMA done | ||
| 273 | */ | ||
| 274 | rt2x00lib_dmadone(entry); | ||
| 275 | |||
| 276 | /* | 267 | /* |
| 277 | * Check if the frame was correctly uploaded | 268 | * Check if the frame was correctly uploaded |
| 278 | */ | 269 | */ |
| 279 | if (urb->status) | 270 | if (urb->status) |
| 280 | set_bit(ENTRY_DATA_IO_FAILED, &entry->flags); | 271 | set_bit(ENTRY_DATA_IO_FAILED, &entry->flags); |
| 272 | /* | ||
| 273 | * Report the frame as DMA done | ||
| 274 | */ | ||
| 275 | rt2x00lib_dmadone(entry); | ||
| 281 | 276 | ||
| 277 | if (rt2x00dev->ops->lib->tx_dma_done) | ||
| 278 | rt2x00dev->ops->lib->tx_dma_done(entry); | ||
| 282 | /* | 279 | /* |
| 283 | * Schedule the delayed work for reading the TX status | 280 | * Schedule the delayed work for reading the TX status |
| 284 | * from the device. | 281 | * from the device. |
