linux/net/wireless
Johannes Berg 0172bb7507 cfg80211: use DS or HT operation IEs to determine BSS channel
Currently, mac80211 checks the DS params IE if present and
uses it for the (primary) BSS channel, instead of the one
that the frame was received on. This is particularly useful
in the 2.4 GHz band since a frame is often received on one
of the adjacent channels due to overlap.

Move this code to cfg80211 so other drivers also do this.

Additionally, on 5 GHz, in particular with some (possibly)
upcoming changes in 802.11ai and duplicate transmissions
when wider channels are used, something similar happens.
So if present, also use the (primary) channel information
contained in the HT operation IE.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2012-11-23 14:23:30 +01:00
..
.gitignore
ap.c cfg80211: store the ssid into wirless_dev in AP mode 2012-11-07 17:57:14 +01:00
chan.c cfg80211: add cfg80211 exported function tracing 2012-10-18 10:53:38 +02:00
core.c cfg80211: allow registering more than one beacon listener 2012-11-05 16:33:45 +01:00
core.h cfg80211: allow registering more than one beacon listener 2012-11-05 16:33:45 +01:00
db.txt
debugfs.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
debugfs.h
ethtool.c cfg80211: add wrappers for registered_device_ops 2012-10-18 10:53:37 +02:00
ethtool.h
genregdb.awk cfg80211: relicense reg.c reg.h and genregdb.awk to ISC 2012-01-04 14:30:41 -05:00
ibss.c cfg80211: add cfg80211 exported function tracing 2012-10-18 10:53:38 +02:00
Kconfig cfg80211: add CONFIG_CFG80211_CERTIFICATION_ONUS 2012-07-17 12:13:51 +02:00
lib80211.c lib80211: remove exports for functions not called by other modules 2011-08-09 15:42:36 -04:00
lib80211_crypt_ccmp.c net: Convert net_ratelimit uses to net_<level>_ratelimited 2012-05-15 13:45:03 -04:00
lib80211_crypt_tkip.c net: Convert net_ratelimit uses to net_<level>_ratelimited 2012-05-15 13:45:03 -04:00
lib80211_crypt_wep.c wireless: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
Makefile cfg80211: add tracing to rdev-ops 2012-10-18 10:53:37 +02:00
mesh.c cfg80211: add cfg80211 exported function tracing 2012-10-18 10:53:38 +02:00
mlme.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2012-10-23 11:41:46 -04:00
nl80211.c cfg80211: Add TDLS event to allow drivers to request operations 2012-11-19 15:47:32 +01:00
nl80211.h cfg80211/nl80211: Notify connection request failure in AP mode 2012-09-18 19:54:06 +02:00
radiotap.c wireless: add radiotap A-MPDU status field 2012-08-20 13:53:09 +02:00
rdev-ops.h cfg80211: allow per interface TX power setting 2012-10-30 09:11:34 +01:00
reg.c cfg80211: fix initialization of chan->max_reg_power 2012-10-18 17:18:48 +02:00
reg.h cfg80211: make regulatory_update() static 2012-07-17 12:16:40 +02:00
regdb.h cfg80211: relicense reg.c reg.h and genregdb.awk to ISC 2012-01-04 14:30:41 -05:00
scan.c cfg80211: use DS or HT operation IEs to determine BSS channel 2012-11-23 14:23:30 +01:00
sme.c cfg80211: add wrappers for registered_device_ops 2012-10-18 10:53:37 +02:00
sysfs.c cfg80211: add wrappers for registered_device_ops 2012-10-18 10:53:37 +02:00
sysfs.h
trace.c cfg80211: add tracing to rdev-ops 2012-10-18 10:53:37 +02:00
trace.h cfg80211: Add TDLS event to allow drivers to request operations 2012-11-19 15:47:32 +01:00
util.c wireless: add utility function to get P2P attribute 2012-11-06 13:24:52 +01:00
wext-compat.c cfg80211: allow per interface TX power setting 2012-10-30 09:11:34 +01:00
wext-compat.h cfg80211: remove unused wext handler exports 2011-08-08 14:26:29 -04:00
wext-core.c wext: include wireless event id when it has a size problem 2012-09-05 16:12:44 +02:00
wext-priv.c wext: fix potential private ioctl memory content leak 2010-09-20 13:41:40 -04:00
wext-proc.c net: spread __net_init, __net_exit 2010-01-17 19:16:02 -08:00
wext-sme.c cfg80211: clarify set_channel APIs 2012-06-06 15:18:17 -04:00
wext-spy.c wireless: Convert compare_ether_addr to ether_addr_equal 2012-05-09 20:49:19 -04:00