aboutsummaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch')
-rw-r--r--package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch116
1 files changed, 0 insertions, 116 deletions
diff --git a/package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch b/package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch
deleted file mode 100644
index c454165182..0000000000
--- a/package/mac80211/patches/318-rt2x00-conf_tx-only-need-register-access-for-WMM.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From bbb27190d504b453625d1a663124b2b1cec0fe8b Mon Sep 17 00:00:00 2001
-From: Ivo van Doorn <IvDoorn@gmail.com>
-Date: Sat, 17 Jan 2009 20:25:27 +0100
-Subject: [PATCH] rt2x00: conf_tx() only need register access for WMM queues
-
-conf_tx() in rt61pci and rt73usb only have to check once
-if the queue_idx indicates a non-WMM queue and break of
-the function immediately if that is the case.
-
-Only the WMM queues need to have the TX configuration written
-to the registers.
-
-Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
----
- drivers/net/wireless/rt2x00/rt61pci.c | 30 +++++++++++++++---------------
- drivers/net/wireless/rt2x00/rt73usb.c | 30 +++++++++++++++---------------
- 2 files changed, 30 insertions(+), 30 deletions(-)
-
---- a/drivers/net/wireless/rt2x00/rt61pci.c
-+++ b/drivers/net/wireless/rt2x00/rt61pci.c
-@@ -2657,6 +2657,7 @@ static int rt61pci_conf_tx(struct ieee80
- struct rt2x00_field32 field;
- int retval;
- u32 reg;
-+ u32 offset;
-
- /*
- * First pass the configuration through rt2x00lib, that will
-@@ -2668,24 +2669,23 @@ static int rt61pci_conf_tx(struct ieee80
- if (retval)
- return retval;
-
-+ /*
-+ * We only need to perform additional register initialization
-+ * for WMM queues/
-+ */
-+ if (queue_idx >= 4)
-+ return 0;
-+
- queue = rt2x00queue_get_queue(rt2x00dev, queue_idx);
-
- /* Update WMM TXOP register */
-- if (queue_idx < 2) {
-- field.bit_offset = queue_idx * 16;
-- field.bit_mask = 0xffff << field.bit_offset;
--
-- rt2x00pci_register_read(rt2x00dev, AC_TXOP_CSR0, &reg);
-- rt2x00_set_field32(&reg, field, queue->txop);
-- rt2x00pci_register_write(rt2x00dev, AC_TXOP_CSR0, reg);
-- } else if (queue_idx < 4) {
-- field.bit_offset = (queue_idx - 2) * 16;
-- field.bit_mask = 0xffff << field.bit_offset;
--
-- rt2x00pci_register_read(rt2x00dev, AC_TXOP_CSR1, &reg);
-- rt2x00_set_field32(&reg, field, queue->txop);
-- rt2x00pci_register_write(rt2x00dev, AC_TXOP_CSR1, reg);
-- }
-+ offset = AC_TXOP_CSR0 + (sizeof(u32) * (!!(queue_idx & 2)));
-+ field.bit_offset = (queue_idx & 1) * 16;
-+ field.bit_mask = 0xffff << field.bit_offset;
-+
-+ rt2x00pci_register_read(rt2x00dev, offset, &reg);
-+ rt2x00_set_field32(&reg, field, queue->txop);
-+ rt2x00pci_register_write(rt2x00dev, offset, reg);
-
- /* Update WMM registers */
- field.bit_offset = queue_idx * 4;
---- a/drivers/net/wireless/rt2x00/rt73usb.c
-+++ b/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -2180,6 +2180,7 @@ static int rt73usb_conf_tx(struct ieee80
- struct rt2x00_field32 field;
- int retval;
- u32 reg;
-+ u32 offset;
-
- /*
- * First pass the configuration through rt2x00lib, that will
-@@ -2191,24 +2192,23 @@ static int rt73usb_conf_tx(struct ieee80
- if (retval)
- return retval;
-
-+ /*
-+ * We only need to perform additional register initialization
-+ * for WMM queues/
-+ */
-+ if (queue_idx >= 4)
-+ return 0;
-+
- queue = rt2x00queue_get_queue(rt2x00dev, queue_idx);
-
- /* Update WMM TXOP register */
-- if (queue_idx < 2) {
-- field.bit_offset = queue_idx * 16;
-- field.bit_mask = 0xffff << field.bit_offset;
--
-- rt2x00usb_register_read(rt2x00dev, AC_TXOP_CSR0, &reg);
-- rt2x00_set_field32(&reg, field, queue->txop);
-- rt2x00usb_register_write(rt2x00dev, AC_TXOP_CSR0, reg);
-- } else if (queue_idx < 4) {
-- field.bit_offset = (queue_idx - 2) * 16;
-- field.bit_mask = 0xffff << field.bit_offset;
--
-- rt2x00usb_register_read(rt2x00dev, AC_TXOP_CSR1, &reg);
-- rt2x00_set_field32(&reg, field, queue->txop);
-- rt2x00usb_register_write(rt2x00dev, AC_TXOP_CSR1, reg);
-- }
-+ offset = AC_TXOP_CSR0 + (sizeof(u32) * (!!(queue_idx & 2)));
-+ field.bit_offset = (queue_idx & 1) * 16;
-+ field.bit_mask = 0xffff << field.bit_offset;
-+
-+ rt2x00usb_register_read(rt2x00dev, offset, &reg);
-+ rt2x00_set_field32(&reg, field, queue->txop);
-+ rt2x00usb_register_write(rt2x00dev, offset, reg);
-
- /* Update WMM registers */
- field.bit_offset = queue_idx * 4;