aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmitkumar Karwar <akarwar@marvell.com>2014-04-14 18:32:51 -0400
committerJohn W. Linville <linville@tuxdriver.com>2014-04-22 15:06:29 -0400
commitb2a13a25e87db9db56bc07095a2d20435c27df7a (patch)
tree7e268c60a96f268a0a548e65b3d3c89a90ecc06e
parente1aa93a47ddd13e30f95684f96ff90729b163f64 (diff)
mwifiex: improve AMSDU packet aggregation for PCIe and SDIO
For PCIe, aggregate more AMSDU packets till PCIe TXBD is full. For SDIO, aggregation was disabled for AMSDU packets because AMSDU aggregated packet size is already 4K or 8K, SDIO Multiport Aggregation feature didn't use to gain much previously. Now with increased multiport aggregation buffer, we can enable it for AMSDU packets. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/mwifiex/11n_aggr.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/drivers/net/wireless/mwifiex/11n_aggr.c b/drivers/net/wireless/mwifiex/11n_aggr.c
index 63211707f939..b179652e50b3 100644
--- a/drivers/net/wireless/mwifiex/11n_aggr.c
+++ b/drivers/net/wireless/mwifiex/11n_aggr.c
@@ -236,18 +236,11 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
236 ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_USB_EP_DATA, 236 ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_USB_EP_DATA,
237 skb_aggr, NULL); 237 skb_aggr, NULL);
238 } else { 238 } else {
239 /* 239 if (skb_src)
240 * Padding per MSDU will affect the length of next 240 tx_param.next_pkt_len =
241 * packet and hence the exact length of next packet 241 skb_src->len + sizeof(struct txpd);
242 * is uncertain here. 242 else
243 * 243 tx_param.next_pkt_len = 0;
244 * Also, aggregation of transmission buffer, while
245 * downloading the data to the card, wont gain much
246 * on the AMSDU packets as the AMSDU packets utilizes
247 * the transmission buffer space to the maximum
248 * (adapter->tx_buf_size).
249 */
250 tx_param.next_pkt_len = 0;
251 244
252 ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA, 245 ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA,
253 skb_aggr, &tx_param); 246 skb_aggr, &tx_param);