Function flow for ath9k hardware queue and subsequent sending process

Do we have the access to the functions in the ath9k driver code that adds a packet to the hardware queue after calling ath_tx_txqaddbuf() function and exactly controls the subsequent sending process of the packet? Or is this part of the code completely hidden?

To my knowledge, ath9k has no binary blobs and the source code is completely open.