svn commit: r233967 - head/sys/dev/ath
Adrian Chadd
adrian at FreeBSD.org
Sat Apr 7 02:51:54 UTC 2012
Author: adrian
Date: Sat Apr 7 02:51:53 2012
New Revision: 233967
URL: http://svn.freebsd.org/changeset/base/233967
Log:
Store away the RTS aggregate limit from the HAL.
This will be used by some upcoming code to ensure that aggregates
are enforced to be a certain size. The AR5416 has a limitation on
RTS protected aggregates (8KiB).
Modified:
head/sys/dev/ath/if_ath.c
head/sys/dev/ath/if_athvar.h
Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c Sat Apr 7 02:01:26 2012 (r233966)
+++ head/sys/dev/ath/if_ath.c Sat Apr 7 02:51:53 2012 (r233967)
@@ -732,6 +732,13 @@ ath_attach(u_int16_t devid, struct ath_s
ic->ic_txstream = txs;
ic->ic_rxstream = rxs;
+ (void) ath_hal_getcapability(ah, HAL_CAP_RTS_AGGR_LIMIT, 1,
+ &sc->sc_rts_aggr_limit);
+ if (sc->sc_rts_aggr_limit != (64 * 1024))
+ device_printf(sc->sc_dev,
+ "[HT] RTS aggregates limited to %d KiB\n",
+ sc->sc_rts_aggr_limit / 1024);
+
device_printf(sc->sc_dev,
"[HT] %d RX streams; %d TX streams\n", rxs, txs);
}
Modified: head/sys/dev/ath/if_athvar.h
==============================================================================
--- head/sys/dev/ath/if_athvar.h Sat Apr 7 02:01:26 2012 (r233966)
+++ head/sys/dev/ath/if_athvar.h Sat Apr 7 02:51:53 2012 (r233967)
@@ -533,6 +533,7 @@ struct ath_softc {
uint16_t *sc_eepromdata; /* Local eeprom data, if AR9100 */
int sc_txchainmask; /* currently configured TX chainmask */
int sc_rxchainmask; /* currently configured RX chainmask */
+ int sc_rts_aggr_limit; /* TX limit on RTS aggregates */
/* Queue limits */
More information about the svn-src-all
mailing list