Commit 822446d4 authored by Xinming Hu's avatar Xinming Hu Committed by Kalle Valo

mwifiex: check next packet length for usb tx aggregation

The next packet length will be used by interface driver, to check if the
next packet still could be aggregated.
Signed-off-by: default avatarXinming Hu <huxm@marvell.com>
Signed-off-by: default avatarCathy Luo <cluo@marvell.com>
Signed-off-by: default avatarGanapathi Bhat <gbhat@marvell.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent a2ca85ad
...@@ -250,15 +250,15 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv, ...@@ -250,15 +250,15 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
return 0; return 0;
} }
if (skb_src)
tx_param.next_pkt_len = skb_src->len + sizeof(struct txpd);
else
tx_param.next_pkt_len = 0;
if (adapter->iface_type == MWIFIEX_USB) { if (adapter->iface_type == MWIFIEX_USB) {
ret = adapter->if_ops.host_to_card(adapter, priv->usb_port, ret = adapter->if_ops.host_to_card(adapter, priv->usb_port,
skb_aggr, NULL); skb_aggr, &tx_param);
} else { } else {
if (skb_src)
tx_param.next_pkt_len =
skb_src->len + sizeof(struct txpd);
else
tx_param.next_pkt_len = 0;
ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA, ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA,
skb_aggr, &tx_param); skb_aggr, &tx_param);
......
...@@ -117,7 +117,7 @@ int mwifiex_process_tx(struct mwifiex_private *priv, struct sk_buff *skb, ...@@ -117,7 +117,7 @@ int mwifiex_process_tx(struct mwifiex_private *priv, struct sk_buff *skb,
if (adapter->iface_type == MWIFIEX_USB) { if (adapter->iface_type == MWIFIEX_USB) {
ret = adapter->if_ops.host_to_card(adapter, ret = adapter->if_ops.host_to_card(adapter,
priv->usb_port, priv->usb_port,
skb, NULL); skb, tx_param);
} else { } else {
ret = adapter->if_ops.host_to_card(adapter, ret = adapter->if_ops.host_to_card(adapter,
MWIFIEX_TYPE_DATA, MWIFIEX_TYPE_DATA,
...@@ -185,7 +185,7 @@ static int mwifiex_host_to_card(struct mwifiex_adapter *adapter, ...@@ -185,7 +185,7 @@ static int mwifiex_host_to_card(struct mwifiex_adapter *adapter,
if (adapter->iface_type == MWIFIEX_USB) { if (adapter->iface_type == MWIFIEX_USB) {
ret = adapter->if_ops.host_to_card(adapter, ret = adapter->if_ops.host_to_card(adapter,
priv->usb_port, priv->usb_port,
skb, NULL); skb, tx_param);
} else { } else {
ret = adapter->if_ops.host_to_card(adapter, ret = adapter->if_ops.host_to_card(adapter,
MWIFIEX_TYPE_DATA, MWIFIEX_TYPE_DATA,
......
...@@ -1363,13 +1363,13 @@ mwifiex_send_processed_packet(struct mwifiex_private *priv, ...@@ -1363,13 +1363,13 @@ mwifiex_send_processed_packet(struct mwifiex_private *priv,
spin_unlock_irqrestore(&priv->wmm.ra_list_spinlock, ra_list_flags); spin_unlock_irqrestore(&priv->wmm.ra_list_spinlock, ra_list_flags);
tx_param.next_pkt_len =
((skb_next) ? skb_next->len +
sizeof(struct txpd) : 0);
if (adapter->iface_type == MWIFIEX_USB) { if (adapter->iface_type == MWIFIEX_USB) {
ret = adapter->if_ops.host_to_card(adapter, priv->usb_port, ret = adapter->if_ops.host_to_card(adapter, priv->usb_port,
skb, NULL); skb, &tx_param);
} else { } else {
tx_param.next_pkt_len =
((skb_next) ? skb_next->len +
sizeof(struct txpd) : 0);
ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA, ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA,
skb, &tx_param); skb, &tx_param);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment