Lines Matching full:rx_desc
256 struct ath12k_rx_desc_info *rx_desc; in ath12k_dp_list_cut_nodes() local
268 rx_desc = list_entry(cur, struct ath12k_rx_desc_info, list); in ath12k_dp_list_cut_nodes()
269 rx_desc->in_use = true; in ath12k_dp_list_cut_nodes()
283 struct ath12k_rx_desc_info *rx_desc, *safe; in ath12k_dp_rx_enqueue_free() local
286 list_for_each_entry_safe(rx_desc, safe, used_list, list) in ath12k_dp_rx_enqueue_free()
287 rx_desc->in_use = false; in ath12k_dp_rx_enqueue_free()
308 struct ath12k_rx_desc_info *rx_desc; in ath12k_dp_rx_bufs_replenish() local
358 rx_desc = list_first_entry_or_null(used_list, in ath12k_dp_rx_bufs_replenish()
361 if (!rx_desc) in ath12k_dp_rx_bufs_replenish()
364 rx_desc->skb = skb; in ath12k_dp_rx_bufs_replenish()
365 cookie = rx_desc->cookie; in ath12k_dp_rx_bufs_replenish()
371 list_del(&rx_desc->list); in ath12k_dp_rx_bufs_replenish()
1799 ath12k_dp_rx_desc_end_tlv_copy(ab, rxcb->rx_desc, ldesc); in ath12k_dp_rx_msdu_coalesce()
1868 ip_csum_fail = ath12k_dp_rx_h_ip_cksum_fail(ab, rxcb->rx_desc); in ath12k_dp_rx_h_csum_offload()
1869 l4_csum_fail = ath12k_dp_rx_h_l4_cksum_fail(ab, rxcb->rx_desc); in ath12k_dp_rx_h_csum_offload()
1981 if (ath12k_dp_rx_h_mesh_ctl_present(ab, rxcb->rx_desc)) in ath12k_dp_rx_h_undecap_nwifi()
1993 rxcb->rx_desc, crypto_hdr, in ath12k_dp_rx_h_undecap_nwifi()
2067 struct hal_rx_desc *rx_desc = rxcb->rx_desc; in ath12k_get_dot11_hdr_from_rx_desc() local
2078 ath12k_dp_rx_desc_get_crypto_header(ab, rx_desc, crypto_hdr, enctype); in ath12k_get_dot11_hdr_from_rx_desc()
2081 fc = cpu_to_le16(ath12k_dp_rxdesc_get_mpdu_frame_ctrl(ab, rx_desc)); in ath12k_get_dot11_hdr_from_rx_desc()
2087 /* Get wifi header from rx_desc */ in ath12k_get_dot11_hdr_from_rx_desc()
2088 ath12k_dp_rx_desc_get_dot11_hdr(ab, rx_desc, hdr); in ath12k_get_dot11_hdr_from_rx_desc()
2096 if (ath12k_dp_rx_h_mesh_ctl_present(ab, rx_desc)) in ath12k_get_dot11_hdr_from_rx_desc()
2135 struct hal_rx_desc *rx_desc, in ath12k_dp_rx_h_undecap() argument
2144 decap = ath12k_dp_rx_h_decap_type(ab, rx_desc); in ath12k_dp_rx_h_undecap()
2180 struct hal_rx_desc *rx_desc = rxcb->rx_desc; in ath12k_dp_rx_h_find_peer() local
2191 if (!rx_desc || !(ath12k_dp_rxdesc_mac_addr2_valid(ab, rx_desc))) in ath12k_dp_rx_h_find_peer()
2196 rx_desc)); in ath12k_dp_rx_h_find_peer()
2202 struct hal_rx_desc *rx_desc, in ath12k_dp_rx_h_mpdu() argument
2216 fill_crypto_hdr = ath12k_dp_rx_h_is_da_mcbc(ar->ab, rx_desc); in ath12k_dp_rx_h_mpdu()
2220 rxcb->peer_id = ath12k_dp_rx_h_peer_id(ar->ab, rx_desc); in ath12k_dp_rx_h_mpdu()
2234 err_bitmap = ath12k_dp_rx_h_mpdu_err(ab, rx_desc); in ath12k_dp_rx_h_mpdu()
2236 is_decrypted = ath12k_dp_rx_h_is_decrypted(ab, rx_desc); in ath12k_dp_rx_h_mpdu()
2262 ath12k_dp_rx_h_undecap(ar, msdu, rx_desc, in ath12k_dp_rx_h_mpdu()
2268 if (ath12k_dp_rx_h_decap_type(ar->ab, rx_desc) != in ath12k_dp_rx_h_mpdu()
2275 static void ath12k_dp_rx_h_rate(struct ath12k *ar, struct hal_rx_desc *rx_desc, in ath12k_dp_rx_h_rate() argument
2286 pkt_type = ath12k_dp_rx_h_pkt_type(ab, rx_desc); in ath12k_dp_rx_h_rate()
2287 bw = ath12k_dp_rx_h_rx_bw(ab, rx_desc); in ath12k_dp_rx_h_rate()
2288 rate_mcs = ath12k_dp_rx_h_rate_mcs(ab, rx_desc); in ath12k_dp_rx_h_rate()
2289 nss = ath12k_dp_rx_h_nss(ab, rx_desc); in ath12k_dp_rx_h_rate()
2290 sgi = ath12k_dp_rx_h_sgi(ab, rx_desc); in ath12k_dp_rx_h_rate()
2343 void ath12k_dp_rx_h_ppdu(struct ath12k *ar, struct hal_rx_desc *rx_desc, in ath12k_dp_rx_h_ppdu() argument
2360 meta_data = ath12k_dp_rx_h_freq(ab, rx_desc); in ath12k_dp_rx_h_ppdu()
2381 ath12k_dbg_dump(ar->ab, ATH12K_DBG_DATA, NULL, "rx_desc: ", in ath12k_dp_rx_h_ppdu()
2382 rx_desc, sizeof(*rx_desc)); in ath12k_dp_rx_h_ppdu()
2389 ath12k_dp_rx_h_rate(ar, rx_desc, rx_status); in ath12k_dp_rx_h_ppdu()
2419 decap = ath12k_dp_rx_h_decap_type(ab, rxcb->rx_desc); in ath12k_dp_rx_deliver_msdu()
2435 ath12k_dp_rx_h_seq_no(ab, rxcb->rx_desc), in ath12k_dp_rx_deliver_msdu()
2479 struct hal_rx_desc *rx_desc, *lrx_desc; in ath12k_dp_rx_process_msdu() local
2495 rx_desc = (struct hal_rx_desc *)msdu->data; in ath12k_dp_rx_process_msdu()
2504 rxcb->rx_desc = rx_desc; in ath12k_dp_rx_process_msdu()
2514 ath12k_dbg_dump(ab, ATH12K_DBG_DATA, NULL, "", rx_desc, in ath12k_dp_rx_process_msdu()
2515 sizeof(*rx_desc)); in ath12k_dp_rx_process_msdu()
2531 ath12k_dp_rx_h_ppdu(ar, rx_desc, rx_status); in ath12k_dp_rx_process_msdu()
2532 ath12k_dp_rx_h_mpdu(ar, msdu, rx_desc, rx_status); in ath12k_dp_rx_process_msdu()
2718 * get rx_desc NULL. Give the read another try with updated cached in ath12k_dp_rx_process()
2839 struct hal_rx_desc *rx_desc = (struct hal_rx_desc *)msdu->data; in ath12k_dp_rx_h_verify_tkip_mic() local
2850 if (ath12k_dp_rx_h_enctype(ab, rx_desc) != HAL_ENCRYPT_TYPE_TKIP_MIC) in ath12k_dp_rx_h_verify_tkip_mic()
2883 ath12k_dp_rx_h_ppdu(ar, rx_desc, rxs); in ath12k_dp_rx_h_verify_tkip_mic()
2884 ath12k_dp_rx_h_undecap(ar, msdu, rx_desc, in ath12k_dp_rx_h_verify_tkip_mic()
2927 struct hal_rx_desc *rx_desc; in ath12k_dp_rx_h_defrag() local
2941 rx_desc = (struct hal_rx_desc *)skb->data; in ath12k_dp_rx_h_defrag()
2944 enctype = ath12k_dp_rx_h_enctype(ab, rx_desc); in ath12k_dp_rx_h_defrag()
2947 rx_desc); in ath12k_dp_rx_h_defrag()
2996 struct hal_rx_desc *rx_desc = (struct hal_rx_desc *)defrag_skb->data; in ath12k_dp_rx_h_defrag_reo_reinject() local
3038 ath12k_dp_rxdesc_set_msdu_len(ab, rx_desc, defrag_skb->len - hal_rx_desc_sz); in ath12k_dp_rx_h_defrag_reo_reinject()
3216 struct hal_rx_desc *rx_desc; in ath12k_dp_rx_frag_h_mpdu() local
3226 rx_desc = (struct hal_rx_desc *)msdu->data; in ath12k_dp_rx_frag_h_mpdu()
3227 peer_id = ath12k_dp_rx_h_peer_id(ab, rx_desc); in ath12k_dp_rx_frag_h_mpdu()
3228 tid = ath12k_dp_rx_h_tid(ab, rx_desc); in ath12k_dp_rx_frag_h_mpdu()
3229 seqno = ath12k_dp_rx_h_seq_no(ab, rx_desc); in ath12k_dp_rx_frag_h_mpdu()
3233 if (!ath12k_dp_rx_h_seq_ctrl_valid(ab, rx_desc) || in ath12k_dp_rx_frag_h_mpdu()
3234 !ath12k_dp_rx_h_fc_valid(ab, rx_desc) || in ath12k_dp_rx_frag_h_mpdu()
3345 struct hal_rx_desc *rx_desc; in ath12k_dp_process_rx_err_buf() local
3394 rx_desc = (struct hal_rx_desc *)msdu->data; in ath12k_dp_process_rx_err_buf()
3395 msdu_len = ath12k_dp_rx_h_msdu_len(ar->ab, rx_desc); in ath12k_dp_process_rx_err_buf()
3398 ath12k_dbg_dump(ar->ab, ATH12K_DBG_DATA, NULL, "", rx_desc, in ath12k_dp_process_rx_err_buf()
3399 sizeof(*rx_desc)); in ath12k_dp_process_rx_err_buf()
3679 struct hal_rx_desc *rx_desc = (struct hal_rx_desc *)msdu->data; in ath12k_dp_rx_h_rxdma_err() local
3688 err_bitmap = ath12k_dp_rx_h_mpdu_err(ab, rx_desc); in ath12k_dp_rx_h_rxdma_err()
3746 void *rx_desc; in ath12k_dp_rx_process_wbm_err() local
3763 rx_desc = ath12k_hal_srng_dst_get_next_entry(ab, srng); in ath12k_dp_rx_process_wbm_err()
3764 if (!rx_desc) in ath12k_dp_rx_process_wbm_err()
3767 ret = ath12k_hal_wbm_desc_parse_err(ab, rx_desc, &err_info); in ath12k_dp_rx_process_wbm_err()
3775 desc_info = err_info.rx_desc; in ath12k_dp_rx_process_wbm_err()
3817 rxcb->rx_desc = msdu_data; in ath12k_dp_rx_process_wbm_err()
4067 * and modify the rx_desc struct in ath12k_dp_rxdma_ring_sel_config_wcn7850()