linux/drivers/net/wireless/iwlwifi
Johannes Berg e312c24cf8 iwlwifi: automatically adjust sleep level
Depending on required latency requested by pm_qos (via mac80211)
we can automatically adjust the sleep state. Also, mac80211 has
a user-visible dynamic sleep feature where we are supposed to
stay awake after sending/receiving frames to better receive
response frames to our packets, this can be integrated into the
sleep command.

Currently, and this patch doesn't change that yet, we default
to using sleep level 1 if PS is enabled. With a module parameter
to iwlcore, automatic adjustment to changing network latency
requirements can be enabled -- this isn't yet the default due
to requiring more testing.

The goal is to enable automatic adjustment and then go into the
deepest possible sleep state possible depending on the networking
latency requirements.

This patch does, however, enable IEEE80211_HW_SUPPORTS_DYNAMIC_PS
to avoid the double-timer (one in software and one in the device)
when transmitting -- the exact timeout may be ignored but that is
not of big concern.

Note also that we keep the hard-coded power indices around for
thermal throttling -- the specification of that calls for using
the specified power levels. Those can also be selected in debugfs
to allow easier testing of such parameters.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-08-14 09:13:50 -04:00
..
iwl3945-base.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-1000.c iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-3945-fh.h
iwl-3945-hw.h iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-3945-led.c iwlwifi: remove command callback return value 2009-07-27 15:24:22 -04:00
iwl-3945-led.h iwl3945: use iwl_led structure 2009-03-16 18:09:46 -04:00
iwl-3945-rs.c mac80211: add helper for management / no-ack frame rate decision 2009-07-24 15:05:16 -04:00
iwl-3945.c iwlwifi: Traffic type and counter for debugFs 2009-08-14 09:13:47 -04:00
iwl-3945.h iwlwifi: fix up command sending 2009-07-27 15:24:21 -04:00
iwl-4965-hw.h iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-4965.c iwlwifi: revert uCode Alive notification with timeout 2009-08-14 09:13:48 -04:00
iwl-5000-hw.h iwlwifi: Temperature sensor voltage reading for 5150 2009-05-22 14:06:03 -04:00
iwl-5000.c iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-6000-hw.h
iwl-6000.c iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-agn-rs.c iwlwifi: refactor some thermal throttle code 2009-08-14 09:13:50 -04:00
iwl-agn-rs.h iwlagn: improve rate scale table search 2009-05-11 15:24:01 -04:00
iwl-agn.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-calib.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-calib.h
iwl-commands.h iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-core.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-core.h iwlwifi: fix missing EXPORT_SYMBOL 2009-08-14 09:13:50 -04:00
iwl-csr.h iwlwifi: Distinguish power amplifier for 6000 series 2009-08-04 16:44:22 -04:00
iwl-debug.h iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-debugfs.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-dev.h iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-eeprom.c iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-eeprom.h iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-fh.h
iwl-hcmd.c iwlwifi: Traffic type and counter for debugFs 2009-08-14 09:13:47 -04:00
iwl-helpers.h iwlwifi: change iwl_enable/disable_interrupts to "inline" 2009-07-24 15:05:26 -04:00
iwl-io.h iwlcore: register locks 2009-05-22 14:06:04 -04:00
iwl-led.c iwlwifi: Traffic type and counter for debugFs 2009-08-14 09:13:47 -04:00
iwl-led.h iwl3945: use iwl_led structure 2009-03-16 18:09:46 -04:00
iwl-power.c iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-power.h iwlwifi: automatically adjust sleep level 2009-08-14 09:13:50 -04:00
iwl-prph.h iwlagn: modify digital SVR for 1000 2009-07-24 15:05:23 -04:00
iwl-rx.c iwlwifi: Traffic type and counter for debugFs 2009-08-14 09:13:47 -04:00
iwl-scan.c iwlwifi: fix up command sending 2009-07-27 15:24:21 -04:00
iwl-spectrum.c
iwl-spectrum.h
iwl-sta.c iwlwifi: name changed from "fat" to "ht40" 2009-08-14 09:13:46 -04:00
iwl-sta.h iwlwifi: unify station management 2009-06-04 10:56:20 -04:00
iwl-tx.c iwlwifi: Traffic type and counter for debugFs 2009-08-14 09:13:47 -04:00
Kconfig iwlwifi: fix LED config option 2009-07-27 15:24:27 -04:00
Makefile iwlwifi: port to cfg80211 rfkill 2009-06-10 13:27:49 -04:00