diff options
author | Johannes Stezenbach <js@sig21.net> | 2011-04-18 09:30:36 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-19 15:39:35 -0400 |
commit | f0187a1987ed6524518ff2a533eaf8394ac1a500 (patch) | |
tree | 0a7afe2f25e10c3be912103afb6bec7586868d94 /drivers/net/wireless/rt2x00/rt2x00.h | |
parent | 6e6d6932a3f525d734f6c2f5845e9cadfaeddce9 (diff) |
rt2800usb: add timer to handle TX_STA_FIFO
TX status is reported by the hardware when a packet has been
sent (or after TX failed after possible retries), which is some
time after the DMA completion. Since the rt2800usb hardware can
not signal interrupts we have to use a timer, otherwise the
TX status would only be read by the next packet's TX DMA
completion, or by the watchdog thread.
Signed-off-by: Johannes Stezenbach <js@sig21.net>
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/rt2x00.h')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index e3b9b5146bf5..8f37121bb83f 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/etherdevice.h> | 37 | #include <linux/etherdevice.h> |
38 | #include <linux/input-polldev.h> | 38 | #include <linux/input-polldev.h> |
39 | #include <linux/kfifo.h> | 39 | #include <linux/kfifo.h> |
40 | #include <linux/timer.h> | ||
40 | 41 | ||
41 | #include <net/mac80211.h> | 42 | #include <net/mac80211.h> |
42 | 43 | ||
@@ -924,6 +925,11 @@ struct rt2x00_dev { | |||
924 | DECLARE_KFIFO_PTR(txstatus_fifo, u32); | 925 | DECLARE_KFIFO_PTR(txstatus_fifo, u32); |
925 | 926 | ||
926 | /* | 927 | /* |
928 | * Timer to ensure tx status reports are read (rt2800usb). | ||
929 | */ | ||
930 | struct timer_list txstatus_timer; | ||
931 | |||
932 | /* | ||
927 | * Tasklet for processing tx status reports (rt2800pci). | 933 | * Tasklet for processing tx status reports (rt2800pci). |
928 | */ | 934 | */ |
929 | struct tasklet_struct txstatus_tasklet; | 935 | struct tasklet_struct txstatus_tasklet; |