Lines Matching full:cqe
31 struct nix_cqe_rx_s *cqe,
117 struct nix_cqe_tx_s *cqe) in otx2_xdp_snd_pkt_handler() argument
119 struct nix_send_comp_s *snd_comp = &cqe->comp; in otx2_xdp_snd_pkt_handler()
136 struct nix_cqe_tx_s *cqe, in otx2_snd_pkt_handler() argument
139 struct nix_send_comp_s *snd_comp = &cqe->comp; in otx2_snd_pkt_handler()
233 struct nix_cqe_rx_s *cqe, struct sk_buff *skb) in otx2_set_rxhash() argument
249 hash = cqe->hdr.flow_tag; in otx2_set_rxhash()
254 static void otx2_free_rcv_seg(struct otx2_nic *pfvf, struct nix_cqe_rx_s *cqe, in otx2_free_rcv_seg() argument
257 struct nix_rx_sg_s *sg = &cqe->sg; in otx2_free_rcv_seg()
263 end = start + ((cqe->parse.desc_sizem1 + 1) * 16); in otx2_free_rcv_seg()
275 struct nix_cqe_rx_s *cqe, int qidx) in otx2_check_rcv_errors() argument
278 struct nix_rx_parse_s *parse = &cqe->parse; in otx2_check_rcv_errors()
333 if (cqe->sg.segs) in otx2_check_rcv_errors()
334 otx2_free_rcv_seg(pfvf, cqe, qidx); in otx2_check_rcv_errors()
341 struct nix_cqe_rx_s *cqe, bool *need_xdp_flush) in otx2_rcv_pkt_handler() argument
343 struct nix_rx_parse_s *parse = &cqe->parse; in otx2_rcv_pkt_handler()
344 struct nix_rx_sg_s *sg = &cqe->sg; in otx2_rcv_pkt_handler()
352 if (otx2_check_rcv_errors(pfvf, cqe, cq->cq_idx)) in otx2_rcv_pkt_handler()
357 if (otx2_xdp_rcv_pkt_handler(pfvf, pfvf->xdp_prog, cqe, cq, need_xdp_flush)) in otx2_rcv_pkt_handler()
365 end = start + ((cqe->parse.desc_sizem1 + 1) * 16); in otx2_rcv_pkt_handler()
377 otx2_set_rxhash(pfvf, cqe, skb); in otx2_rcv_pkt_handler()
396 struct nix_cqe_rx_s *cqe; in otx2_rx_napi_handler() local
407 cqe = (struct nix_cqe_rx_s *)CQE_ADDR(cq, cq->cq_head); in otx2_rx_napi_handler()
408 if (cqe->hdr.cqe_type == NIX_XQE_TYPE_INVALID || in otx2_rx_napi_handler()
409 !cqe->sg.seg_addr) { in otx2_rx_napi_handler()
417 otx2_rcv_pkt_handler(pfvf, napi, cq, cqe, &need_xdp_flush); in otx2_rx_napi_handler()
419 cqe->hdr.cqe_type = NIX_XQE_TYPE_INVALID; in otx2_rx_napi_handler()
420 cqe->sg.seg_addr = 0x00; in otx2_rx_napi_handler()
455 struct nix_cqe_tx_s *cqe; in otx2_tx_napi_handler() local
469 cqe = (struct nix_cqe_tx_s *)otx2_get_next_cqe(cq); in otx2_tx_napi_handler()
470 if (unlikely(!cqe)) { in otx2_tx_napi_handler()
479 otx2_xdp_snd_pkt_handler(pfvf, sq, cqe); in otx2_tx_napi_handler()
482 cqe, budget, &tx_pkts, &tx_bytes); in otx2_tx_napi_handler()
484 cqe->hdr.cqe_type = NIX_XQE_TYPE_INVALID; in otx2_tx_napi_handler()
766 /* Post a CQE Tx after pkt transmission */ in otx2_sqe_add_hdr()
1218 struct nix_cqe_rx_s *cqe; in otx2_cleanup_rx_cqes() local
1234 cqe = (struct nix_cqe_rx_s *)otx2_get_next_cqe(cq); in otx2_cleanup_rx_cqes()
1238 if (!cqe) in otx2_cleanup_rx_cqes()
1240 if (cqe->sg.segs > 1) { in otx2_cleanup_rx_cqes()
1241 otx2_free_rcv_seg(pfvf, cqe, cq->cq_idx); in otx2_cleanup_rx_cqes()
1244 iova = cqe->sg.seg_addr - OTX2_HEAD_ROOM; in otx2_cleanup_rx_cqes()
1259 struct nix_cqe_tx_s *cqe; in otx2_cleanup_tx_cqes() local
1272 cqe = (struct nix_cqe_tx_s *)otx2_get_next_cqe(cq); in otx2_cleanup_tx_cqes()
1276 if (!cqe) in otx2_cleanup_tx_cqes()
1278 sg = &sq->sg[cqe->comp.sqe_id]; in otx2_cleanup_tx_cqes()
1408 struct nix_cqe_rx_s *cqe, in otx2_xdp_rcv_pkt_handler() argument
1420 iova = cqe->sg.seg_addr - OTX2_HEAD_ROOM; in otx2_xdp_rcv_pkt_handler()
1428 cqe->sg.seg_size, false); in otx2_xdp_rcv_pkt_handler()
1439 cqe->sg.seg_size, qidx); in otx2_xdp_rcv_pkt_handler()