diff options
author | Johannes Berg <johannes.berg@intel.com> | 2018-06-01 10:32:55 +0200 |
---|---|---|
committer | Luca Coelho <luciano.coelho@intel.com> | 2018-09-28 08:57:28 +0300 |
commit | 0044f1716c4d943674684fd738c8f7aa9d05d248 (patch) | |
tree | 8efd4959dcee09081b9dfa6dea09b74fcd05a39b | |
parent | 5724d8b9e9723ba2816ab403939e64c792fd25cf (diff) | |
download | linux-0044f1716c4d943674684fd738c8f7aa9d05d248.tar.gz linux-0044f1716c4d943674684fd738c8f7aa9d05d248.tar.bz2 linux-0044f1716c4d943674684fd738c8f7aa9d05d248.zip |
iwlwifi: pcie: support transmitting SKBs with fraglist
We want to be able to build A-MSDUs in higher layers, e.g. by
xmit_more, so support transmitting SKBs with fraglist to use
it for such.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/pcie/tx.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/tx.c b/drivers/net/wireless/intel/iwlwifi/pcie/tx.c index 6b6b86458819..67820bfaba64 100644 --- a/drivers/net/wireless/intel/iwlwifi/pcie/tx.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/tx.c @@ -2408,10 +2408,18 @@ int iwl_trans_pcie_tx(struct iwl_trans *trans, struct sk_buff *skb, tb1_len))) goto out_err; } else { + struct sk_buff *frag; + if (unlikely(iwl_fill_data_tbs(trans, skb, txq, hdr_len, out_meta))) goto out_err; + skb_walk_frags(skb, frag) { + if (unlikely(iwl_fill_data_tbs(trans, frag, txq, 0, + out_meta))) + goto out_err; + } + trace_iwlwifi_dev_tx(trans->dev, skb, iwl_pcie_get_tfd(trans, txq, txq->write_ptr), |