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).
This commit is contained in:
adrian 2012-04-07 02:51:53 +00:00
parent 8e4ce17ba2
commit 17c1a9e4d5
2 changed files with 8 additions and 0 deletions

View File

@ -732,6 +732,13 @@ ath_attach(u_int16_t devid, struct ath_softc *sc)
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);
}

View File

@ -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 */