aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/mwl8k.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c
index f152a25be59f..1bbcd7c1d02a 100644
--- a/drivers/net/wireless/mwl8k.c
+++ b/drivers/net/wireless/mwl8k.c
@@ -1125,10 +1125,12 @@ struct mwl8k_tx_desc {
1125 __le32 reserved; 1125 __le32 reserved;
1126 __le16 rate_info; 1126 __le16 rate_info;
1127 __u8 peer_id; 1127 __u8 peer_id;
1128 __u8 tx_frag_cnt; 1128 __u8 xmitcontrol;
1129} __packed; 1129} __packed;
1130 1130
1131#define MWL8K_TX_DESCS 128 1131#define MWL8K_TX_DESCS 128
1132#define MWL8K_XMITCONTROL_NON_AMPDU 0x04
1133
1132 1134
1133static int mwl8k_txq_init(struct ieee80211_hw *hw, int index) 1135static int mwl8k_txq_init(struct ieee80211_hw *hw, int index)
1134{ 1136{
@@ -1448,6 +1450,9 @@ mwl8k_txq_xmit(struct ieee80211_hw *hw, int index, struct sk_buff *skb)
1448 tx->peer_id = MWL8K_STA(tx_info->control.sta)->peer_id; 1450 tx->peer_id = MWL8K_STA(tx_info->control.sta)->peer_id;
1449 else 1451 else
1450 tx->peer_id = 0; 1452 tx->peer_id = 0;
1453
1454 if (priv->ap_fw)
1455 tx->xmitcontrol = MWL8K_XMITCONTROL_NON_AMPDU;
1451 wmb(); 1456 wmb();
1452 tx->status = cpu_to_le32(MWL8K_TXD_STATUS_FW_OWNED | txstatus); 1457 tx->status = cpu_to_le32(MWL8K_TXD_STATUS_FW_OWNED | txstatus);
1453 1458