aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-02-05 10:54:31 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-02-11 12:44:59 -0500
commit8cef2c9df88fdd13f518e6607de9d664b31f26cc (patch)
treef8a4d29db6012ad3468a5d9435562fc1f383209a /include/net
parent83c7aa1a1475ae1c42640ab6e4559016142efc67 (diff)
cfg80211: move TSF into IEs
While technically the TSF isn't an IE, it can be necessary to distinguish between the TSF from a beacon and a probe response, in particular in order to know the next DTIM TBTT, as not all APs are spec compliant wrt. TSF==0 being a DTIM TBTT and thus the DTIM count needs to be taken into account as well. To allow this, move the TSF into the IE struct so it can be known whence it came. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/cfg80211.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index fb766314b3a1..77686ca28948 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1266,11 +1266,13 @@ enum cfg80211_signal_type {
1266 1266
1267/** 1267/**
1268 * struct cfg80211_bss_ie_data - BSS entry IE data 1268 * struct cfg80211_bss_ie_data - BSS entry IE data
1269 * @tsf: TSF contained in the frame that carried these IEs
1269 * @rcu_head: internal use, for freeing 1270 * @rcu_head: internal use, for freeing
1270 * @len: length of the IEs 1271 * @len: length of the IEs
1271 * @data: IE data 1272 * @data: IE data
1272 */ 1273 */
1273struct cfg80211_bss_ies { 1274struct cfg80211_bss_ies {
1275 u64 tsf;
1274 struct rcu_head rcu_head; 1276 struct rcu_head rcu_head;
1275 int len; 1277 int len;
1276 u8 data[]; 1278 u8 data[];
@@ -1284,7 +1286,6 @@ struct cfg80211_bss_ies {
1284 * 1286 *
1285 * @channel: channel this BSS is on 1287 * @channel: channel this BSS is on
1286 * @bssid: BSSID of the BSS 1288 * @bssid: BSSID of the BSS
1287 * @tsf: timestamp of last received update
1288 * @beacon_interval: the beacon interval as from the frame 1289 * @beacon_interval: the beacon interval as from the frame
1289 * @capability: the capability field in host byte order 1290 * @capability: the capability field in host byte order
1290 * @ies: the information elements (Note that there is no guarantee that these 1291 * @ies: the information elements (Note that there is no guarantee that these
@@ -1304,8 +1305,6 @@ struct cfg80211_bss_ies {
1304 * @priv: private area for driver use, has at least wiphy->bss_priv_size bytes 1305 * @priv: private area for driver use, has at least wiphy->bss_priv_size bytes
1305 */ 1306 */
1306struct cfg80211_bss { 1307struct cfg80211_bss {
1307 u64 tsf;
1308
1309 struct ieee80211_channel *channel; 1308 struct ieee80211_channel *channel;
1310 1309
1311 const struct cfg80211_bss_ies __rcu *ies; 1310 const struct cfg80211_bss_ies __rcu *ies;