Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Jun 2011 11:30:22 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r223041 - user/adrian/if_ath_tx/sys/dev/ath
Message-ID:  <201106131130.p5DBUMHD071232@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Mon Jun 13 11:30:22 2011
New Revision: 223041
URL: http://svn.freebsd.org/changeset/base/223041

Log:
  After being poked by bschmidt, don't go grovelling through net80211,
  instead just store the callbacks and use them.

Modified:
  user/adrian/if_ath_tx/sys/dev/ath/if_ath.c
  user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c
  user/adrian/if_ath_tx/sys/dev/ath/if_athvar.h

Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath.c
==============================================================================
--- user/adrian/if_ath_tx/sys/dev/ath/if_ath.c	Mon Jun 13 06:42:44 2011	(r223040)
+++ user/adrian/if_ath_tx/sys/dev/ath/if_ath.c	Mon Jun 13 11:30:22 2011	(r223041)
@@ -644,6 +644,10 @@ ath_attach(u_int16_t devid, struct ath_s
 			    | IEEE80211_HTCAP_SMPS_OFF;		/* SM power save off */
 			;
 
+		sc->sc_addba_request = ic->ic_addba_request;
+		sc->sc_addba_response = ic->ic_addba_response;
+		sc->sc_addba_stop = ic->ic_addba_stop;
+
 		ic->ic_addba_request = ath_addba_request;
 		ic->ic_addba_response = ath_addba_response;
 		ic->ic_addba_stop = ath_addba_stop;

Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c
==============================================================================
--- user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c	Mon Jun 13 06:42:44 2011	(r223040)
+++ user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c	Mon Jun 13 11:30:22 2011	(r223041)
@@ -1665,7 +1665,8 @@ int
 ath_addba_request(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap,
     int dialogtoken, int baparamset, int batimeout)
 {
-	return ieee80211_addba_request(ni, tap, dialogtoken, baparamset,
+	struct ath_softc *sc = ni->ni_ic->ic_ifp->if_softc;
+	return sc->sc_addba_request(ni, tap, dialogtoken, baparamset,
 	    batimeout);
 }
 
@@ -1681,7 +1682,8 @@ int
 ath_addba_response(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap,
     int dialogtoken, int code, int batimeout)
 {
-	return ieee80211_addba_request(ni, tap, dialogtoken, code, batimeout);
+	struct ath_softc *sc = ni->ni_ic->ic_ifp->if_softc;
+	return sc->sc_addba_request(ni, tap, dialogtoken, code, batimeout);
 }
 
 
@@ -1695,5 +1697,6 @@ ath_addba_response(struct ieee80211_node
 void
 ath_addba_stop(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap)
 {
-	ieee80211_addba_stop(ni, tap);
+	struct ath_softc *sc = ni->ni_ic->ic_ifp->if_softc;
+	sc->sc_addba_stop(ni, tap);
 }

Modified: user/adrian/if_ath_tx/sys/dev/ath/if_athvar.h
==============================================================================
--- user/adrian/if_ath_tx/sys/dev/ath/if_athvar.h	Mon Jun 13 06:42:44 2011	(r223040)
+++ user/adrian/if_ath_tx/sys/dev/ath/if_athvar.h	Mon Jun 13 11:30:22 2011	(r223041)
@@ -412,6 +412,14 @@ struct ath_softc {
 	struct mtx		sc_txnodeq_mtx;	/* mutex protecting the below */
 	STAILQ_HEAD(, ath_node)	sc_txnodeq;	/* Nodes which have traffic to send */
 	char			sc_txnodeq_name[16];	/* mutex name */
+
+	/* TX AMPDU handling */
+	int			(*sc_addba_request)(struct ieee80211_node *,
+				    struct ieee80211_tx_ampdu *, int, int, int);
+	int			(*sc_addba_response)(struct ieee80211_node *,
+				    struct ieee80211_tx_ampdu *, int, int, int);
+	void			(*sc_addba_stop)(struct ieee80211_node *,
+				    struct ieee80211_tx_ampdu *);
 };
 
 #define	ATH_LOCK_INIT(_sc) \



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