summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/brcm80211/brcmsmac/main.h
diff options
context:
space:
mode:
authorSeth Forshee2012-11-15 15:07:55 +0100
committerJohn W. Linville2012-11-20 20:04:09 +0100
commit32d0f12a1611421abf70ff7c30d76c739aafad64 (patch)
tree0c310b85111380b9bcd4549d7de1dad8f2381f9d /drivers/net/wireless/brcm80211/brcmsmac/main.h
parentbrcmsmac: Remove unimplemented flow control functions (diff)
downloadkernel-qcow2-linux-32d0f12a1611421abf70ff7c30d76c739aafad64.tar.gz
kernel-qcow2-linux-32d0f12a1611421abf70ff7c30d76c739aafad64.tar.xz
kernel-qcow2-linux-32d0f12a1611421abf70ff7c30d76c739aafad64.zip
brcmsmac: Use IEEE 802.11 AC levels for pktq precedence levels
The mac80211 tx queues and brcmsmac DMA fifos both map directly to AC levels. Therefore it's much more straightforward to queue tx frames and choose the tx fifo based on the mac80211 queue instead of mapping 802.1D priority tags to precedence levels then back to AC levels. mac80211 already maps the 802.1D levels to the appropriate AC levels and queues management frames at the maximum priority, so the results should be identical. One functional change resulting from this patch is that AMPDU retries no longer get a priority boost to queue them ahead of packets with the same priority already in the tx queue. This behavior will be restored (in effect at least) in a later patch when the tx queue is removed. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Tested-by: Daniel Wagner <wagi@monom.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmsmac/main.h')
-rw-r--r--drivers/net/wireless/brcm80211/brcmsmac/main.h6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/main.h b/drivers/net/wireless/brcm80211/brcmsmac/main.h
index 0ab7d36a1445..4e3af67c7dd7 100644
--- a/drivers/net/wireless/brcm80211/brcmsmac/main.h
+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.h
@@ -101,9 +101,6 @@
#define DATA_BLOCK_TX_SUPR (1 << 4)
-/* 802.1D Priority to TX FIFO number for wme */
-extern const u8 prio2fifo[];
-
/* Ucode MCTL_WAKE override bits */
#define BRCMS_WAKE_OVERRIDE_CLKCTL 0x01
#define BRCMS_WAKE_OVERRIDE_PHYREG 0x02
@@ -534,7 +531,6 @@ struct brcms_c_info {
u16 wme_retries[IEEE80211_NUM_ACS];
u16 tx_prec_map;
- u16 fifo2prec_map[NFIFO];
struct brcms_bss_cfg *bsscfg;
@@ -641,7 +637,7 @@ extern void brcms_c_txfifo(struct brcms_c_info *wlc, uint fifo,
struct sk_buff *p, bool commit);
extern void brcms_c_txfifo_complete(struct brcms_c_info *wlc, uint fifo);
extern void brcms_c_txq_enq(struct brcms_c_info *wlc, struct scb *scb,
- struct sk_buff *sdu, uint prec);
+ struct sk_buff *sdu);
extern void brcms_c_print_txstatus(struct tx_status *txs);
extern int brcms_b_xmtfifo_sz_get(struct brcms_hardware *wlc_hw, uint fifo,
uint *blocks);