mirror_ubuntu-kernels/drivers/net/wireless/intel/iwlwifi
Emmanuel Grumbach 6eb5e529d7 iwlwifi: pcie: build an A-MSDU using TSO core
When the op_mode sends an skb whose payload is bigger than
MSS, PCIe will create an A-MSDU out of it. PCIe assumes
that the skb that is coming from the op_mode can fit in one
A-MSDU. It is the op_mode's responsibility to make sure
that this guarantee holds.

Additional headers need to be built for the subframes.
The TSO core code takes care of the IP / TCP headers and
the driver takes care of the 802.11 subframe headers.

These headers are stored on a per-cpu page that is re-used
for all the packets handled on that same CPU. Each skb
holds a reference to that page and releases the page when
it is reclaimed. When the page gets full, it is released
and a new one is allocated.

Since any SKB that doesn't go through the fast-xmit path
of mac80211 will be segmented, we can assume here that the
packet is not WEP / TKIP and has a proper SNAP header.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
2015-12-20 23:27:37 +02:00
..
dvm iwlwifi: clear ieee80211_tx_info->driver_data in the op_mode 2015-12-20 14:48:23 +02:00
mvm iwlwifi: clear ieee80211_tx_info->driver_data in the op_mode 2015-12-20 14:48:23 +02:00
pcie iwlwifi: pcie: build an A-MSDU using TSO core 2015-12-20 23:27:37 +02:00
iwl-1000.c
iwl-2000.c
iwl-5000.c
iwl-6000.c
iwl-7000.c
iwl-8000.c
iwl-9000.c
iwl-agn-hw.h
iwl-config.h
iwl-csr.h
iwl-debug.c
iwl-debug.h
iwl-devtrace-data.h iwlwifi: pcie: build an A-MSDU using TSO core 2015-12-20 23:27:37 +02:00
iwl-devtrace-io.h
iwl-devtrace-iwlwifi.h
iwl-devtrace-msg.h
iwl-devtrace-ucode.h
iwl-devtrace.c
iwl-devtrace.h
iwl-drv.c
iwl-drv.h
iwl-eeprom-parse.c
iwl-eeprom-parse.h
iwl-eeprom-read.c
iwl-eeprom-read.h
iwl-fh.h
iwl-fw-error-dump.h
iwl-fw-file.h
iwl-fw.h
iwl-io.c
iwl-io.h
iwl-modparams.h
iwl-notif-wait.c
iwl-notif-wait.h
iwl-nvm-parse.c
iwl-nvm-parse.h
iwl-op-mode.h
iwl-phy-db.c
iwl-phy-db.h
iwl-prph.h
iwl-scd.h
iwl-trans.c
iwl-trans.h iwlwifi: pcie: build an A-MSDU using TSO core 2015-12-20 23:27:37 +02:00
Kconfig
Makefile