linux/drivers/net/wireless/intel/iwlwifi
Emmanuel Grumbach 2aabdbdc17 iwlwifi: pcie: enable interrupts before releasing the NIC's CPU
The NIC's CPU gets started after the firmware has been
written to its memory. The first thing it does is to
send an interrupt to let the driver know that it is
running. In order to get that interrupt, the driver needs
to make sure it is not masked. Of course, the interrupt
needs to be enabled in the driver before the CPU starts to
run.
I mistakenly inversed those two steps leading to races
which prevented the driver from getting the alive interrupt
from the firmware.
Fix that.

Cc: <stable@vger.kernel.org> [4.5+]
Fixes: a6bd005fe9 ("iwlwifi: pcie: fix RF-Kill vs. firmware load race")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
2016-07-06 02:09:54 +03:00
..
dvm iwlwifi: dvm: Remove unused array 'iwlagn_loose_lookup' 2016-07-06 01:26:19 +03:00
mvm iwlwifi: mvm: support new statistics notification 2016-07-06 02:08:57 +03:00
pcie iwlwifi: pcie: enable interrupts before releasing the NIC's CPU 2016-07-06 02:09:54 +03:00
iwl-1000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-2000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-5000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-6000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-7000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-8000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-9000.c iwlwifi: pcie: workaround HW shadow registers bug 2016-07-01 18:09:42 +03:00
iwl-a000.c iwlwifi: Add a000 HW family support 2016-07-06 02:09:50 +03:00
iwl-agn-hw.h
iwl-config.h iwlwifi: Add a000 HW family support 2016-07-06 02:09:50 +03:00
iwl-csr.h iwlwifi: pcie: workaround HW shadow registers bug 2016-07-01 18:09:42 +03:00
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 iwlwifi: mvm: adapt the firmware assert log to new firmware 2016-03-09 21:05:16 +02:00
iwl-devtrace-msg.h
iwl-devtrace-ucode.h
iwl-devtrace.c
iwl-devtrace.h
iwl-drv.c iwlwifi: change fw.mvm_fw to fw.type 2016-07-06 00:08:21 +03:00
iwl-drv.h
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: consider VHT 160MHz while parsing NVM 2016-05-10 22:14:49 +03:00
iwl-eeprom-read.c
iwl-eeprom-read.h
iwl-fh.h iwlwifi: pcie: poll RFH for RX DMA stop 2016-07-06 01:16:08 +03:00
iwl-fw-error-dump.h iwlwifi: Reserve iwl_fw_error_dump_type enum 2016-07-06 02:07:48 +03:00
iwl-fw-file.h iwlwifi: mvm: Support CSA countdown offloading 2016-07-01 18:09:45 +03:00
iwl-fw.h iwlwifi: change fw.mvm_fw to fw.type 2016-07-06 00:08:21 +03:00
iwl-io.c iwlwifi: add dump of RFH 2016-07-06 02:07:40 +03:00
iwl-io.h
iwl-modparams.h iwlwifi: advertise maximal MPDU length when Rx MQ is supported 2016-07-01 16:51:22 +03:00
iwl-notif-wait.c
iwl-notif-wait.h
iwl-nvm-parse.c iwlwifi: advertise maximal MPDU length when Rx MQ is supported 2016-07-01 16:51:22 +03:00
iwl-nvm-parse.h iwlwifi: refactor the code that reads the MAC address from the NVM 2016-03-07 13:33:00 +02:00
iwl-op-mode.h
iwl-phy-db.c iwlwifi: mvm: remove redundant alloc_ctx parameter 2016-05-10 22:34:03 +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: mvm: support dumping UMAC internal txfifos 2016-03-20 13:26:02 +02:00
iwl-scd.h
iwl-trans.c
iwl-trans.h iwlwifi: mvm: support dqa queue sharing 2016-07-06 00:47:41 +03:00
Kconfig iwlwifi: remove IWLWIFI_DEBUG_EXPERIMENTAL_UCODE 2016-05-10 22:34:05 +03:00
Makefile iwlwifi: Add a000 HW family support 2016-07-06 02:09:50 +03:00