svn commit: r312854 - head/sys/net80211

Adrian Chadd adrian at FreeBSD.org
Fri Jan 27 01:24:26 UTC 2017


Author: adrian
Date: Fri Jan 27 01:24:24 2017
New Revision: 312854
URL: https://svnweb.freebsd.org/changeset/base/312854

Log:
  [net80211] prepare configuration checks for VHT, fragment-offload and seqno-offload.
  
  * allocate an ext bit for fragment offload.  Some NICs (like the ath10k
    hardware in native wifi or 802.3 mode) support doing packet fragmentation
    in firmware/hardware, so we don't have to do it here.
  
  * allocate an ext bit for VHT and start using it.

Modified:
  head/sys/net80211/ieee80211_var.h

Modified: head/sys/net80211/ieee80211_var.h
==============================================================================
--- head/sys/net80211/ieee80211_var.h	Fri Jan 27 01:17:00 2017	(r312853)
+++ head/sys/net80211/ieee80211_var.h	Fri Jan 27 01:24:24 2017	(r312854)
@@ -93,10 +93,13 @@
  * says that VHT is supported - and then this macro can be
  * changed.
  */
-#define	IEEE80211_CONF_VHT(ic)		((ic)->ic_vhtcaps != 0)
+#define	IEEE80211_CONF_VHT(ic)			\
+	    ((ic)->ic_flags_ext & IEEE80211_FEXT_VHT)
 
 #define	IEEE80211_CONF_SEQNO_OFFLOAD(ic)	\
 	    ((ic)->ic_flags_ext & IEEE80211_FEXT_SEQNO_OFFLOAD)
+#define	IEEE80211_CONF_FRAG_OFFLOAD(ic)	\
+	    ((ic)->ic_flags_ext & IEEE80211_FEXT_FRAG_OFFLOAD)
 
 /*
  * 802.11 control state is split into a common portion that maps
@@ -633,11 +636,14 @@ MALLOC_DECLARE(M_80211_VAP);
 #define	IEEE80211_FEXT_UNIQMAC	 0x00040000	/* CONF: user or computed mac */
 #define	IEEE80211_FEXT_SCAN_OFFLOAD	0x00080000	/* CONF: scan is fully offloaded */
 #define	IEEE80211_FEXT_SEQNO_OFFLOAD	0x00100000	/* CONF: driver does seqno insertion/allocation */
+#define	IEEE80211_FEXT_FRAG_OFFLOAD	0x00200000	/* CONF: hardware does 802.11 fragmentation + assignment */
+#define	IEEE80211_FEXT_VHT	0x00400000	/* CONF: VHT support */
 
 #define	IEEE80211_FEXT_BITS \
 	"\20\2INACT\3SCANWAIT\4BGSCAN\5WPS\6TSN\7SCANREQ\10RESUME" \
 	"\0114ADDR\12NONEPR_PR\13SWBMISS\14DFS\15DOTD\16STATEWAIT\17REINIT" \
-	"\20BPF\21WDSLEGACY\22PROBECHAN\23UNIQMAC\24SCAN_OFFLOAD\25SEQNO_OFFLOAD"
+	"\20BPF\21WDSLEGACY\22PROBECHAN\23UNIQMAC\24SCAN_OFFLOAD\25SEQNO_OFFLOAD" \
+	"\26VHT"
 
 /* ic_flags_ht/iv_flags_ht */
 #define	IEEE80211_FHT_NONHT_PR	 0x00000001	/* STATUS: non-HT sta present */


More information about the svn-src-all mailing list