linux/drivers/net/wireless/iwlwifi
Eran Harary 8d193ca26c iwlwifi: mvm: don't power off the device between INIT and OPER firmwares
Our device needs two different firmwares: the INIT firmware
and the operational (OPER) firmware. The first one is run
when the driver loads and it returns calibrations results
as well as the NVM. The second one implements the WiFi
protocol.

If the wlan interface is not brought up, the device is put
to low power state: no firmware will be running. When the
interface is brought up, we would run the OPER firmware
only and reuse the results of the run of the INIT firmware
when the driver was loaded. This is changing with this
patch.
We now run the INIT firmware every time mac80211 calls
start(). The penalty for that is minimal since the INIT
firwmare run fast. I now also avoid to power down the device
between the INIT and OPER firmware on certains buses.

The motivation for this change is that there are components
on the device (MFUART) that are triggered by the INIT
firmware and need the device to be powered up in order to
keep running. Powering the device down between the INIT and
OPER firmware would stop these components and prevent them
from running again since they are triggered by the INIT
firmware only.
The new flow allows this and also allows to trigger these
components again when the interface is brought up after
it has been brought down.

Signed-off-by: Eran Harary <eran.harary@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
2015-04-28 14:58:51 +03:00
..
dvm Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-04-02 16:16:53 -04:00
mvm iwlwifi: mvm: don't power off the device between INIT and OPER firmwares 2015-04-28 14:58:51 +03:00
pcie iwlwifi: mvm: don't power off the device between INIT and OPER firmwares 2015-04-28 14:58:51 +03:00
iwl-1000.c iwlwifi: fix max_ht_ampdu_exponent for older devices 2015-03-12 09:57:21 +02:00
iwl-2000.c iwlwifi: fix max_ht_ampdu_exponent for older devices 2015-03-12 09:57:21 +02:00
iwl-5000.c iwlwifi: fix max_ht_ampdu_exponent for older devices 2015-03-12 09:57:21 +02:00
iwl-6000.c iwlwifi: fix max_ht_ampdu_exponent for older devices 2015-03-12 09:57:21 +02:00
iwl-7000.c iwlwifi: bump API to 13 for devices that use iwlmvm 2015-03-12 09:57:32 +02:00
iwl-8000.c iwlwifi: 8000: change PNVM in case it doesn't match to the HW step 2015-03-30 08:58:08 +03:00
iwl-agn-hw.h iwlwifi: mvm: fix bug with OTP memory size 2014-05-06 20:40:01 +03:00
iwl-config.h wireless: Use bool function returns of true/false instead of 1/0 2015-04-07 20:10:23 +03:00
iwl-csr.h iwlwifi: mvm: support family 8000 C step 2015-01-22 17:55:20 +02:00
iwl-debug.c iwlwifi: use dev_printk instead of dev_dbg for debug logs 2014-05-13 13:52:22 +03:00
iwl-debug.h iwlwifi: mvm: add MCC update FW API 2015-03-12 09:57:21 +02:00
iwl-devtrace-data.h iwlwifi: Move each system tracepoints to their own header 2015-04-08 09:38:49 -04:00
iwl-devtrace-io.h iwlwifi: Move each system tracepoints to their own header 2015-04-08 09:38:49 -04:00
iwl-devtrace-iwlwifi.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2015-04-15 09:00:47 -07:00
iwl-devtrace-msg.h iwlwifi: Move each system tracepoints to their own header 2015-04-08 09:38:49 -04:00
iwl-devtrace-ucode.h iwlwifi: Move each system tracepoints to their own header 2015-04-08 09:38:49 -04:00
iwl-devtrace.c iwlwifi: don't export tracepoints unnecessarily 2014-09-03 22:49:03 +03:00
iwl-devtrace.h iwlwifi: Move each system tracepoints to their own header 2015-04-08 09:38:49 -04:00
iwl-drv.c * some more work on LAR 2015-04-07 19:55:57 +03:00
iwl-drv.h iwlwifi: fix spelling errors 2015-04-02 09:29:13 +03:00
iwl-eeprom-parse.c iwlwifi: change max HT and VHT A-MPDU exponent 2014-11-23 19:57:30 +02:00
iwl-eeprom-parse.h iwlwifi: iwlmvm: LAR: disable LAR support due to NVM vs TLV conflict 2015-03-12 09:57:27 +02:00
iwl-eeprom-read.c iwlwifi: fix spelling errors 2015-04-02 09:29:13 +03:00
iwl-eeprom-read.h
iwl-fh.h iwlwifi: fix spelling errors 2015-04-02 09:29:13 +03:00
iwl-fw-error-dump.h iwlwifi: mvm: add trigger for time events 2015-04-02 09:29:13 +03:00
iwl-fw-file.h iwlwifi: mvm: fix Tx Power firmware API 2015-04-19 17:06:20 +03:00
iwl-fw.h iwlwifi: mvm: add framework for triggers for fw dump 2015-03-02 08:20:28 +02:00
iwl-io.c iwlwifi: drop support for early versions of 8000 2015-03-26 09:15:36 +02:00
iwl-io.h iwlwifi: update nmi register 2014-05-15 19:50:51 +03:00
iwl-modparams.h iwlwifi: allow disabling LAR via module param 2015-03-12 09:57:29 +02:00
iwl-notif-wait.c
iwl-notif-wait.h
iwl-nvm-parse.c iwlwifi: drop support for early versions of 8000 2015-03-26 09:15:36 +02:00
iwl-nvm-parse.h iwlwifi: drop support for early versions of 8000 2015-03-26 09:15:36 +02:00
iwl-op-mode.h iwlwifi: fix spelling errors 2015-04-02 09:29:13 +03:00
iwl-phy-db.c iwlwifi: fix spelling errors 2015-04-02 09:29:13 +03:00
iwl-phy-db.h
iwl-prph.h iwlwifi: drop support for early versions of 8000 2015-03-26 09:15:36 +02:00
iwl-scd.h iwlwifi: pcie: prepare the enablement of 31 TFD queues 2015-02-01 15:57:20 +02:00
iwl-trans.h iwlwifi: mvm: don't power off the device between INIT and OPER firmwares 2015-04-28 14:58:51 +03:00
Kconfig iwlwfifi: fix WANT_DEV_COREDUMP selection in Kconfig 2014-10-31 13:10:32 +02:00
Makefile