Lines Matching refs:nbuf
49 qdf_nbuf_t nbuf, struct hal_rx_msdu_metadata msdu_info) in is_sa_da_idx_valid() argument
51 if ((qdf_nbuf_is_sa_valid(nbuf) && (msdu_info.sa_idx > max_ast)) || in is_sa_da_idx_valid()
52 (!qdf_nbuf_is_da_mcbc(nbuf) && qdf_nbuf_is_da_valid(nbuf) && in is_sa_da_idx_valid()
73 qdf_nbuf_t nbuf) in dp_rx_mec_check_wrapper() argument
75 return dp_rx_mcast_echo_check(soc, txrx_peer, rx_tlv_hdr, nbuf); in dp_rx_mec_check_wrapper()
81 qdf_nbuf_t nbuf) in dp_rx_mec_check_wrapper() argument
90 dp_rx_intrabss_ucast_check_li(struct dp_soc *soc, qdf_nbuf_t nbuf, in dp_rx_intrabss_ucast_check_li() argument
100 if (!qdf_nbuf_is_da_valid(nbuf) || qdf_nbuf_is_da_mcbc(nbuf)) in dp_rx_intrabss_ucast_check_li()
160 qdf_nbuf_t nbuf, in dp_rx_intrabss_fwd_li() argument
174 if (qdf_nbuf_is_da_mcbc(nbuf) && !ta_txrx_peer->bss_peer) in dp_rx_intrabss_fwd_li()
176 nbuf, tid_stats, 0); in dp_rx_intrabss_fwd_li()
179 nbuf)) in dp_rx_intrabss_fwd_li()
182 if (dp_rx_intrabss_ucast_check_li(soc, nbuf, ta_txrx_peer, in dp_rx_intrabss_fwd_li()
185 rx_tlv_hdr, nbuf, tid_stats, in dp_rx_intrabss_fwd_li()
201 qdf_nbuf_t nbuf, next; in dp_rx_process_li() local
347 if (qdf_unlikely(rx_desc && rx_desc->nbuf)) { in dp_rx_process_li()
350 dp_rx_buffer_pool_nbuf_free(soc, rx_desc->nbuf, in dp_rx_process_li()
436 qdf_nbuf_set_rx_retry_flag(rx_desc->nbuf, 1); in dp_rx_process_li()
440 qdf_nbuf_set_raw_frame(rx_desc->nbuf, 1); in dp_rx_process_li()
448 QDF_NBUF_CB_RX_PEER_ID(rx_desc->nbuf) = in dp_rx_process_li()
450 QDF_NBUF_CB_RX_VDEV_ID(rx_desc->nbuf) = in dp_rx_process_li()
466 qdf_nbuf_set_rx_chfrag_start(rx_desc->nbuf, 1); in dp_rx_process_li()
469 qdf_nbuf_set_rx_chfrag_cont(rx_desc->nbuf, 1); in dp_rx_process_li()
472 qdf_nbuf_set_rx_chfrag_end(rx_desc->nbuf, 1); in dp_rx_process_li()
475 qdf_nbuf_set_da_mcbc(rx_desc->nbuf, 1); in dp_rx_process_li()
478 qdf_nbuf_set_da_valid(rx_desc->nbuf, 1); in dp_rx_process_li()
481 qdf_nbuf_set_sa_valid(rx_desc->nbuf, 1); in dp_rx_process_li()
483 qdf_nbuf_set_tid_val(rx_desc->nbuf, in dp_rx_process_li()
488 rx_desc->nbuf, in dp_rx_process_li()
491 QDF_NBUF_CB_RX_PKT_LEN(rx_desc->nbuf) = msdu_desc_info.msdu_len; in dp_rx_process_li()
493 QDF_NBUF_CB_RX_CTX_ID(rx_desc->nbuf) = reo_ring_num; in dp_rx_process_li()
559 nbuf = nbuf_head; in dp_rx_process_li()
560 while (nbuf) { in dp_rx_process_li()
561 next = nbuf->next; in dp_rx_process_li()
562 dp_rx_prefetch_nbuf_data(nbuf, next); in dp_rx_process_li()
564 if (qdf_unlikely(dp_rx_is_raw_frame_dropped(nbuf))) { in dp_rx_process_li()
565 nbuf = next; in dp_rx_process_li()
570 rx_tlv_hdr = qdf_nbuf_data(nbuf); in dp_rx_process_li()
571 vdev_id = QDF_NBUF_CB_RX_VDEV_ID(nbuf); in dp_rx_process_li()
572 peer_id = QDF_NBUF_CB_RX_PEER_ID(nbuf); in dp_rx_process_li()
584 if (qdf_nbuf_is_rx_chfrag_start(nbuf)) in dp_rx_process_li()
585 tid = qdf_nbuf_get_tid_val(nbuf); in dp_rx_process_li()
589 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
590 nbuf = next; in dp_rx_process_li()
596 dp_rx_get_txrx_peer_and_vdev(soc, nbuf, peer_id, in dp_rx_process_li()
603 nbuf = next; in dp_rx_process_li()
611 dp_rx_get_txrx_peer_and_vdev(soc, nbuf, peer_id, in dp_rx_process_li()
618 nbuf = next; in dp_rx_process_li()
624 QDF_NBUF_CB_DP_TRACE_PRINT(nbuf) = false; in dp_rx_process_li()
625 qdf_dp_trace_set_track(nbuf, QDF_RX); in dp_rx_process_li()
626 QDF_NBUF_CB_RX_DP_TRACE(nbuf) = 1; in dp_rx_process_li()
627 QDF_NBUF_CB_RX_PACKET_TRACK(nbuf) = in dp_rx_process_li()
638 qdf_nbuf_set_priority(nbuf, tid); in dp_rx_process_li()
640 DP_RX_TID_SAVE(nbuf, tid); in dp_rx_process_li()
643 qdf_nbuf_set_timestamp(nbuf); in dp_rx_process_li()
655 if (qdf_likely(!qdf_nbuf_is_rx_chfrag_cont(nbuf))) { in dp_rx_process_li()
664 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
665 nbuf = next; in dp_rx_process_li()
670 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
671 nbuf = next; in dp_rx_process_li()
703 if (qdf_unlikely(qdf_nbuf_is_frag(nbuf))) { in dp_rx_process_li()
715 qdf_nbuf_set_da_mcbc(nbuf, is_mcbc); in dp_rx_process_li()
716 qdf_nbuf_set_da_valid(nbuf, is_da_vld); in dp_rx_process_li()
717 qdf_nbuf_set_sa_valid(nbuf, is_sa_vld); in dp_rx_process_li()
719 qdf_nbuf_pull_head(nbuf, soc->rx_pkt_tlv_size); in dp_rx_process_li()
720 } else if (qdf_nbuf_is_rx_chfrag_cont(nbuf)) { in dp_rx_process_li()
721 msdu_len = QDF_NBUF_CB_RX_PKT_LEN(nbuf); in dp_rx_process_li()
722 nbuf = dp_rx_sg_create(soc, nbuf); in dp_rx_process_li()
723 next = nbuf->next; in dp_rx_process_li()
725 if (qdf_nbuf_is_raw_frame(nbuf)) { in dp_rx_process_li()
735 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
738 nbuf = next; in dp_rx_process_li()
743 msdu_len = QDF_NBUF_CB_RX_PKT_LEN(nbuf); in dp_rx_process_li()
748 qdf_nbuf_set_pktlen(nbuf, pkt_len); in dp_rx_process_li()
749 dp_rx_skip_tlvs(soc, nbuf, msdu_metadata.l3_hdr_pad); in dp_rx_process_li()
752 dp_rx_send_pktlog(soc, rx_pdev, nbuf, QDF_TX_RX_STATUS_OK); in dp_rx_process_li()
758 if (dp_rx_multipass_process(txrx_peer, nbuf, in dp_rx_process_li()
763 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
764 nbuf = next; in dp_rx_process_li()
776 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
778 nbuf = next; in dp_rx_process_li()
783 (qdf_nbuf_is_da_mcbc(nbuf)) && in dp_rx_process_li()
791 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
792 nbuf = next; in dp_rx_process_li()
801 !qdf_nbuf_is_raw_frame(nbuf)) { in dp_rx_process_li()
802 bool is_eapol = qdf_nbuf_is_ipv4_eapol_pkt(nbuf) || in dp_rx_process_li()
803 qdf_nbuf_is_ipv4_wapi_pkt(nbuf); in dp_rx_process_li()
809 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
810 nbuf = next; in dp_rx_process_li()
816 dp_rx_cksum_offload(vdev->pdev, nbuf, rx_tlv_hdr); in dp_rx_process_li()
819 dp_rx_update_protocol_tag(soc, vdev, nbuf, rx_tlv_hdr, in dp_rx_process_li()
823 dp_rx_update_flow_tag(soc, vdev, nbuf, rx_tlv_hdr, true); in dp_rx_process_li()
825 dp_rx_msdu_stats_update(soc, nbuf, rx_tlv_hdr, txrx_peer, in dp_rx_process_li()
829 if (dp_rx_filter_mesh_packets(vdev, nbuf, rx_tlv_hdr) in dp_rx_process_li()
836 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
837 nbuf = next; in dp_rx_process_li()
840 dp_rx_fill_mesh_stats(vdev, nbuf, rx_tlv_hdr, in dp_rx_process_li()
857 if (!is_sa_da_idx_valid(max_ast, nbuf, in dp_rx_process_li()
859 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
860 nbuf = next; in dp_rx_process_li()
867 nbuf))) { in dp_rx_process_li()
871 QDF_NBUF_CB_RX_PKT_LEN(nbuf), in dp_rx_process_li()
873 dp_rx_nbuf_free(nbuf); in dp_rx_process_li()
874 nbuf = next; in dp_rx_process_li()
882 nbuf, in dp_rx_process_li()
889 nbuf, in dp_rx_process_li()
892 nbuf = next; in dp_rx_process_li()
898 dp_rx_fill_gro_info(soc, rx_tlv_hdr, nbuf, &rx_ol_pkt_cnt); in dp_rx_process_li()
901 nbuf); in dp_rx_process_li()
903 dp_rx_update_stats(soc, nbuf); in dp_rx_process_li()
906 current_time, nbuf); in dp_rx_process_li()
910 nbuf); in dp_rx_process_li()
912 QDF_NBUF_CB_RX_PKT_LEN(nbuf)); in dp_rx_process_li()
915 QDF_NBUF_CB_RX_PKT_LEN(nbuf), 0); in dp_rx_process_li()
919 QDF_NBUF_CB_RX_PKT_LEN(nbuf), in dp_rx_process_li()
923 nbuf = next; in dp_rx_process_li()
1014 bool dp_rx_chain_msdus_li(struct dp_soc *soc, qdf_nbuf_t nbuf, in dp_rx_chain_msdus_li() argument
1041 qdf_nbuf_set_rx_chfrag_start(nbuf, 1); in dp_rx_chain_msdus_li()
1070 qdf_nbuf_set_rx_chfrag_end(nbuf, 1); in dp_rx_chain_msdus_li()
1085 nbuf); in dp_rx_chain_msdus_li()
1113 qdf_nbuf_t nbuf; in dp_rx_wbm_err_reap_desc_li() local
1190 nbuf = rx_desc->nbuf; in dp_rx_wbm_err_reap_desc_li()
1197 nbuf); in dp_rx_wbm_err_reap_desc_li()
1203 rx_tlv_hdr = qdf_nbuf_data(nbuf); in dp_rx_wbm_err_reap_desc_li()
1206 QDF_NBUF_CB_RX_PEER_ID(rx_desc->nbuf) = in dp_rx_wbm_err_reap_desc_li()
1214 qdf_nbuf_set_tid_val(rx_desc->nbuf, mpdu_desc_info.tid); in dp_rx_wbm_err_reap_desc_li()
1218 dp_rx_nbuf_unmap_pool(soc, rx_desc_pool, nbuf); in dp_rx_wbm_err_reap_desc_li()
1235 qdf_nbuf_data(nbuf)); in dp_rx_wbm_err_reap_desc_li()
1242 qdf_nbuf_set_rx_chfrag_cont(nbuf, 1); in dp_rx_wbm_err_reap_desc_li()
1243 QDF_NBUF_CB_RX_PKT_LEN(nbuf) = in dp_rx_wbm_err_reap_desc_li()
1247 qdf_nbuf_set_rx_chfrag_start(nbuf, 1); in dp_rx_wbm_err_reap_desc_li()
1248 qdf_nbuf_set_rx_chfrag_end(nbuf, 1); in dp_rx_wbm_err_reap_desc_li()
1249 QDF_NBUF_CB_RX_PKT_LEN(nbuf) = in dp_rx_wbm_err_reap_desc_li()
1260 dp_rx_set_wbm_err_info_in_nbuf(soc, nbuf, wbm_err_info); in dp_rx_wbm_err_reap_desc_li()
1264 if (qdf_nbuf_is_rx_chfrag_cont(nbuf) || process_sg_buf) { in dp_rx_wbm_err_reap_desc_li()
1267 nbuf); in dp_rx_wbm_err_reap_desc_li()
1281 } else if (!dp_rx_buffer_pool_refill(soc, nbuf, in dp_rx_wbm_err_reap_desc_li()
1283 DP_RX_LIST_APPEND(nbuf_head, nbuf_tail, nbuf); in dp_rx_wbm_err_reap_desc_li()
1329 dp_rx_null_q_desc_handle_li(struct dp_soc *soc, qdf_nbuf_t nbuf, in dp_rx_null_q_desc_handle_li() argument
1349 nbuf, in dp_rx_null_q_desc_handle_li()
1352 qdf_nbuf_set_rx_chfrag_end(nbuf, in dp_rx_null_q_desc_handle_li()
1355 qdf_nbuf_set_da_mcbc(nbuf, hal_rx_msdu_end_da_is_mcbc_get(soc->hal_soc, in dp_rx_null_q_desc_handle_li()
1357 qdf_nbuf_set_da_valid(nbuf, in dp_rx_null_q_desc_handle_li()
1360 qdf_nbuf_set_sa_valid(nbuf, in dp_rx_null_q_desc_handle_li()
1369 if (qdf_likely(!qdf_nbuf_is_frag(nbuf))) { in dp_rx_null_q_desc_handle_li()
1374 qdf_nbuf_set_pktlen(nbuf, qdf_min(pkt_len, (uint32_t)buf_size)); in dp_rx_null_q_desc_handle_li()
1390 rx_tlv_hdr, nbuf)) in dp_rx_null_q_desc_handle_li()
1404 qdf_nbuf_len(nbuf)); in dp_rx_null_q_desc_handle_li()
1409 nbuf->next = NULL; in dp_rx_null_q_desc_handle_li()
1412 nbuf, in dp_rx_null_q_desc_handle_li()
1416 mpdu_done = soc->arch_ops.dp_rx_chain_msdus(soc, nbuf, in dp_rx_null_q_desc_handle_li()
1445 if (qdf_nbuf_is_frag(nbuf)) in dp_rx_null_q_desc_handle_li()
1446 qdf_nbuf_pull_head(nbuf, soc->rx_pkt_tlv_size); in dp_rx_null_q_desc_handle_li()
1448 qdf_nbuf_pull_head(nbuf, (msdu_metadata.l3_hdr_pad + in dp_rx_null_q_desc_handle_li()
1451 DP_STATS_INC_PKT(vdev, rx_i.null_q_desc_pkt, 1, qdf_nbuf_len(nbuf)); in dp_rx_null_q_desc_handle_li()
1453 dp_vdev_peer_stats_update_protocol_cnt(vdev, nbuf, NULL, 0, 1); in dp_rx_null_q_desc_handle_li()
1472 dp_rx_mcast_echo_check(soc, txrx_peer, rx_tlv_hdr, nbuf)) { in dp_rx_null_q_desc_handle_li()
1475 qdf_nbuf_len(nbuf), 0); in dp_rx_null_q_desc_handle_li()
1484 if (check_qwrap_multicast_loopback(vdev, nbuf)) { in dp_rx_null_q_desc_handle_li()
1486 qdf_nbuf_len(nbuf), 0); in dp_rx_null_q_desc_handle_li()
1509 dp_rx_wds_srcport_learn(soc, rx_tlv_hdr, txrx_peer, nbuf, in dp_rx_null_q_desc_handle_li()
1544 eh = (qdf_ether_header_t *)qdf_nbuf_data(nbuf); in dp_rx_null_q_desc_handle_li()
1547 is_eapol = qdf_nbuf_is_ipv4_eapol_pkt(nbuf); in dp_rx_null_q_desc_handle_li()
1549 if (is_eapol || qdf_nbuf_is_ipv4_wapi_pkt(nbuf)) { in dp_rx_null_q_desc_handle_li()
1569 if (qdf_unlikely(dp_rx_err_cce_drop(soc, vdev, nbuf, rx_tlv_hdr))) in dp_rx_null_q_desc_handle_li()
1573 qdf_nbuf_set_raw_frame(nbuf, 1); in dp_rx_null_q_desc_handle_li()
1574 qdf_nbuf_set_next(nbuf, NULL); in dp_rx_null_q_desc_handle_li()
1575 dp_rx_deliver_raw(vdev, nbuf, txrx_peer, 0); in dp_rx_null_q_desc_handle_li()
1578 qdf_nbuf_set_next(nbuf, NULL); in dp_rx_null_q_desc_handle_li()
1579 DP_PEER_TO_STACK_INCC_PKT(txrx_peer, 1, qdf_nbuf_len(nbuf), in dp_rx_null_q_desc_handle_li()
1584 qdf_nbuf_len(nbuf), 0); in dp_rx_null_q_desc_handle_li()
1589 dp_rx_update_protocol_tag(soc, vdev, nbuf, rx_tlv_hdr, in dp_rx_null_q_desc_handle_li()
1594 dp_rx_update_flow_tag(soc, vdev, nbuf, in dp_rx_null_q_desc_handle_li()
1601 DP_PEER_MC_INCC_PKT(txrx_peer, 1, qdf_nbuf_len(nbuf), in dp_rx_null_q_desc_handle_li()
1606 qdf_nbuf_len(nbuf), in dp_rx_null_q_desc_handle_li()
1610 qdf_nbuf_len(nbuf), in dp_rx_null_q_desc_handle_li()
1615 qdf_nbuf_set_exc_frame(nbuf, 1); in dp_rx_null_q_desc_handle_li()
1618 if (dp_rx_multipass_process(txrx_peer, nbuf, in dp_rx_null_q_desc_handle_li()
1628 dp_rx_deliver_to_osif_stack(soc, vdev, txrx_peer, nbuf, NULL, in dp_rx_null_q_desc_handle_li()
1634 dp_rx_nbuf_free(nbuf); in dp_rx_null_q_desc_handle_li()