OpenCloudOS-Kernel/net/wireless
Kalle Valo ffb9eb3d8b nl80211: add power save commands
The most needed command from nl80211, which Wireless Extensions had,
is support for power save mode. Add a simple command to make it possible
to enable and disable power save via nl80211.

I was also planning about extending the interface, for example adding the
timeout value, but after thinking more about this I decided not to do it.
Basically there were three reasons:

Firstly, the parameters for power save are very much hardware dependent.
Trying to find a unified interface which would work with all hardware, and
still make sense to users, will be very difficult.

Secondly, IEEE 802.11 power save implementation in Linux is still in state
of flux. We have a long way to still to go and there is no way to predict
what kind of implementation we will have after few years. And because we
need to support nl80211 interface a long time, practically forever, adding
now parameters to nl80211 might create maintenance problems later on.

Third issue are the users. Power save parameters are mostly used for
debugging, so debugfs is better, more flexible, interface for this.
For example, wpa_supplicant currently doesn't configure anything related
to power save mode. It's better to strive that kernel can automatically
optimise the power save parameters, like with help of pm qos network
and other traffic parameters.

Later on, when we have better understanding of power save, we can extend
this command with more features, if there's a need for that.

Signed-off-by: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-02-19 15:52:40 -05:00
..
.gitignore wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
Kconfig wireless: remove CONFIG_WIRELESS_OLD_REGULATORY 2009-12-28 16:31:37 -05:00
Makefile wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
chan.c cfg80211: add remain-on-channel command 2009-12-28 16:55:02 -05:00
core.c nl80211: add power save commands 2010-02-19 15:52:40 -05:00
core.h cfg80211/mac80211: allow registering for and sending action frames 2010-02-15 16:14:15 -05:00
db.txt wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
debugfs.c cfg80211/mac80211: use debugfs_remove_recursive 2009-10-30 16:49:18 -04:00
debugfs.h cfg80211/mac80211: use debugfs_remove_recursive 2009-10-30 16:49:18 -04:00
ethtool.c cfg80211: add firmware and hardware version to wiphy 2009-10-07 16:39:46 -04:00
ethtool.h net/wireless/ethtool.h: drop unnecessary include of linux/ethtool.h 2009-10-07 16:39:49 -04:00
genregdb.awk wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
ibss.c wireless : use a dedicated workqueue for cfg80211. 2009-11-28 15:05:00 -05:00
lib80211.c lib80211: consolidate crypt init routines 2008-11-21 11:08:17 -05:00
lib80211_crypt_ccmp.c lib80211: Cosmetics - make room for MIC/CRC near the actual calculation 2010-02-02 16:03:38 -05:00
lib80211_crypt_tkip.c lib80211: Introduce TKIP_HDR_LEN define for code clarity 2010-02-02 16:03:38 -05:00
lib80211_crypt_wep.c lib80211: absorb crypto bits from net/ieee80211 2008-11-21 11:08:17 -05:00
mlme.c cfg80211/mac80211: allow registering for and sending action frames 2010-02-15 16:14:15 -05:00
nl80211.c nl80211: add power save commands 2010-02-19 15:52:40 -05:00
nl80211.h cfg80211/mac80211: allow registering for and sending action frames 2010-02-15 16:14:15 -05:00
radiotap.c wireless: update radiotap parser 2010-02-08 16:50:53 -05:00
reg.c cfg80211: add regulatory hint disconnect support 2010-02-01 15:40:06 -05:00
reg.h cfg80211: add regulatory hint disconnect support 2010-02-01 15:40:06 -05:00
regdb.h wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
scan.c cfg80211: export cfg80211_find_ie 2010-01-26 11:53:20 -05:00
sme.c cfg80211: add regulatory hint disconnect support 2010-02-01 15:40:06 -05:00
sysfs.c cfg80211: export multiple MAC addresses in sysfs 2010-01-22 16:11:16 -05:00
sysfs.h [WIRELESS] cfg80211: New wireless config infrastructure. 2007-04-25 22:29:41 -07:00
util.c mac80211: Account HT Control field in Data frame hdrlen according to 802.11n-2009 2010-01-22 16:11:27 -05:00
wext-compat.c nl80211: add power save commands 2010-02-19 15:52:40 -05:00
wext-compat.h cfg80211: validate channel settings across interfaces 2009-08-14 09:13:42 -04:00
wext-core.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 2009-12-04 13:25:15 -08:00
wext-priv.c wext: refactor 2009-10-07 16:39:43 -04:00
wext-proc.c wext: refactor 2009-10-07 16:39:43 -04:00
wext-sme.c cfg80211: don't set privacy w/o key 2009-09-28 16:55:04 -04:00
wext-spy.c wext: refactor 2009-10-07 16:39:43 -04:00