summaryrefslogtreecommitdiffstats
path: root/sys/dev/ath/ath_hal/ar5211
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2011-02-08 12:49:01 +0000
committeradrian <adrian@FreeBSD.org>2011-02-08 12:49:01 +0000
commit44dfaf952a7967d189f26651e2b6a5b528202378 (patch)
tree1506073f2100e382aec6ebe867a5e03b6a4714d4 /sys/dev/ath/ath_hal/ar5211
parent461f2c12fe23d67162780f5c935cc956e24b1f30 (diff)
downloadFreeBSD-src-44dfaf952a7967d189f26651e2b6a5b528202378.zip
FreeBSD-src-44dfaf952a7967d189f26651e2b6a5b528202378.tar.gz
There's apparently a bug with Merlin (AR9280) and later chipsets where
putting descriptors (not buffers) across a 4k page boundary can cause issues. I've not seen it in production myself but it apparently can cause problems. So, in preparation for addressing this workaround, (re)-expose the particular HAL capability bit which marks whether the chipset has support for cross-4k- boundary transactions or not. A subsequent commit will modify the descriptor allocation to avoid allocating descriptor entries that straddle a 4k page boundary.
Diffstat (limited to 'sys/dev/ath/ath_hal/ar5211')
-rw-r--r--sys/dev/ath/ath_hal/ar5211/ar5211_attach.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c b/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
index fe87fce..bace648 100644
--- a/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
+++ b/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
@@ -509,6 +509,8 @@ ar5211FillCapabilityInfo(struct ath_hal *ah)
| HAL_INT_TIM
;
+ pCap->hal4kbSplitTransSupport = AH_TRUE;
+
/* XXX might be ok w/ some chip revs */
ahpriv->ah_rxornIsFatal = AH_TRUE;
return AH_TRUE;
OpenPOWER on IntegriCloud