OpenCloudOS-Kernel/net/mac80211
Johannes Berg 8c358bcd09 mac80211: add time synchronisation with BSS for assoc
Some drivers (iwlegacy, iwlwifi and rt2x00) today use the
bss_conf.last_tsf value. By itself though that value is
completely worthless since it may be ancient. What really
is needed is synchronisation between some device time and
the TSF.

To clarify this, rename bss_conf.last_tsf to sync_tsf and
add sync_device_ts which is obtained from rx_status which
gets a new field device_timestamp for this purpose. This
is intentionally not using the mactime field since that
is used for other things and in IBSS is expected to sync
with the IBSS's TSF which isn't necessarily true for the
device timestamp.

Also, since we have the information and it's useful even
before the connection has been established, give all the
timing details to the driver before authenticating.

Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2012-07-12 12:10:46 +02:00
..
Kconfig mac80211: trace debug messages 2012-06-24 11:33:18 +02:00
Makefile mac80211: rename driver-trace file 2012-06-24 11:32:38 +02:00
aes_ccm.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_ccm.h mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.h mac80211: fix CMAC races 2011-07-08 11:11:20 -04:00
agg-rx.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
agg-tx.c mac80211: request TX status for BlockAck Requests 2012-07-07 21:35:42 +02:00
cfg.c nl80211: move scan API to wdev 2012-07-12 12:10:41 +02:00
cfg.h
chan.c mac80211: allow channel change while mesh is down 2012-06-05 15:21:47 -04:00
debug.h mac80211: trace debug messages 2012-06-24 11:33:18 +02:00
debugfs.c mac80211: redesign scan RX 2012-07-12 12:10:44 +02:00
debugfs.h simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
debugfs_key.c mac80211: fix debugfs default key links 2012-07-06 08:33:04 +02:00
debugfs_key.h mac80211: support separate default keys 2010-12-13 15:23:29 -05:00
debugfs_netdev.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
debugfs_netdev.h mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
debugfs_sta.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2012-04-12 13:49:28 -04:00
debugfs_sta.h
driver-ops.h mac80211: add TX prepare API 2012-07-03 13:50:34 +02:00
event.c cfg80211: use proper allocation flags 2009-07-10 15:01:49 -04:00
ht.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
ibss.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
ieee80211_i.h mac80211: add time synchronisation with BSS for assoc 2012-07-12 12:10:46 +02:00
iface.c mac80211: make scan_sdata pointer usable with RCU 2012-07-12 12:10:43 +02:00
key.c mac80211: remove ieee80211_key_removed 2012-07-09 14:49:15 +02:00
key.h mac80211: allow driver to disconnect after resume 2011-07-13 14:49:43 -04:00
led.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
led.h mac80211: selective throughput LED trigger active 2010-12-22 14:33:37 -05:00
main.c mac80211: track scheduled scan virtual interface 2012-07-12 12:10:43 +02:00
mesh.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
mesh.h {nl,cfg,mac}80211: implement dot11MeshHWMPconfirmationInterval 2012-06-18 13:55:15 +02:00
mesh_hwmp.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
mesh_pathtbl.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
mesh_plink.c mac80211: don't expose ieee80211_add_srates_ie() 2012-06-28 10:35:50 +02:00
mesh_sync.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
michael.c mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
michael.h mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
mlme.c mac80211: add time synchronisation with BSS for assoc 2012-07-12 12:10:46 +02:00
offchannel.c cfg80211: use wdev in mgmt-tx/ROC APIs 2012-07-09 14:51:47 +02:00
pm.c mac80211: fix cleanup if driver suspend callback fails 2012-06-20 17:39:51 +02:00
rate.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
rate.h mac80211: notify driver of rate control updates 2012-04-10 14:54:08 -04:00
rc80211_minstrel.c mac80211: remove hw.conf.channel usage where possible 2012-04-13 14:32:50 -04:00
rc80211_minstrel.h minstrel_ht: fixed rate mode through debugfs 2011-06-01 15:12:29 -04:00
rc80211_minstrel_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rc80211_minstrel_ht.c mac80211: remove hw.conf.channel usage where possible 2012-04-13 14:32:50 -04:00
rc80211_minstrel_ht.h minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel_ht_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rc80211_pid.h Fix common misspellings 2011-03-31 11:26:23 -03:00
rc80211_pid_algo.c net: fix assignment of 0/1 to bool variables. 2011-12-19 22:27:29 -05:00
rc80211_pid_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rx.c mac80211: redesign scan RX 2012-07-12 12:10:44 +02:00
scan.c mac80211: add time synchronisation with BSS for assoc 2012-07-12 12:10:46 +02:00
spectmgmt.c mac80211: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
sta_info.c mac80211: clean up debugging 2012-06-24 11:32:29 +02:00
sta_info.h mac80211: add missing kernel-doc 2012-06-12 13:56:41 +02:00
status.c cfg80211: use wdev in mgmt-tx/ROC APIs 2012-07-09 14:51:47 +02:00
tkip.c mac80211: remove TKIP debug 2012-06-22 11:26:58 +02:00
tkip.h mac80211: fix TKIP races, make API easier to use 2011-07-08 11:11:19 -04:00
trace.c mac80211: trace debug messages 2012-06-24 11:33:18 +02:00
trace.h mac80211: add time synchronisation with BSS for assoc 2012-07-12 12:10:46 +02:00
tx.c mac80211: reduce IEEE80211_TX_MAX_RATES 2012-07-03 13:48:37 +02:00
util.c mac80211: fix invalid band deref building preq IEs 2012-07-12 12:10:42 +02:00
wep.c mac80211: fix network header location when adding encryption headers 2012-05-16 12:47:43 -04:00
wep.h mac80211: move RX WEP weak IV counting 2012-03-13 14:54:16 -04:00
wme.c mac80211: save wmm_acm per sdata 2012-06-20 17:35:22 +02:00
wme.h mac80211: save wmm_acm per sdata 2012-06-20 17:35:22 +02:00
wpa.c mac80211: fix network header location when adding encryption headers 2012-05-16 12:47:43 -04:00
wpa.h mac80211: fix tx->skb NULL pointer dereference 2012-01-16 15:01:16 -05:00