This patchset make rt2800mmio txdone routines the same as rt2800usb.
It should address problems with TX status interrupt handling and
doing txdone for cases when we miss TX statuses from HW. We assume
that for PCIe/SOC we always read TX status in IRQ routine, but this
can be not true for example when CPU is busy with other interrupts.  

It was tested by  with positive feedback, some users report that
patches make MT7620 routers workable for them. This is documented
here: https://bugzilla.kernel.org/show_bug.cgi?id=82751

Stanislaw Gruszka (5):
  rt2800: move usb specific txdone/txstatus routines to rt2800lib
  rt2800mmio: use txdone/txstatus routines from lib
  rt2x00: do not check for txstatus timeout every time on tasklet
  rt2x00: use different txstatus timeouts when flushing
  rt2800: flush and txstatus rework for rt2800mmio

 drivers/net/wireless/ralink/rt2x00/rt2800lib.c   | 154 +++++++++++++
 drivers/net/wireless/ralink/rt2x00/rt2800lib.h   |   3 +
 drivers/net/wireless/ralink/rt2x00/rt2800mmio.c  | 277 +++++++----------------
 drivers/net/wireless/ralink/rt2x00/rt2800mmio.h  |   1 +
 drivers/net/wireless/ralink/rt2x00/rt2800pci.c   |   2 +-
 drivers/net/wireless/ralink/rt2x00/rt2800usb.c   | 143 +-----------
 drivers/net/wireless/ralink/rt2x00/rt2x00.h      |   3 +
 drivers/net/wireless/ralink/rt2x00/rt2x00mac.c   |   4 +
 drivers/net/wireless/ralink/rt2x00/rt2x00queue.c |   2 +
 9 files changed, 259 insertions(+), 330 deletions(-)

-- 
2.7.5

Reply via email to