Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Jul 2013 18:02:44 GMT
From:      ccqin@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r254849 - soc2013/ccqin/head/sys/net80211
Message-ID:  <201307161802.r6GI2iXk090425@socsvn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ccqin
Date: Tue Jul 16 18:02:44 2013
New Revision: 254849
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=254849

Log:
  If enable rts/cts and is pre-802.11n, blank tries 1, 2, 3.

Modified:
  soc2013/ccqin/head/sys/net80211/ieee80211_ratectl.h

Modified: soc2013/ccqin/head/sys/net80211/ieee80211_ratectl.h
==============================================================================
--- soc2013/ccqin/head/sys/net80211/ieee80211_ratectl.h	Tue Jul 16 16:37:08 2013	(r254848)
+++ soc2013/ccqin/head/sys/net80211/ieee80211_ratectl.h	Tue Jul 16 18:02:44 2013	(r254849)
@@ -65,7 +65,7 @@
 	void	(*ir_node_init)(struct ieee80211_node *);
 	void	(*ir_node_deinit)(struct ieee80211_node *);
 	int	(*ir_rate)(struct ieee80211_node *, void *, uint32_t);
-	void	(*ir_rates)(struct ieee80211_node *, struct ieee80211_rc_series *);
+	void	(*ir_rates)(struct ieee80211_node *, struct ieee80211_rc_series *, int, size_t);
 	void	(*ir_tx_complete)(const struct ieee80211vap *,
 	    			  const struct ieee80211_node *, int,
 	    			  void *, void *);
@@ -113,11 +113,17 @@
 }
 
 static void __inline
-ieee80211_ratectl_rates(struct ieee80211_node *ni, struct ieee80211_rc_series *rc)
+ieee80211_ratectl_rates(struct ieee80211_node *ni, struct ieee80211_rc_series *rc,
+		int shortPreamble, size_t frameLen)
 {
 	const struct ieee80211vap *vap = ni->ni_vap;
+	struct ieee80211com *ic = vap->iv_ic; 
 
-	vap->iv_rate->ir_rates(ni, rc);
+	vap->iv_rate->ir_rates(ni, rc, shortPreamble, frameLen);
+
+	/* if enable rts/cts and is pre-802.11n, blank tries 1, 2, 3 */
+	if ((rc[0].flags & IEEE80211_RATECTL_RTSCTS_FLAG) && !(ic->ic_htcaps & IEEE80211_HTC_HT))
+		rc[1].tries = rc[2].tries = rc[3].tries = 0;
 }
 
 static void __inline



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