svn commit: r226765 - head/sys/dev/ath/ath_hal/ar5212
Adrian Chadd
adrian at FreeBSD.org
Tue Oct 25 23:28:17 UTC 2011
Author: adrian
Date: Tue Oct 25 23:28:16 2011
New Revision: 226765
URL: http://svn.freebsd.org/changeset/base/226765
Log:
The AR5413 datasheet specifies that AR_TxIntrReq should be set consistently
for all frames, so do so.
Modified:
head/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c
Modified: head/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c Tue Oct 25 23:24:05 2011 (r226764)
+++ head/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c Tue Oct 25 23:28:16 2011 (r226765)
@@ -821,12 +821,14 @@ ar5212FillTxDesc(struct ath_hal *ah, str
* copy the multi-rate transmit parameters from
* the first frame for processing on completion.
*/
- ads->ds_ctl0 = 0;
ads->ds_ctl1 = segLen;
#ifdef AH_NEED_DESC_SWAP
+ ads->ds_ctl0 = __bswap32(AR5212DESC_CONST(ds0)->ds_ctl0)
+ & AR_TxInterReq;
ads->ds_ctl2 = __bswap32(AR5212DESC_CONST(ds0)->ds_ctl2);
ads->ds_ctl3 = __bswap32(AR5212DESC_CONST(ds0)->ds_ctl3);
#else
+ ads->ds_ctl0 = AR5212DESC_CONST(ds0)->ds_ctl0 & AR_TxInterReq;
ads->ds_ctl2 = AR5212DESC_CONST(ds0)->ds_ctl2;
ads->ds_ctl3 = AR5212DESC_CONST(ds0)->ds_ctl3;
#endif
@@ -834,7 +836,12 @@ ar5212FillTxDesc(struct ath_hal *ah, str
/*
* Intermediate descriptor in a multi-descriptor frame.
*/
- ads->ds_ctl0 = 0;
+#ifdef AH_NEED_DESC_SWAP
+ ads->ds_ctl0 = __bswap32(AR5212DESC_CONST(ds0)->ds_ctl0)
+ & AR_TxInterReq;
+#else
+ ads->ds_ctl0 = AR5212DESC_CONST(ds0)->ds_ctl0 & AR_TxInterReq;
+#endif
ads->ds_ctl1 = segLen | AR_More;
ads->ds_ctl2 = 0;
ads->ds_ctl3 = 0;
More information about the svn-src-all
mailing list