Lines Matching refs:tpa_info
670 struct qede_agg_info *tpa_info = &rxq->tpa_info[tpa_agg_index]; in qede_fill_frag_skb() local
671 struct sk_buff *skb = tpa_info->skb; in qede_fill_frag_skb()
673 if (unlikely(tpa_info->state != QEDE_AGG_STATE_START)) in qede_fill_frag_skb()
677 skb_fill_page_desc(skb, tpa_info->frag_id++, in qede_fill_frag_skb()
699 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_fill_frag_skb()
835 struct qede_agg_info *tpa_info = &rxq->tpa_info[cqe->tpa_agg_index]; in qede_tpa_start() local
842 tpa_info->skb = qede_tpa_rx_build_skb(edev, rxq, sw_rx_data_cons, in qede_tpa_start()
845 tpa_info->buffer.page_offset = sw_rx_data_cons->page_offset; in qede_tpa_start()
846 tpa_info->buffer.mapping = sw_rx_data_cons->mapping; in qede_tpa_start()
848 if (unlikely(!tpa_info->skb)) { in qede_tpa_start()
855 tpa_info->tpa_start_fail = true; in qede_tpa_start()
857 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_tpa_start()
861 tpa_info->frag_id = 0; in qede_tpa_start()
862 tpa_info->state = QEDE_AGG_STATE_START; in qede_tpa_start()
867 tpa_info->vlan_tag = le16_to_cpu(cqe->vlan_tag); in qede_tpa_start()
869 tpa_info->vlan_tag = 0; in qede_tpa_start()
871 qede_get_rxhash(tpa_info->skb, cqe->bitfields, cqe->rss_hash); in qede_tpa_start()
874 qede_set_gro_params(edev, tpa_info->skb, cqe); in qede_tpa_start()
884 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_tpa_start()
977 struct qede_agg_info *tpa_info; in qede_tpa_end() local
981 tpa_info = &rxq->tpa_info[cqe->tpa_agg_index]; in qede_tpa_end()
982 skb = tpa_info->skb; in qede_tpa_end()
984 if (tpa_info->buffer.page_offset == PAGE_SIZE) in qede_tpa_end()
985 dma_unmap_page(rxq->dev, tpa_info->buffer.mapping, in qede_tpa_end()
995 if (unlikely(tpa_info->state != QEDE_AGG_STATE_START)) in qede_tpa_end()
999 if (unlikely(cqe->num_of_bds != tpa_info->frag_id + 1)) in qede_tpa_end()
1002 cqe->num_of_bds, tpa_info->frag_id); in qede_tpa_end()
1017 qede_gro_receive(edev, fp, skb, tpa_info->vlan_tag); in qede_tpa_end()
1019 tpa_info->state = QEDE_AGG_STATE_NONE; in qede_tpa_end()
1023 tpa_info->state = QEDE_AGG_STATE_NONE; in qede_tpa_end()
1025 if (tpa_info->tpa_start_fail) { in qede_tpa_end()
1026 qede_reuse_page(rxq, &tpa_info->buffer); in qede_tpa_end()
1027 tpa_info->tpa_start_fail = false; in qede_tpa_end()
1030 dev_kfree_skb_any(tpa_info->skb); in qede_tpa_end()
1031 tpa_info->skb = NULL; in qede_tpa_end()