linux/drivers/net/wireless/iwlwifi
Meenakshi Venkataraman 207ecc5eab iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state
WiFi throughput drops drastically when BT is turned on, BT and WiFi
are simultaneously transmitting/receiving traffic. This is particularly true
when BT has higher priority over WiFi, and hence the device defers TX frames.
The AP assumes that the channel is bad and reduces the data rate, implying
longer airtime, which exacerbates the problem further, resulting ultimately
in what is popularly called the "death-spiral" phenomenon. The use of PS-poll
in such scenarios guarantees a low but consistent throughput.

Since the death-spiral phenomenon is observed only when the RSSI is low, use
PS-poll only when RSSI is low and disable when high, with a known hysterisis.

This feature specifies the high and low thresholds and implements the
callbacks registered with mac80211, which will be called when threshold events
occur.

iwlwifi: dynamic pspoll: optimize rssi monitor code

Signed-off-by: Meenakshi Venkataraman <meenakshi.venkataraman@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-07-11 15:02:07 -04:00
..
iwl-1000.c iwlagn: remove double level temperature indirect call 2011-07-11 15:02:05 -04:00
iwl-2000.c iwlagn: use bt handler for 2030 and 135 series devices 2011-07-11 15:02:06 -04:00
iwl-5000-hw.h iwlagn: generic temperature location in EEPROM 2011-06-11 07:10:48 -07:00
iwl-5000.c iwlagn: remove double level temperature indirect call 2011-07-11 15:02:05 -04:00
iwl-6000-hw.h iwlagn: change Copyright to 2011 2011-04-07 15:51:37 -04:00
iwl-6000.c iwlagn: remove double level temperature indirect call 2011-07-11 15:02:05 -04:00
iwl-agn-calib.c iwlagn: remove the indirection for update_chain_flags 2011-07-11 15:02:04 -04:00
iwl-agn-calib.h iwlagn: clean up & autodetect statistics 2011-04-08 08:19:00 -07:00
iwl-agn-eeprom.c iwlagn: remove indirection for eeprom_query_addr 2011-07-11 15:02:05 -04:00
iwl-agn-hcmd.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-agn-hw.h iwlagn: move PCI power related functions to the PCI layer 2011-06-18 08:17:29 -07:00
iwl-agn-ict.c iwlagn: add get_dev to iwl_bus_ops 2011-06-18 08:06:24 -07:00
iwl-agn-lib.c iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-agn-rs.c iwlagn: change the logging level for aggregation enable check 2011-06-01 15:36:35 -04:00
iwl-agn-rs.h iwlagn: no 3945 define needed 2011-04-08 08:00:19 -07:00
iwl-agn-rxon.c iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-agn-sta.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-agn-tt.c iwlagn: use IWL_DEBUG_TEMP for temperature related debug 2011-06-11 07:10:25 -07:00
iwl-agn-tt.h iwlagn: change Copyright to 2011 2011-04-07 15:51:37 -04:00
iwl-agn-tx.c iwlagn: remove code duplication 2011-07-11 15:02:02 -04:00
iwl-agn-ucode.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-agn.c iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-agn.h iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-commands.h iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-core.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-core.h iwlagn: remove double level temperature indirect call 2011-07-11 15:02:05 -04:00
iwl-csr.h iwlagn: change Copyright to 2011 2011-04-07 15:51:37 -04:00
iwl-debug.h iwlagn: add get_dev to iwl_bus_ops 2011-06-18 08:06:24 -07:00
iwl-debugfs.c iwlagn: Remove un-necessary indirect call 2011-06-18 08:03:18 -07:00
iwl-dev.h iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state 2011-07-11 15:02:07 -04:00
iwl-devtrace.c iwlagn: change Copyright to 2011 2011-04-07 15:51:37 -04:00
iwl-devtrace.h iwlagn: more ucode error log info 2011-05-13 12:01:50 -07:00
iwl-eeprom.c iwlagn: remove indirection for eeprom_query_addr 2011-07-11 15:02:05 -04:00
iwl-eeprom.h iwlagn: remove indirection for eeprom_query_addr 2011-07-11 15:02:05 -04:00
iwl-fh.h iwlagn: remove the indirection for the dma channel num 2011-07-11 15:02:03 -04:00
iwl-hcmd.c iwlagn: consolidate the API that sends host commands and move to transport 2011-07-11 15:02:03 -04:00
iwl-helpers.h iwlwifi: fix stop/wake queue hacks 2011-06-20 15:16:32 -04:00
iwl-io.c iwlagn: introduce silent grabbing of NIC access 2011-04-30 08:39:22 -07:00
iwl-io.h iwlagn: move PCI related operations from probe and remove to PCI layer 2011-06-18 08:07:14 -07:00
iwl-led.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-led.h iwlagn: use direct call for led functions 2011-04-18 08:47:43 -07:00
iwl-pci.c iwlwifi: remove unnecessary read of PCI_CAP_ID_EXP 2011-07-06 15:05:41 -04:00
iwl-pci.h iwlagn: add a iwl_pci.[ch] files that will contain all PCI specific code 2011-06-18 08:05:23 -07:00
iwl-power.c iwlagn: remove the indirection for update_chain_flags 2011-07-11 15:02:04 -04:00
iwl-power.h iwlagn: move PCI power related functions to the PCI layer 2011-06-18 08:17:29 -07:00
iwl-prph.h iwlagn: scd memory boundary 2011-07-01 07:58:08 -07:00
iwl-rx.c iwlagn: remove double level temperature indirect call 2011-07-11 15:02:05 -04:00
iwl-scan.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-sta.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-sta.h iwlagn: change Copyright to 2011 2011-04-07 15:51:37 -04:00
iwl-sv-open.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-testmode.h iwlagn: re-define the testmode cmd and attr enum 2011-07-01 07:46:32 -07:00
iwl-trans.c iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-trans.h iwlagn: provide heplers to access the transport ops 2011-07-11 15:02:04 -04:00
iwl-tx.c iwlagn: add an API for TX stop 2011-07-11 15:02:01 -04:00
Kconfig iwlwifi: support the svtool messages interactions through nl80211 test mode 2011-05-06 10:44:46 -07:00
Makefile iwlagn: introduce transport layer and implement rx_init 2011-07-01 07:57:34 -07:00