aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ath
diff options
context:
space:
mode:
authorAdrian Chadd <adrian@FreeBSD.org>2012-04-07 05:46:00 +0000
committerAdrian Chadd <adrian@FreeBSD.org>2012-04-07 05:46:00 +0000
commit781e7eaffd13d227c6de6249aeb5a4f6ad93d406 (patch)
tree7a044d17734de7b6cc5b9929384dfb4c48ca7a76 /sys/dev/ath
parentafbcb86218278738221569697d08b6acceb80bc6 (diff)
Notes
Diffstat (limited to 'sys/dev/ath')
-rw-r--r--sys/dev/ath/if_ath_tx_ht.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/sys/dev/ath/if_ath_tx_ht.c b/sys/dev/ath/if_ath_tx_ht.c
index b7875a3fbc0e6..a2fc1c00eb94b 100644
--- a/sys/dev/ath/if_ath_tx_ht.c
+++ b/sys/dev/ath/if_ath_tx_ht.c
@@ -741,18 +741,14 @@ ath_tx_form_aggr(struct ath_softc *sc, struct ath_node *an, struct ath_tid *tid,
/*
* If the current frame has an RTS/CTS configuration
- * that differs from the first frame, don't include
- * this in the aggregate. It's possible that the
- * "right" thing to do here is enforce the aggregate
- * configuration.
+ * that differs from the first frame, override the
+ * subsequent frame with this config.
*/
- if ((bf_first->bf_state.bfs_txflags &
- (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA)) !=
- (bf->bf_state.bfs_txflags &
- (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA))) {
- status = ATH_AGGR_NONAGGR;
- break;
- }
+ bf->bf_state.bfs_txflags &=
+ (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA);
+ bf->bf_state.bfs_txflags |=
+ bf_first->bf_state.bfs_txflags &
+ (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA);
/*
* TODO: If it's _before_ the BAW left edge, complain very