X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Finclude%2Fwl.h;h=5566be426406b47c17b0862cc264a231d413ba1b;hb=a57a7e78baeede9c999a67dcd812fbfc711463fa;hp=dd5b0a88f3e4c7c376cf798391ac4e6a5e72df66;hpb=42f3ffb244e5cabba181fe6c59042caa61b650cb;p=carl9170fw.git diff --git a/carlfw/include/wl.h b/carlfw/include/wl.h index dd5b0a8..5566be4 100644 --- a/carlfw/include/wl.h +++ b/carlfw/include/wl.h @@ -1,7 +1,7 @@ /* * carl9170 firmware - used by the ar9170 wireless device * - * WLAN + * shared WLAN functions, interfaces and definitions * * Copyright (c) 2000-2005 ZyDAS Technology Corporation * Copyright (c) 2007-2009 Atheros Communications, Inc. @@ -19,8 +19,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * with this program; If not, see . */ #ifndef __CARL9170FW_WLAN_H @@ -189,8 +188,9 @@ static inline __inline unsigned int ar9170_get_rx_mpdu_len(struct dma_desc *desc break; case AR9170_RX_STATUS_MPDU_SINGLE: + /* MPDU single has both */ mpdu_len -= sizeof(struct ar9170_rx_phystatus); - + /* fall through */ case AR9170_RX_STATUS_MPDU_FIRST: mpdu_len -= sizeof(struct ar9170_rx_head); break; @@ -237,7 +237,7 @@ static inline __inline void unhide_super(struct dma_desc *desc) desc->totalLen += sizeof(struct carl9170_tx_superdesc); } -static inline __inline __hot void read_tsf(uint32_t *tsf) +static inline __inline __hot void read_tsf(uint32_t tsf[static 2]) { /* * "According to the [hardware] documentation: @@ -269,6 +269,14 @@ void wlan_tx_fw(struct carl9170_tx_superdesc *super, fw_desc_callback_t cb); void wlan_timer(void); void handle_wlan(void); +void handle_wlan_rx(void); + +void wlan_send_buffered_tx_status(void); +void wlan_send_buffered_cab(void); +void wlan_send_buffered_ba(void); +void handle_wlan_tx_completion(void); +void wlan_dma_bump(unsigned int qidx); + void wlan_cab_flush_queue(const unsigned int vif); void wlan_modify_beacon(const unsigned int vif, const unsigned int bcn_addr,