linux/drivers/net/wireless/intel/iwlwifi
Emmanuel Grumbach 943309d4aa iwlwifi: pcie: fix DMA memory mapping / unmapping
22000 devices (previously referenced as A000) can support
short transmit queues. This means that we have less DMA
descriptors (TFD) for those shorter queues.
Previous devices must still have 256 TFDs for each queue
even if those 256 TFDs point to fewer buffers.

When I introduced support for the short queues for 22000
I broke older devices by assuming that they can also have
less TFDs in their queues. This led to several problems:

1) the payload of the commands weren't unmapped properly
   which caused the SWIOTLB to complain at some point.
2) the hardware could get confused and we get hardware
   crashes.

The corresponding bugzilla entries are:

https://bugzilla.kernel.org/show_bug.cgi?id=198201
https://bugzilla.kernel.org/show_bug.cgi?id=198265

Cc: stable@vger.kernel.org # 4.14+
Fixes: 4ecab56160 ("iwlwifi: pcie: support short Tx queues for A000 device family")
Reviewed-by: Sharon, Sara <sara.sharon@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-01-05 13:54:22 +02:00
..
cfg iwlwifi: fix firmware names for 9000 and A000 series hw 2017-11-16 10:40:15 +02:00
dvm treewide: setup_timer() -> timer_setup() (2 field) 2017-11-21 15:57:09 -08:00
fw iwlwifi: fix access to prph when transport is stopped 2017-11-25 17:12:56 +02:00
mvm iwlwifi: mvm: mark MIC stripped MPDUs 2017-12-05 16:23:30 +02:00
pcie iwlwifi: pcie: fix DMA memory mapping / unmapping 2018-01-05 13:54:22 +02:00
Kconfig iwlwifi: make RTPM depend on EXPERT 2017-02-08 17:54:20 +02:00
Makefile Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-11-04 09:26:51 +09:00
iwl-agn-hw.h
iwl-config.h iwlwifi: fix PCI IDs and configuration mapping for 9000 series 2017-11-16 10:38:13 +02:00
iwl-context-info.h iwlwifi: pcie: add context information support 2017-04-11 15:19:34 +03:00
iwl-csr.h iwlwifi: remove dead code for internal devices only 2017-11-03 11:56:08 +02:00
iwl-debug.c
iwl-debug.h iwlwifi: acpi: add common code to read from ACPI 2017-10-06 15:22:28 +03:00
iwl-devtrace-data.h iwlwifi: simplify data tracepoint 2017-06-23 11:57:20 +03:00
iwl-devtrace-io.h iwlwifi: pcie: add MSI-X interrupt tracing 2017-06-29 20:27:48 +03:00
iwl-devtrace-iwlwifi.h iwlwifi: fix TX tracing for non-linear SKBs 2017-06-23 11:57:48 +03:00
iwl-devtrace-msg.h
iwl-devtrace-ucode.h
iwl-devtrace.c iwlwifi: don't export trace points that are used in iwlwifi only 2016-09-19 10:09:41 +03:00
iwl-devtrace.h iwlwifi: fix tracing when tx only is enabled 2017-07-21 12:26:38 +03:00
iwl-drv.c iwlwifi: remove dead code for internal devices only 2017-11-03 11:56:08 +02:00
iwl-drv.h iwlwifi: cleanup references to 8000 family in NVM code 2017-06-05 23:25:21 +03:00
iwl-eeprom-parse.c iwlwifi: advertise maximal MPDU length when Rx MQ is supported 2016-07-01 16:51:22 +03:00
iwl-eeprom-parse.h iwlwifi: remove useless iwl_free_nvm_data() function 2017-06-23 12:02:58 +03:00
iwl-eeprom-read.c
iwl-eeprom-read.h
iwl-fh.h iwlwifi: document transmit buffer bits better 2017-06-23 12:01:19 +03:00
iwl-io.c iwlwifi: fix nmi triggering from host 2017-08-09 21:14:43 +03:00
iwl-io.h iwlwifi: centralize 64 bit HW registers write 2016-07-06 10:22:08 +03:00
iwl-modparams.h iwlwifi: unify external & internal modparam names 2017-06-29 13:26:25 +03:00
iwl-nvm-parse.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers.git 2017-10-16 17:09:24 +03:00
iwl-nvm-parse.h iwlwifi: acpi: move function to get mcc into acpi code 2017-10-06 15:22:32 +03:00
iwl-op-mode.h
iwl-phy-db.c iwlwifi: mvm: add documentation for all command IDs 2017-06-29 13:26:24 +03:00
iwl-phy-db.h iwlwifi: mvm: remove redundant alloc_ctx parameter 2016-05-10 22:34:03 +03:00
iwl-prph.h iwlwifi: fix nmi triggering from host 2017-08-09 21:14:43 +03:00
iwl-scd.h
iwl-trans.c iwlwifi: trans: move ref/unref code to the common part of the transport 2017-10-06 14:57:20 +03:00
iwl-trans.h iwlwifi: mvm: enable RX offloading with TKIP and WEP 2017-12-05 16:23:30 +02:00