svn commit: r254085 - head/sys/dev/iwn

Adrian Chadd adrian at FreeBSD.org
Thu Aug 8 05:52:42 UTC 2013


Author: adrian
Date: Thu Aug  8 05:52:41 2013
New Revision: 254085
URL: http://svnweb.freebsd.org/changeset/base/254085

Log:
  Cap the number of streams supported to two for now.
  
  I haven't yet reviewed the Intel driver(s) in more depth to see if
  there are 1x1 NICs that report they support 2 transmit/receive chains..
  if so then we'll have to update this.
  
  Tested:
  
  * Intel 4965, which is a 2x2 device with 3 RX and 2 TX chains.
  
  PR:		kern/181132

Modified:
  head/sys/dev/iwn/if_iwn.c

Modified: head/sys/dev/iwn/if_iwn.c
==============================================================================
--- head/sys/dev/iwn/if_iwn.c	Thu Aug  8 05:41:55 2013	(r254084)
+++ head/sys/dev/iwn/if_iwn.c	Thu Aug  8 05:52:41 2013	(r254085)
@@ -638,6 +638,20 @@ iwn_attach(device_t dev)
 	if (sc->sc_flags & IWN_FLAG_HAS_11N) {
 		ic->ic_rxstream = sc->nrxchains;
 		ic->ic_txstream = sc->ntxchains;
+
+		/*
+		 * The NICs we currently support cap out at 2x2 support
+		 * separate from the chains being used.
+		 *
+		 * This is a total hack to work around that until some
+		 * per-device method is implemented to return the
+		 * actual stream support.
+		 */
+		if (ic->ic_rxstream > 2)
+			ic->ic_rxstream = 2;
+		if (ic->ic_txstream > 2)
+			ic->ic_txstream = 2;
+
 		ic->ic_htcaps =
 			  IEEE80211_HTCAP_SMPS_OFF	/* SMPS mode disabled */
 			| IEEE80211_HTCAP_SHORTGI20	/* short GI in 20MHz */


More information about the svn-src-all mailing list