38 lines
1.2 KiB
Diff
38 lines
1.2 KiB
Diff
|
Send EAPOL frames with voice priority by setting (the new)
|
||
|
TX_HW_ATTR_EAPOL_FRAME bit in tx attribute.
|
||
|
|
||
|
Sending EAPOL with voice priority fixes re-key
|
||
|
timeout issues during heavy traffic.
|
||
|
|
||
|
Signed-off-by: Igal Chernobelsky <igalc@ti.com>
|
||
|
Signed-off-by: Eliad Peller <eliad@wizery.com>
|
||
|
|
||
|
---
|
||
|
drivers/net/wireless/ti/wlcore/tx.c | 4 ++++
|
||
|
drivers/net/wireless/ti/wlcore/tx.h | 1 +
|
||
|
2 files changed, 5 insertions(+)
|
||
|
|
||
|
--- a/drivers/net/wireless/ti/wlcore/tx.c
|
||
|
+++ b/drivers/net/wireless/ti/wlcore/tx.c
|
||
|
@@ -362,6 +362,10 @@ static void wl1271_tx_fill_hdr(struct wl
|
||
|
ieee80211_has_protected(frame_control))
|
||
|
tx_attr |= TX_HW_ATTR_HOST_ENCRYPT;
|
||
|
|
||
|
+ /* send EAPOL frames as voice */
|
||
|
+ if (control->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO)
|
||
|
+ tx_attr |= TX_HW_ATTR_EAPOL_FRAME;
|
||
|
+
|
||
|
desc->tx_attr = cpu_to_le16(tx_attr);
|
||
|
|
||
|
wlcore_hw_set_tx_desc_csum(wl, desc, skb);
|
||
|
--- a/drivers/net/wireless/ti/wlcore/tx.h
|
||
|
+++ b/drivers/net/wireless/ti/wlcore/tx.h
|
||
|
@@ -37,6 +37,7 @@
|
||
|
#define TX_HW_ATTR_TX_CMPLT_REQ BIT(12)
|
||
|
#define TX_HW_ATTR_TX_DUMMY_REQ BIT(13)
|
||
|
#define TX_HW_ATTR_HOST_ENCRYPT BIT(14)
|
||
|
+#define TX_HW_ATTR_EAPOL_FRAME BIT(15)
|
||
|
|
||
|
#define TX_HW_ATTR_OFST_SAVE_RETRIES 0
|
||
|
#define TX_HW_ATTR_OFST_HEADER_PAD 1
|