Lines Matching refs:rxcb
1790 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(first); in ath11k_dp_rx_msdu_coalesce() local
1810 rxcb->is_first_msdu = ath11k_dp_rx_h_msdu_end_first_msdu(ab, ldesc); in ath11k_dp_rx_msdu_coalesce()
1811 rxcb->is_last_msdu = ath11k_dp_rx_h_msdu_end_last_msdu(ab, ldesc); in ath11k_dp_rx_msdu_coalesce()
1823 ath11k_dp_rx_desc_end_tlv_copy(ab, rxcb->rx_desc, ldesc); in ath11k_dp_rx_msdu_coalesce()
1830 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_msdu_coalesce()
1831 if (!rxcb->is_continuation) { in ath11k_dp_rx_msdu_coalesce()
1842 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_msdu_coalesce()
1843 if (rxcb->is_continuation) in ath11k_dp_rx_msdu_coalesce()
1861 if (!rxcb->is_continuation) in ath11k_dp_rx_msdu_coalesce()
1872 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(first); in ath11k_dp_rx_get_msdu_last_buf() local
1874 if (!rxcb->is_continuation) in ath11k_dp_rx_get_msdu_last_buf()
1878 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_get_msdu_last_buf()
1879 if (!rxcb->is_continuation) in ath11k_dp_rx_get_msdu_last_buf()
1888 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_csum_offload() local
1892 rx_attention = ath11k_dp_rx_get_attention(ar->ab, rxcb->rx_desc); in ath11k_dp_rx_h_csum_offload()
1986 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_undecap_nwifi() local
2002 if (rxcb->is_first_msdu) { in ath11k_dp_rx_h_undecap_nwifi()
2023 qos_ctl = rxcb->tid; in ath11k_dp_rx_h_undecap_nwifi()
2025 if (ath11k_dp_rx_h_msdu_start_mesh_ctl_present(ar->ab, rxcb->rx_desc)) in ath11k_dp_rx_h_undecap_nwifi()
2045 if (!rxcb->is_first_msdu) { in ath11k_dp_rx_h_undecap_nwifi()
2068 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_undecap_raw() local
2073 if (!rxcb->is_first_msdu || in ath11k_dp_rx_h_undecap_raw()
2074 !(rxcb->is_first_msdu && rxcb->is_last_msdu)) { in ath11k_dp_rx_h_undecap_raw()
2131 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_find_rfc1042() local
2141 is_amsdu = !(rxcb->is_first_msdu && rxcb->is_last_msdu); in ath11k_dp_rx_h_find_rfc1042()
2142 hdr = (struct ieee80211_hdr *)ath11k_dp_rx_h_80211_hdr(ar->ab, rxcb->rx_desc); in ath11k_dp_rx_h_find_rfc1042()
2149 if (rxcb->is_first_msdu) { in ath11k_dp_rx_h_find_rfc1042()
2263 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_find_peer() local
2264 struct hal_rx_desc *rx_desc = rxcb->rx_desc; in ath11k_dp_rx_h_find_peer()
2269 if (rxcb->peer_id) in ath11k_dp_rx_h_find_peer()
2270 peer = ath11k_peer_find_by_id(ab, rxcb->peer_id); in ath11k_dp_rx_h_find_peer()
2291 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_h_mpdu() local
2298 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_mpdu()
2300 rxcb->is_mcbc = fill_crypto_hdr; in ath11k_dp_rx_h_mpdu()
2302 if (rxcb->is_mcbc) { in ath11k_dp_rx_h_mpdu()
2303 rxcb->peer_id = ath11k_dp_rx_h_mpdu_start_peer_id(ar->ab, rx_desc); in ath11k_dp_rx_h_mpdu()
2304 rxcb->seq_no = ath11k_dp_rx_h_mpdu_start_seq_no(ar->ab, rx_desc); in ath11k_dp_rx_h_mpdu()
2310 if (rxcb->is_mcbc) in ath11k_dp_rx_h_mpdu()
2491 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_deliver_msdu() local
2493 bool is_mcbc = rxcb->is_mcbc; in ath11k_dp_rx_deliver_msdu()
2494 bool is_eapol = rxcb->is_eapol; in ath11k_dp_rx_deliver_msdu()
2505 decap = ath11k_dp_rx_h_msdu_start_decap_type(ar->ab, rxcb->rx_desc); in ath11k_dp_rx_deliver_msdu()
2518 rxcb->tid, in ath11k_dp_rx_deliver_msdu()
2520 rxcb->seq_no, in ath11k_dp_rx_deliver_msdu()
2565 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_process_msdu() local
2596 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_process_msdu()
2597 rxcb->rx_desc = rx_desc; in ath11k_dp_rx_process_msdu()
2601 if (rxcb->is_frag) { in ath11k_dp_rx_process_msdu()
2603 } else if (!rxcb->is_continuation) { in ath11k_dp_rx_process_msdu()
2682 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_process_rx() local
2730 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_process_rx()
2731 dma_unmap_single(ab->dev, rxcb->paddr, in ath11k_dp_process_rx()
2746 rxcb->is_first_msdu = !!(desc->rx_msdu_info.info0 & in ath11k_dp_process_rx()
2748 rxcb->is_last_msdu = !!(desc->rx_msdu_info.info0 & in ath11k_dp_process_rx()
2750 rxcb->is_continuation = !!(desc->rx_msdu_info.info0 & in ath11k_dp_process_rx()
2752 rxcb->peer_id = FIELD_GET(RX_MPDU_DESC_META_DATA_PEER_ID, in ath11k_dp_process_rx()
2754 rxcb->seq_no = FIELD_GET(RX_MPDU_DESC_INFO0_SEQ_NUM, in ath11k_dp_process_rx()
2756 rxcb->tid = FIELD_GET(HAL_REO_DEST_RING_INFO0_RX_QUEUE_NUM, in ath11k_dp_process_rx()
2759 rxcb->mac_id = mac_id; in ath11k_dp_process_rx()
2762 if (rxcb->is_continuation) { in ath11k_dp_process_rx()
3045 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_reap_mon_status_ring() local
3089 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_reap_mon_status_ring()
3091 dma_sync_single_for_cpu(ab->dev, rxcb->paddr, in ath11k_dp_rx_reap_mon_status_ring()
3121 dma_unmap_single(ab->dev, rxcb->paddr, in ath11k_dp_rx_reap_mon_status_ring()
3140 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_reap_mon_status_ring()
3145 ath11k_hal_rx_buf_addr_info_set(rx_mon_status_desc, rxcb->paddr, in ath11k_dp_rx_reap_mon_status_ring()
3747 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_process_rx_err_buf() local
3765 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_process_rx_err_buf()
3766 dma_unmap_single(ar->ab->dev, rxcb->paddr, in ath11k_dp_process_rx_err_buf()
3933 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_null_q_desc_sg_drop() local
3940 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_rx_null_q_desc_sg_drop()
3941 if (rxcb->err_rel_src == HAL_WBM_REL_SRC_MODULE_REO && in ath11k_dp_rx_null_q_desc_sg_drop()
3942 rxcb->err_code == HAL_REO_DEST_RING_ERROR_CODE_DESC_ADDR_ZERO) { in ath11k_dp_rx_null_q_desc_sg_drop()
3960 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_null_q_desc() local
3965 if (!rxcb->is_frag && ((msdu_len + hal_rx_desc_sz) > DP_RX_BUFFER_SIZE)) { in ath11k_dp_rx_h_null_q_desc()
3989 rxcb->is_first_msdu = ath11k_dp_rx_h_msdu_end_first_msdu(ar->ab, desc); in ath11k_dp_rx_h_null_q_desc()
3990 rxcb->is_last_msdu = ath11k_dp_rx_h_msdu_end_last_msdu(ar->ab, desc); in ath11k_dp_rx_h_null_q_desc()
3992 if (rxcb->is_frag) { in ath11k_dp_rx_h_null_q_desc()
4007 rxcb->tid = ath11k_dp_rx_h_mpdu_start_tid(ar->ab, desc); in ath11k_dp_rx_h_null_q_desc()
4020 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_reo_err() local
4023 ar->ab->soc_stats.reo_error[rxcb->err_code]++; in ath11k_dp_rx_h_reo_err()
4025 switch (rxcb->err_code) { in ath11k_dp_rx_h_reo_err()
4053 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_tkip_mic_err() local
4056 rxcb->is_first_msdu = ath11k_dp_rx_h_msdu_end_first_msdu(ar->ab, desc); in ath11k_dp_rx_h_tkip_mic_err()
4057 rxcb->is_last_msdu = ath11k_dp_rx_h_msdu_end_last_msdu(ar->ab, desc); in ath11k_dp_rx_h_tkip_mic_err()
4076 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_h_rxdma_err() local
4079 ar->ab->soc_stats.rxdma_error[rxcb->err_code]++; in ath11k_dp_rx_h_rxdma_err()
4081 switch (rxcb->err_code) { in ath11k_dp_rx_h_rxdma_err()
4101 struct ath11k_skb_rxcb *rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_wbm_err() local
4105 switch (rxcb->err_rel_src) { in ath11k_dp_rx_wbm_err()
4135 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_process_wbm_err() local
4182 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_process_wbm_err()
4183 dma_unmap_single(ab->dev, rxcb->paddr, in ath11k_dp_rx_process_wbm_err()
4197 rxcb->err_rel_src = err_info.err_rel_src; in ath11k_dp_rx_process_wbm_err()
4198 rxcb->err_code = err_info.err_code; in ath11k_dp_rx_process_wbm_err()
4199 rxcb->rx_desc = (struct hal_rx_desc *)msdu->data; in ath11k_dp_rx_process_wbm_err()
4253 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_process_rxdma_err() local
4312 rxcb = ATH11K_SKB_RXCB(skb); in ath11k_dp_process_rxdma_err()
4313 dma_unmap_single(ab->dev, rxcb->paddr, in ath11k_dp_process_rxdma_err()
4712 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_mon_mpdu_pop() local
4792 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_mon_mpdu_pop()
4793 if (!rxcb->unmapped) { in ath11k_dp_rx_mon_mpdu_pop()
4794 dma_unmap_single(ar->ab->dev, rxcb->paddr, in ath11k_dp_rx_mon_mpdu_pop()
4798 rxcb->unmapped = 1; in ath11k_dp_rx_mon_mpdu_pop()
5359 struct ath11k_skb_rxcb *rxcb; in ath11k_dp_rx_full_mon_mpdu_pop() local
5426 rxcb = ATH11K_SKB_RXCB(msdu); in ath11k_dp_rx_full_mon_mpdu_pop()
5427 if (!rxcb->unmapped) { in ath11k_dp_rx_full_mon_mpdu_pop()
5428 dma_unmap_single(ar->ab->dev, rxcb->paddr, in ath11k_dp_rx_full_mon_mpdu_pop()
5432 rxcb->unmapped = 1; in ath11k_dp_rx_full_mon_mpdu_pop()