summaryrefslogtreecommitdiff
path: root/sys/net80211/ieee80211_node.h
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2015-11-15 12:34:08 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2015-11-15 12:34:08 +0000
commit77fcb66609b87cf27f7e07e571cb4a447df60bad (patch)
tree589212d8257ff6e831dd23d0d2a1b5c294fb6fb3 /sys/net80211/ieee80211_node.h
parent0ff081cdb107a20c95198ab5c8d931b3c6c9d064 (diff)
Expose 11n mode to the ifmedia layer and introduce the concept of MCS.
Make sure 11n features are enabled only if media type is autoselect or 11n. 11n mode uses MCS (modulation & coding scheme) instead of rates like 11a/b/g. This means we'll have to take the current mode into account and decide whether to use a rate or an MCS for transmission. Receiving frames on legacy rates will still work in 11n mode. We just won't be using legacy rates to send data frames to an STA or AP we negotiated 11n features with. My initial plan was to grow the ieee80211_rateset structure and treat MCS just like rates. However, ieee80211_rateset corresponds to rates and xrates elements in management frames and is copied directly into such elements so its size cannot change. Thus, MCS stands on its own and corresponds to elements in management frames related to 11n HT capabilities. ok deraadt mpi phessler kettenis guenther
Diffstat (limited to 'sys/net80211/ieee80211_node.h')
-rw-r--r--sys/net80211/ieee80211_node.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_node.h b/sys/net80211/ieee80211_node.h
index 0f27250066e..59f17633cc4 100644
--- a/sys/net80211/ieee80211_node.h
+++ b/sys/net80211/ieee80211_node.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ieee80211_node.h,v 1.48 2015/11/15 10:07:03 stsp Exp $ */
+/* $OpenBSD: ieee80211_node.h,v 1.49 2015/11/15 12:34:07 stsp Exp $ */
/* $NetBSD: ieee80211_node.h,v 1.9 2004/04/30 22:57:32 dyoung Exp $ */
/*-
@@ -241,6 +241,8 @@ struct ieee80211_node {
/* Block Ack records */
struct ieee80211_tx_ba ni_tx_ba[IEEE80211_NUM_TID];
struct ieee80211_rx_ba ni_rx_ba[IEEE80211_NUM_TID];
+
+ int ni_txmcs; /* current MCS used for TX */
#endif
/* others */