aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00usb.c
diff options
context:
space:
mode:
authorIvo van Doorn <IvDoorn@gmail.com>2010-11-04 15:39:48 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-11-15 13:26:03 -0500
commitaaf886bd215396f295bc0489e8ae09d1c03d9aa0 (patch)
tree5e71e038377d041a7884ff1095b3bebc11445b62 /drivers/net/wireless/rt2x00/rt2x00usb.c
parent7225ce1ea93d24c0914eea0410dcfc426281f996 (diff)
rt2x00: Remove failsave from rt2x00usb_watchdog_tx_dma
When the TX status handler failed to clear the queue in rt2x00usb_watchdog_tx_dma() we shouldn't use a failsave to use the rt2x00usb txdone handler. If a driver has overriden the txdone handler it must make sure the txdone handler is capable of cleaning up the queue itself. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00usb.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00usb.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c
index 88995d50a5c7..6dd96192dd91 100644
--- a/drivers/net/wireless/rt2x00/rt2x00usb.c
+++ b/drivers/net/wireless/rt2x00/rt2x00usb.c
@@ -323,21 +323,6 @@ static void rt2x00usb_watchdog_tx_dma(struct data_queue *queue)
323 rt2x00dev->txdone_work.func(&rt2x00dev->txdone_work); 323 rt2x00dev->txdone_work.func(&rt2x00dev->txdone_work);
324 324
325 /* 325 /*
326 * Security measure: if the driver did override the
327 * txdone_work function, and the hardware did arrive
328 * in a state which causes it to malfunction, it is
329 * possible that the driver couldn't handle the txdone
330 * event correctly. So after giving the driver the
331 * chance to cleanup, we now force a cleanup of any
332 * leftovers.
333 */
334 if (!rt2x00queue_empty(queue)) {
335 WARNING(queue->rt2x00dev, "TX queue %d DMA timed out,"
336 " status handling failed, invoke hard reset", queue->qid);
337 rt2x00usb_work_txdone(&rt2x00dev->txdone_work);
338 }
339
340 /*
341 * The queue has been reset, and mac80211 is allowed to use the 326 * The queue has been reset, and mac80211 is allowed to use the
342 * queue again. 327 * queue again.
343 */ 328 */