Deleted Added
full compact
if_ath_tx.c (236873) if_ath_tx.c (236874)
1/*-
2 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 14 unchanged lines hidden (view full) ---

23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
25 * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
27 * THE POSSIBILITY OF SUCH DAMAGES.
28 */
29
30#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 14 unchanged lines hidden (view full) ---

23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
25 * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
27 * THE POSSIBILITY OF SUCH DAMAGES.
28 */
29
30#include <sys/cdefs.h>
31__FBSDID("$FreeBSD: head/sys/dev/ath/if_ath_tx.c 236873 2012-06-11 07:06:49Z adrian $");
31__FBSDID("$FreeBSD: head/sys/dev/ath/if_ath_tx.c 236874 2012-06-11 07:08:40Z adrian $");
32
33/*
34 * Driver for the Atheros Wireless LAN controller.
35 *
36 * This software is derived from work of Atsushi Onoe; his contribution
37 * is greatly appreciated.
38 */
39

--- 1473 unchanged lines hidden (view full) ---

1513 ATH_TXQ_LOCK(txq);
1514 /*
1515 * Always call; this function will
1516 * handle making sure that null data frames
1517 * don't get a sequence number from the current
1518 * TID and thus mess with the BAW.
1519 */
1520 seqno = ath_tx_tid_seqno_assign(sc, ni, bf, m0);
32
33/*
34 * Driver for the Atheros Wireless LAN controller.
35 *
36 * This software is derived from work of Atsushi Onoe; his contribution
37 * is greatly appreciated.
38 */
39

--- 1473 unchanged lines hidden (view full) ---

1513 ATH_TXQ_LOCK(txq);
1514 /*
1515 * Always call; this function will
1516 * handle making sure that null data frames
1517 * don't get a sequence number from the current
1518 * TID and thus mess with the BAW.
1519 */
1520 seqno = ath_tx_tid_seqno_assign(sc, ni, bf, m0);
1521
1522 /*
1523 * Don't add QoS NULL frames to the BAW.
1524 */
1521 if (IEEE80211_QOS_HAS_SEQ(wh) &&
1522 subtype != IEEE80211_FC0_SUBTYPE_QOS_NULL) {
1523 bf->bf_state.bfs_dobaw = 1;
1524 }
1525 ATH_TXQ_UNLOCK(txq);
1525 if (IEEE80211_QOS_HAS_SEQ(wh) &&
1526 subtype != IEEE80211_FC0_SUBTYPE_QOS_NULL) {
1527 bf->bf_state.bfs_dobaw = 1;
1528 }
1529 ATH_TXQ_UNLOCK(txq);
1526 } else {
1527 /* No AMPDU TX, we've been assigned a sequence number. */
1528 if (IEEE80211_QOS_HAS_SEQ(wh)) {
1529 /* XXX we should store the frag+seqno in bfs_seqno */
1530 bf->bf_state.bfs_seqno =
1531 M_SEQNO_GET(m0) << IEEE80211_SEQ_SEQ_SHIFT;
1532 }
1533 }
1534
1535 /*
1536 * If needed, the sequence number has been assigned.
1537 * Squirrel it away somewhere easy to get to.
1538 */
1539 bf->bf_state.bfs_seqno = M_SEQNO_GET(m0) << IEEE80211_SEQ_SEQ_SHIFT;
1540

--- 2821 unchanged lines hidden ---
1530 }
1531
1532 /*
1533 * If needed, the sequence number has been assigned.
1534 * Squirrel it away somewhere easy to get to.
1535 */
1536 bf->bf_state.bfs_seqno = M_SEQNO_GET(m0) << IEEE80211_SEQ_SEQ_SHIFT;
1537

--- 2821 unchanged lines hidden ---