linux/drivers/net/wireless
Arik Nemtsov 98ee778306 iwlwifi: add very first D0i3 support
When the bus is in D0i3, we can't send regular commands to
the firmware. This means that we need to add a state to
remember what is our d0i3 state and make sure that only
d0i3 exit commands can be sent.
Add flags to CMD_ flags and transport status for this
purpose.

Commands with CMD_HIGH_PRIO set are queued at the head of
the command queue, behind other high priority commands.

Commands with CMD_SEND_IN_IDLE set can be sent while the
transport is idle (without taking rpm reference).

Commands with CMD_MAKE_TRANS_IDLE set indicate that command
completion should mark the transport as idle (and release
the bus).

Commands with CMD_WAKE_UP_TRANS set instruct the transport
to exit from idle when this command is completed.

The transport is marked as idle (STATUS_TRANS_IDLE) when
the FW enters D0i3 state. This bit is cleared when it
enters D0 state again.

Process only commands with CMD_SEND_IN_IDLE flag while the
transport is idle. Other enqueued commands will be
processed only later, right after exiting D0i3.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
2014-02-03 22:23:39 +02:00
..
ath ath9k: Fix RX interrupt mitigation 2014-01-23 14:02:45 -05:00
b43 b43: fix the wrong assignment of status.freq in b43_rx() 2014-01-23 14:02:45 -05:00
b43legacy b43legacy: Fix unload oops if firmware is not available 2014-01-13 14:50:03 -05:00
brcm80211 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
cw1200 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
hostap Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-10 10:59:40 -05:00
ipw2x00 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-10 10:59:40 -05:00
iwlegacy wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
iwlwifi iwlwifi: add very first D0i3 support 2014-02-03 22:23:39 +02:00
libertas Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-01-25 11:17:34 -08:00
libertas_tf
mwifiex Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-24 13:25:15 -05:00
orinoco wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
p54 p54: clamp properly instead of just truncating 2014-01-13 14:50:06 -05:00
prism54 wireless: slight optimization of addr compare 2013-12-26 13:31:35 -05:00
rt2x00 rt2x00: rt2800usb: mark D-Link DWA-137 as supported 2014-01-23 14:02:45 -05:00
rtl818x wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
rtlwifi Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
ti Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
zd1211rw zd1211rw: slight optimization of addr compare 2013-12-26 13:31:33 -05:00
Kconfig cw1200: add driver for the ST-E CW1100 & CW1200 WLAN chipsets 2013-05-29 15:26:40 -04:00
Makefile cw1200: add driver for the ST-E CW1100 & CW1200 WLAN chipsets 2013-05-29 15:26:40 -04:00
adm8211.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
adm8211.h
airo.c wireless: airo: remove unnecessary pci_set_drvdata() 2013-09-26 15:13:42 -04:00
airo.h
airo_cs.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
at76c50x-usb.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2014-01-13 14:40:59 -05:00
at76c50x-usb.h
atmel.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
atmel.h drivers/net/wireless: Fix FSF address in file headers 2013-12-11 10:56:20 -05:00
atmel_cs.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
atmel_pci.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
mac80211_hwsim.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
mac80211_hwsim.h mac80211_hwsim: restore regulatory testing functionality 2014-01-10 20:12:59 +01:00
mwl8k.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2014-01-13 14:40:59 -05:00
ray_cs.c drivers/net/wireless: Fix FSF address in file headers 2013-12-11 10:56:20 -05:00
ray_cs.h
rayctl.h
rndis_wlan.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
wl3501.h
wl3501_cs.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-10 10:59:40 -05:00
zd1201.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-08-28 10:36:09 -04:00
zd1201.h