aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
diff options
context:
space:
mode:
authorStanislaw Gruszka <sgruszka@redhat.com>2018-09-26 12:24:57 +0200
committerKalle Valo <kvalo@codeaurora.org>2018-10-01 18:37:35 +0300
commit0240564430c0697d8fde3743d70346a922466b36 (patch)
tree20c0497a285794684d4c98c021af3fd0b9f881ad /drivers/net/wireless/ralink/rt2x00/rt2800lib.c
parentadf26a356f132e35093585521ea3e36cd185af83 (diff)
downloadlinux-0240564430c0697d8fde3743d70346a922466b36.tar.gz
rt2800: flush and txstatus rework for rt2800mmio
Implement custom rt2800mmio flush routine and change txstatus routine to read TX_STA_FIFO also in the tasklet. Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/ralink/rt2x00/rt2800lib.c')
-rw-r--r--drivers/net/wireless/ralink/rt2x00/rt2800lib.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 595cb9c90b81..9e7b8933d30c 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -1147,7 +1147,7 @@ static inline bool rt2800_entry_txstatus_timeout(struct rt2x00_dev *rt2x00dev,
return false;
if (test_bit(DEVICE_STATE_FLUSHING, &rt2x00dev->flags))
- tout = msecs_to_jiffies(100);
+ tout = msecs_to_jiffies(50);
else
tout = msecs_to_jiffies(2000);
@@ -1163,15 +1163,13 @@ bool rt2800_txstatus_timeout(struct rt2x00_dev *rt2x00dev)
{
struct data_queue *queue;
struct queue_entry *entry;
- unsigned long tout;
- if (test_bit(DEVICE_STATE_FLUSHING, &rt2x00dev->flags))
- tout = msecs_to_jiffies(50);
- else
- tout = msecs_to_jiffies(1000);
+ if (!test_bit(DEVICE_STATE_FLUSHING, &rt2x00dev->flags)) {
+ unsigned long tout = msecs_to_jiffies(1000);
- if (time_before(jiffies, rt2x00dev->last_nostatus_check + tout))
- return false;
+ if (time_before(jiffies, rt2x00dev->last_nostatus_check + tout))
+ return false;
+ }
rt2x00dev->last_nostatus_check = jiffies;