Lines Matching refs:tpa_info
655 struct qede_agg_info *tpa_info = &rxq->tpa_info[tpa_agg_index]; in qede_fill_frag_skb() local
656 struct sk_buff *skb = tpa_info->skb; in qede_fill_frag_skb()
658 if (unlikely(tpa_info->state != QEDE_AGG_STATE_START)) in qede_fill_frag_skb()
662 skb_fill_page_desc(skb, tpa_info->frag_id++, in qede_fill_frag_skb()
684 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_fill_frag_skb()
818 struct qede_agg_info *tpa_info = &rxq->tpa_info[cqe->tpa_agg_index]; in qede_tpa_start() local
825 tpa_info->skb = qede_tpa_rx_build_skb(edev, rxq, sw_rx_data_cons, in qede_tpa_start()
828 tpa_info->buffer.page_offset = sw_rx_data_cons->page_offset; in qede_tpa_start()
829 tpa_info->buffer.mapping = sw_rx_data_cons->mapping; in qede_tpa_start()
831 if (unlikely(!tpa_info->skb)) { in qede_tpa_start()
838 tpa_info->tpa_start_fail = true; in qede_tpa_start()
840 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_tpa_start()
844 tpa_info->frag_id = 0; in qede_tpa_start()
845 tpa_info->state = QEDE_AGG_STATE_START; in qede_tpa_start()
850 tpa_info->vlan_tag = le16_to_cpu(cqe->vlan_tag); in qede_tpa_start()
852 tpa_info->vlan_tag = 0; in qede_tpa_start()
854 qede_get_rxhash(tpa_info->skb, cqe->bitfields, cqe->rss_hash); in qede_tpa_start()
857 qede_set_gro_params(edev, tpa_info->skb, cqe); in qede_tpa_start()
867 tpa_info->state = QEDE_AGG_STATE_ERROR; in qede_tpa_start()
960 struct qede_agg_info *tpa_info; in qede_tpa_end() local
964 tpa_info = &rxq->tpa_info[cqe->tpa_agg_index]; in qede_tpa_end()
965 skb = tpa_info->skb; in qede_tpa_end()
967 if (tpa_info->buffer.page_offset == PAGE_SIZE) in qede_tpa_end()
968 dma_unmap_page(rxq->dev, tpa_info->buffer.mapping, in qede_tpa_end()
978 if (unlikely(tpa_info->state != QEDE_AGG_STATE_START)) in qede_tpa_end()
982 if (unlikely(cqe->num_of_bds != tpa_info->frag_id + 1)) in qede_tpa_end()
985 cqe->num_of_bds, tpa_info->frag_id); in qede_tpa_end()
1000 qede_gro_receive(edev, fp, skb, tpa_info->vlan_tag); in qede_tpa_end()
1002 tpa_info->state = QEDE_AGG_STATE_NONE; in qede_tpa_end()
1006 tpa_info->state = QEDE_AGG_STATE_NONE; in qede_tpa_end()
1008 if (tpa_info->tpa_start_fail) { in qede_tpa_end()
1009 qede_reuse_page(rxq, &tpa_info->buffer); in qede_tpa_end()
1010 tpa_info->tpa_start_fail = false; in qede_tpa_end()
1013 dev_kfree_skb_any(tpa_info->skb); in qede_tpa_end()
1014 tpa_info->skb = NULL; in qede_tpa_end()