Lines Matching refs:wil

82 void wil_rx_reorder(struct wil6210_priv *wil, struct sk_buff *skb)  in wil_rx_reorder()  argument
94 wil->txrx_ops.get_reorder_params(wil, skb, &tid, &cid, &mid, &seq, in wil_rx_reorder()
96 sta = &wil->sta[cid]; in wil_rx_reorder()
98 wil_dbg_txrx(wil, "MID %d CID %d TID %d Seq 0x%03x mcast %01x\n", in wil_rx_reorder()
101 vif = wil->vifs[mid]; in wil_rx_reorder()
103 wil_dbg_txrx(wil, "invalid VIF, mid %d\n", mid); in wil_rx_reorder()
120 wil_dbg_txrx(wil, "Rx drop: dup mcast seq 0x%03x\n", in wil_rx_reorder()
145 wil_err(wil, in wil_rx_reorder()
152 wil_err(wil, in wil_rx_reorder()
164 wil_dbg_txrx(wil, "Rx drop: old seq 0x%03x head 0x%03x\n", in wil_rx_reorder()
187 wil_dbg_txrx(wil, "Rx drop: dup seq 0x%03x\n", seq); in wil_rx_reorder()
214 void wil_rx_bar(struct wil6210_priv *wil, struct wil6210_vif *vif, in wil_rx_bar() argument
217 struct wil_sta_info *sta = &wil->sta[cid]; in wil_rx_bar()
225 wil_err(wil, "BAR for non-existing CID %d TID %d\n", cid, tid); in wil_rx_bar()
229 wil_err(wil, "BAR Seq 0x%03x preceding head 0x%03x\n", in wil_rx_bar()
233 wil_dbg_txrx(wil, "BAR: CID %d MID %d TID %d Seq 0x%03x head 0x%03x\n", in wil_rx_bar()
241 struct wil_tid_ampdu_rx *wil_tid_ampdu_rx_alloc(struct wil6210_priv *wil, in wil_tid_ampdu_rx_alloc() argument
265 void wil_tid_ampdu_rx_free(struct wil6210_priv *wil, in wil_tid_ampdu_rx_free() argument
286 static u16 wil_agg_size(struct wil6210_priv *wil, u16 req_agg_wsize) in wil_agg_size() argument
288 u16 max_agg_size = min_t(u16, wil->max_agg_wsize, wil->max_ampdu_size / in wil_agg_size()
298 int wil_addba_rx_request(struct wil6210_priv *wil, u8 mid, u8 cid, u8 tid, in wil_addba_rx_request() argument
314 bool agg_amsdu = wil->use_enhanced_dma_hw && in wil_addba_rx_request()
315 wil->use_rx_hw_reordering && in wil_addba_rx_request()
316 test_bit(WMI_FW_CAPABILITY_AMSDU, wil->fw_capabilities) && in wil_addba_rx_request()
317 wil->amsdu_en && (param_set & BIT(0)); in wil_addba_rx_request()
326 if (cid >= wil->max_assoc_sta) { in wil_addba_rx_request()
327 wil_err(wil, "BACK: invalid CID %d\n", cid); in wil_addba_rx_request()
332 sta = &wil->sta[cid]; in wil_addba_rx_request()
334 wil_err(wil, "BACK: CID %d not connected\n", cid); in wil_addba_rx_request()
339 wil_dbg_wmi(wil, in wil_addba_rx_request()
346 wil_dbg_misc(wil, "Suggest BACK wsize %d\n", in wil_addba_rx_request()
347 wil->max_agg_wsize); in wil_addba_rx_request()
348 agg_wsize = wil->max_agg_wsize; in wil_addba_rx_request()
350 agg_wsize = min_t(u16, wil->max_agg_wsize, req_agg_wsize); in wil_addba_rx_request()
353 rc = wil->txrx_ops.wmi_addba_rx_resp(wil, mid, cid, tid, dialog_token, in wil_addba_rx_request()
357 wil_err(wil, "do not apply ba, rc(%d)\n", rc); in wil_addba_rx_request()
362 if (!wil->use_rx_hw_reordering) { in wil_addba_rx_request()
363 r = wil_tid_ampdu_rx_alloc(wil, agg_wsize, ssn); in wil_addba_rx_request()
365 wil_tid_ampdu_rx_free(wil, sta->tid_rx[tid]); in wil_addba_rx_request()
375 int wil_addba_tx_request(struct wil6210_priv *wil, u8 ringid, u16 wsize) in wil_addba_tx_request() argument
377 u8 agg_wsize = wil_agg_size(wil, wsize); in wil_addba_tx_request()
379 struct wil_ring_tx_data *txdata = &wil->ring_tx_data[ringid]; in wil_addba_tx_request()
383 wil_dbg_misc(wil, "ADDBA for vring[%d] already in progress\n", in wil_addba_tx_request()
388 wil_dbg_misc(wil, in wil_addba_tx_request()
394 rc = wmi_addba(wil, txdata->mid, ringid, agg_wsize, agg_timeout); in wil_addba_tx_request()
396 wil_err(wil, "wmi_addba failed, rc (%d)", rc); in wil_addba_tx_request()