Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Nov 2016 21:12:13 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r308811 - head/sys/net80211
Message-ID:  <201611182112.uAILCDXv087590@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Fri Nov 18 21:12:13 2016
New Revision: 308811
URL: https://svnweb.freebsd.org/changeset/base/308811

Log:
  [net80211] shuffle IEEE80211_C and HTC bits over to _ieee80211.h so userland can use this.
  
  Reviewed by:	avos
  Differential Revision:	https://reviews.freebsd.org/D8553

Modified:
  head/sys/net80211/_ieee80211.h
  head/sys/net80211/ieee80211_var.h

Modified: head/sys/net80211/_ieee80211.h
==============================================================================
--- head/sys/net80211/_ieee80211.h	Fri Nov 18 21:09:57 2016	(r308810)
+++ head/sys/net80211/_ieee80211.h	Fri Nov 18 21:12:13 2016	(r308811)
@@ -402,4 +402,71 @@ struct ieee80211_mimo_info {
 	uint8_t		pad[2];
 	uint32_t	evm[3];		/* EVM data */
 };
+
+/*
+ * ic_caps/iv_caps: device driver capabilities
+ */
+/* 0x2e available */
+#define	IEEE80211_C_STA		0x00000001	/* CAPABILITY: STA available */
+#define	IEEE80211_C_8023ENCAP	0x00000002	/* CAPABILITY: 802.3 encap */
+#define	IEEE80211_C_FF		0x00000040	/* CAPABILITY: ATH FF avail */
+#define	IEEE80211_C_TURBOP	0x00000080	/* CAPABILITY: ATH Turbo avail*/
+#define	IEEE80211_C_IBSS	0x00000100	/* CAPABILITY: IBSS available */
+#define	IEEE80211_C_PMGT	0x00000200	/* CAPABILITY: Power mgmt */
+#define	IEEE80211_C_HOSTAP	0x00000400	/* CAPABILITY: HOSTAP avail */
+#define	IEEE80211_C_AHDEMO	0x00000800	/* CAPABILITY: Old Adhoc Demo */
+#define	IEEE80211_C_SWRETRY	0x00001000	/* CAPABILITY: sw tx retry */
+#define	IEEE80211_C_TXPMGT	0x00002000	/* CAPABILITY: tx power mgmt */
+#define	IEEE80211_C_SHSLOT	0x00004000	/* CAPABILITY: short slottime */
+#define	IEEE80211_C_SHPREAMBLE	0x00008000	/* CAPABILITY: short preamble */
+#define	IEEE80211_C_MONITOR	0x00010000	/* CAPABILITY: monitor mode */
+#define	IEEE80211_C_DFS		0x00020000	/* CAPABILITY: DFS/radar avail*/
+#define	IEEE80211_C_MBSS	0x00040000	/* CAPABILITY: MBSS available */
+#define	IEEE80211_C_SWSLEEP	0x00080000	/* CAPABILITY: do sleep here */
+#define	IEEE80211_C_SWAMSDUTX	0x00100000	/* CAPABILITY: software A-MSDU TX */
+/* 0x7c0000 available */
+#define	IEEE80211_C_WPA1	0x00800000	/* CAPABILITY: WPA1 avail */
+#define	IEEE80211_C_WPA2	0x01000000	/* CAPABILITY: WPA2 avail */
+#define	IEEE80211_C_WPA		0x01800000	/* CAPABILITY: WPA1+WPA2 avail*/
+#define	IEEE80211_C_BURST	0x02000000	/* CAPABILITY: frame bursting */
+#define	IEEE80211_C_WME		0x04000000	/* CAPABILITY: WME avail */
+#define	IEEE80211_C_WDS		0x08000000	/* CAPABILITY: 4-addr support */
+/* 0x10000000 reserved */
+#define	IEEE80211_C_BGSCAN	0x20000000	/* CAPABILITY: bg scanning */
+#define	IEEE80211_C_TXFRAG	0x40000000	/* CAPABILITY: tx fragments */
+#define	IEEE80211_C_TDMA	0x80000000	/* CAPABILITY: TDMA avail */
+/* XXX protection/barker? */
+
+#define	IEEE80211_C_OPMODE \
+	(IEEE80211_C_STA | IEEE80211_C_IBSS | IEEE80211_C_HOSTAP | \
+	 IEEE80211_C_AHDEMO | IEEE80211_C_MONITOR | IEEE80211_C_WDS | \
+	 IEEE80211_C_TDMA | IEEE80211_C_MBSS)
+
+#define	IEEE80211_C_BITS \
+	"\20\1STA\002803ENCAP\7FF\10TURBOP\11IBSS\12PMGT" \
+	"\13HOSTAP\14AHDEMO\15SWRETRY\16TXPMGT\17SHSLOT\20SHPREAMBLE" \
+	"\21MONITOR\22DFS\23MBSS\30WPA1\31WPA2\32BURST\33WME\34WDS\36BGSCAN" \
+	"\37TXFRAG\40TDMA"
+
+/*
+ * ic_htcaps/iv_htcaps: HT-specific device/driver capabilities
+ *
+ * NB: the low 16-bits are the 802.11 definitions, the upper
+ *     16-bits are used to define s/w/driver capabilities.
+ */
+#define	IEEE80211_HTC_AMPDU	0x00010000	/* CAPABILITY: A-MPDU tx */
+#define	IEEE80211_HTC_AMSDU	0x00020000	/* CAPABILITY: A-MSDU tx */
+/* NB: HT40 is implied by IEEE80211_HTCAP_CHWIDTH40 */
+#define	IEEE80211_HTC_HT	0x00040000	/* CAPABILITY: HT operation */
+#define	IEEE80211_HTC_SMPS	0x00080000	/* CAPABILITY: MIMO power save*/
+#define	IEEE80211_HTC_RIFS	0x00100000	/* CAPABILITY: RIFS support */
+#define	IEEE80211_HTC_RXUNEQUAL	0x00200000	/* CAPABILITY: RX unequal MCS */
+#define	IEEE80211_HTC_RXMCS32	0x00400000	/* CAPABILITY: MCS32 support */
+#define	IEEE80211_HTC_TXUNEQUAL	0x00800000	/* CAPABILITY: TX unequal MCS */
+#define	IEEE80211_HTC_TXMCS32	0x01000000	/* CAPABILITY: MCS32 support */
+
+#define	IEEE80211_C_HTCAP_BITS \
+	"\20\1LDPC\2CHWIDTH40\5GREENFIELD\6SHORTGI20\7SHORTGI40\10TXSTBC" \
+	"\21AMPDU\22AMSDU\23HT\24SMPS\25RIFS"
+
 #endif /* _NET80211__IEEE80211_H_ */

Modified: head/sys/net80211/ieee80211_var.h
==============================================================================
--- head/sys/net80211/ieee80211_var.h	Fri Nov 18 21:09:57 2016	(r308810)
+++ head/sys/net80211/ieee80211_var.h	Fri Nov 18 21:12:13 2016	(r308811)
@@ -633,70 +633,6 @@ MALLOC_DECLARE(M_80211_VAP);
 
 #define	IEEE80211_FVEN_BITS	"\20"
 
-/* ic_caps/iv_caps: device driver capabilities */
-/* 0x2e available */
-#define	IEEE80211_C_STA		0x00000001	/* CAPABILITY: STA available */
-#define	IEEE80211_C_8023ENCAP	0x00000002	/* CAPABILITY: 802.3 encap */
-#define	IEEE80211_C_FF		0x00000040	/* CAPABILITY: ATH FF avail */
-#define	IEEE80211_C_TURBOP	0x00000080	/* CAPABILITY: ATH Turbo avail*/
-#define	IEEE80211_C_IBSS	0x00000100	/* CAPABILITY: IBSS available */
-#define	IEEE80211_C_PMGT	0x00000200	/* CAPABILITY: Power mgmt */
-#define	IEEE80211_C_HOSTAP	0x00000400	/* CAPABILITY: HOSTAP avail */
-#define	IEEE80211_C_AHDEMO	0x00000800	/* CAPABILITY: Old Adhoc Demo */
-#define	IEEE80211_C_SWRETRY	0x00001000	/* CAPABILITY: sw tx retry */
-#define	IEEE80211_C_TXPMGT	0x00002000	/* CAPABILITY: tx power mgmt */
-#define	IEEE80211_C_SHSLOT	0x00004000	/* CAPABILITY: short slottime */
-#define	IEEE80211_C_SHPREAMBLE	0x00008000	/* CAPABILITY: short preamble */
-#define	IEEE80211_C_MONITOR	0x00010000	/* CAPABILITY: monitor mode */
-#define	IEEE80211_C_DFS		0x00020000	/* CAPABILITY: DFS/radar avail*/
-#define	IEEE80211_C_MBSS	0x00040000	/* CAPABILITY: MBSS available */
-#define	IEEE80211_C_SWSLEEP	0x00080000	/* CAPABILITY: do sleep here */
-#define	IEEE80211_C_SWAMSDUTX	0x00100000	/* CAPABILITY: software A-MSDU TX */
-/* 0x7c0000 available */
-#define	IEEE80211_C_WPA1	0x00800000	/* CAPABILITY: WPA1 avail */
-#define	IEEE80211_C_WPA2	0x01000000	/* CAPABILITY: WPA2 avail */
-#define	IEEE80211_C_WPA		0x01800000	/* CAPABILITY: WPA1+WPA2 avail*/
-#define	IEEE80211_C_BURST	0x02000000	/* CAPABILITY: frame bursting */
-#define	IEEE80211_C_WME		0x04000000	/* CAPABILITY: WME avail */
-#define	IEEE80211_C_WDS		0x08000000	/* CAPABILITY: 4-addr support */
-/* 0x10000000 reserved */
-#define	IEEE80211_C_BGSCAN	0x20000000	/* CAPABILITY: bg scanning */
-#define	IEEE80211_C_TXFRAG	0x40000000	/* CAPABILITY: tx fragments */
-#define	IEEE80211_C_TDMA	0x80000000	/* CAPABILITY: TDMA avail */
-/* XXX protection/barker? */
-
-#define	IEEE80211_C_OPMODE \
-	(IEEE80211_C_STA | IEEE80211_C_IBSS | IEEE80211_C_HOSTAP | \
-	 IEEE80211_C_AHDEMO | IEEE80211_C_MONITOR | IEEE80211_C_WDS | \
-	 IEEE80211_C_TDMA | IEEE80211_C_MBSS)
-
-#define	IEEE80211_C_BITS \
-	"\20\1STA\002803ENCAP\7FF\10TURBOP\11IBSS\12PMGT" \
-	"\13HOSTAP\14AHDEMO\15SWRETRY\16TXPMGT\17SHSLOT\20SHPREAMBLE" \
-	"\21MONITOR\22DFS\23MBSS\30WPA1\31WPA2\32BURST\33WME\34WDS\36BGSCAN" \
-	"\37TXFRAG\40TDMA"
-
-/*
- * ic_htcaps/iv_htcaps: HT-specific device/driver capabilities
- *
- * NB: the low 16-bits are the 802.11 definitions, the upper
- *     16-bits are used to define s/w/driver capabilities.
- */
-#define	IEEE80211_HTC_AMPDU	0x00010000	/* CAPABILITY: A-MPDU tx */
-#define	IEEE80211_HTC_AMSDU	0x00020000	/* CAPABILITY: A-MSDU tx */
-/* NB: HT40 is implied by IEEE80211_HTCAP_CHWIDTH40 */
-#define	IEEE80211_HTC_HT	0x00040000	/* CAPABILITY: HT operation */
-#define	IEEE80211_HTC_SMPS	0x00080000	/* CAPABILITY: MIMO power save*/
-#define	IEEE80211_HTC_RIFS	0x00100000	/* CAPABILITY: RIFS support */
-#define	IEEE80211_HTC_RXUNEQUAL	0x00200000	/* CAPABILITY: RX unequal MCS */
-#define	IEEE80211_HTC_RXMCS32	0x00400000	/* CAPABILITY: MCS32 support */
-#define	IEEE80211_HTC_TXUNEQUAL	0x00800000	/* CAPABILITY: TX unequal MCS */
-#define	IEEE80211_HTC_TXMCS32	0x01000000	/* CAPABILITY: MCS32 suport */
-
-#define	IEEE80211_C_HTCAP_BITS \
-	"\20\1LDPC\2CHWIDTH40\5GREENFIELD\6SHORTGI20\7SHORTGI40\10TXSTBC" \
-	"\21AMPDU\22AMSDU\23HT\24SMPS\25RIFS"
-
 int	ic_printf(struct ieee80211com *, const char *, ...) __printflike(2, 3);
 void	ieee80211_ifattach(struct ieee80211com *);
 void	ieee80211_ifdetach(struct ieee80211com *);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201611182112.uAILCDXv087590>