freebsd-dev/sys/dev/ath
Adrian Chadd cf0c92d600 Track the total number of software queued frames in an atomic variable
stashed away in ath_node.

As much as I tried to stuff that behind the ATH_NODE lock, unfortunately
the locking is just too plain hairy (for me! And I wrote it!) to do
cleanly. Hence using atomics here instead of a lock. The ATH_NODE lock
just isn't currently used anywhere besides the rate control updates.

If in the future everything gets migrated back to using a single ATH_NODE
lock or a single global ATH_TX lock (ie, a single TX lock for all TX and
TX completion) then fine, I'll remove the atomics.
2012-10-15 00:07:18 +00:00
..
ath_dfs/null Disable strong signal diversity when enabling radar pulse detection 2012-09-02 05:01:10 +00:00
ath_hal Implement the quarter rate fractional channel programming for the 2012-10-04 15:42:45 +00:00
ath_rate Improve performance of the Sample rate algorithm on 802.11n networks. 2012-09-17 01:09:17 +00:00
ah_osdep.c Fix the HAL debugging to only use one bit to mark a message as unmaskable. 2012-07-01 02:34:32 +00:00
ah_osdep.h Migrate the ath_hal_filltxdesc() API to take a list of buffer/seglen values. 2012-08-05 10:12:27 +00:00
if_ath_ahb.c Flesh out a new DMA map for the EDMA TX completion status, as well 2012-07-23 02:49:25 +00:00
if_ath_beacon.c Extend the beacon code slightly to support AP mode beaconing for the 2012-08-11 23:26:19 +00:00
if_ath_beacon.h Extend the beacon code slightly to support AP mode beaconing for the 2012-08-11 23:26:19 +00:00
if_ath_debug.c Debugging output fixes: 2012-09-24 19:48:41 +00:00
if_ath_debug.h Pause and unpause the software queues for a given node based on the 2012-10-03 23:23:45 +00:00
if_ath_keycache.c Add a 'vap' to ath_keyset(). 2011-11-08 19:25:52 +00:00
if_ath_keycache.h Add a 'vap' to ath_keyset(). 2011-11-08 19:25:52 +00:00
if_ath_led.c Bring over the initial 802.11n bluetooth coexistence support code. 2012-06-26 22:16:53 +00:00
if_ath_led.h Refactor out the software LED config code into a common function, called 2011-12-26 05:46:22 +00:00
if_ath_misc.h Push the actual TX processing into the ath taskqueue, rather than having 2012-10-14 20:44:08 +00:00
if_ath_pci.c Flesh out a new DMA map for the EDMA TX completion status, as well 2012-07-23 02:49:25 +00:00
if_ath_rx_edma.c Migrate the ath(4) KTR logging to use an ATH_KTR() macro. 2012-09-24 20:35:56 +00:00
if_ath_rx_edma.h Begin abstracting out the RX path in preparation for RX EDMA support. 2012-07-03 06:59:12 +00:00
if_ath_rx.c Break the RX processing up into smaller chunks of 128 frames each. 2012-10-14 20:31:38 +00:00
if_ath_rx.h Convert sc_rxpending to a per-EDMA queue, and use that for the legacy code. 2012-07-10 00:02:19 +00:00
if_ath_sysctl.c Migrate the ath(4) KTR logging to use an ATH_KTR() macro. 2012-09-24 20:35:56 +00:00
if_ath_sysctl.h Break out most of the HAL related tweaks into a per-HAL instance, 2011-06-23 02:38:36 +00:00
if_ath_tdma.c Migrate the TDMA management functions out of if_ath.c into if_ath_tdma.c. 2012-05-20 02:49:42 +00:00
if_ath_tdma.h Migrate the TDMA management functions out of if_ath.c into if_ath_tdma.c. 2012-05-20 02:49:42 +00:00
if_ath_tsf.h Migrate the bulk of the RX routines out from if_ath.c to if_ath_rx.[ch]. 2012-05-20 02:05:10 +00:00
if_ath_tx_edma.c Initialise an uninitialised variable. 2012-08-21 16:44:25 +00:00
if_ath_tx_edma.h Begin separating out the TX DMA setup in preparation for TX EDMA support. 2012-07-23 03:52:18 +00:00
if_ath_tx_ht.c Migrate the TID TXQ accesses to a new set of macros, rather than reusing 2012-10-07 23:45:19 +00:00
if_ath_tx_ht.h Introduce TX aggregation and software TX queue management 2011-11-08 22:43:13 +00:00
if_ath_tx.c Stop abusing the ATH_TID_*() queue macros for filtered frames and give 2012-10-14 23:52:30 +00:00
if_ath_tx.h Pause and unpause the software queues for a given node based on the 2012-10-03 23:23:45 +00:00
if_ath.c Push the actual TX processing into the ath taskqueue, rather than having 2012-10-14 20:44:08 +00:00
if_athdfs.h Change the ath_dfs_process_phy_err() method to take an mbuf rather than 2012-06-24 08:09:06 +00:00
if_athioctl.h Implement my first cut at filtered frames in aggregation sessions. 2012-09-18 10:14:17 +00:00
if_athrate.h Create an ioctl API for fetching the current rate control information. 2012-07-20 01:27:20 +00:00
if_athvar.h Track the total number of software queued frames in an atomic variable 2012-10-15 00:07:18 +00:00