K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-06-11T10:35:53.938763Z K 7 svn:log V 922 Flesh out some more software TX queue code ath_buf's now have both a destination tid and a destination txq. (I may end up also storing a destination AC, just to be complete.) The destination TXQ is pre-calculated at TID TXQ add time as that won't change. It's then added to the pre-determined hardware TXQ when the packet is ready to be scheduled. The routine to calculate the ath_node txq length is dirty. I shall fix soon. Packets should now be schedulable via a call to ath_tx_swq() and sit in the per-node queue until ath_txq_sched() is called. Packets then will be removed from the software queue and added to the relevant hardware queue. Next is writing a completion handler which looks a lot like what ath_tx_processq() does, but knows about the ath_node/tid involved. Eventually this is where the software aggregation retries will live. The TX packet scheduler isn't fair. It isn't pretending to be for now. END