Lines Matching refs:fcb
1692 struct txfcb *fcb = skb_push(skb, GMAC_FCB_LEN);
1694 memset(fcb, 0, GMAC_FCB_LEN);
1696 return fcb;
1699 static inline void gfar_tx_checksum(struct sk_buff *skb, struct txfcb *fcb,
1713 fcb->phcs = (__force __be16)(udp_hdr(skb)->check);
1715 fcb->phcs = (__force __be16)(tcp_hdr(skb)->check);
1722 fcb->l3os = (u8)(skb_network_offset(skb) - fcb_length);
1723 fcb->l4os = skb_network_header_len(skb);
1725 fcb->flags = flags;
1728 static inline void gfar_tx_vlan(struct sk_buff *skb, struct txfcb *fcb)
1730 fcb->flags |= TXFCB_VLN;
1731 fcb->vlctl = cpu_to_be16(skb_vlan_tag_get(skb));
1748 /* eTSEC12: csum generation not supported for some fcb offsets */
1775 struct txfcb *fcb = NULL;
1802 /* make space for additional header when fcb is needed */
1846 fcb = gfar_add_fcb(skb);
1852 gfar_tx_checksum(skb, fcb, fcb_len);
1854 if (unlikely(gfar_csum_errata_12(priv, (unsigned long)fcb)) ||
1859 /* put back a new fcb for vlan/tstamp TOE */
1860 fcb = gfar_add_fcb(skb);
1864 fcb = NULL;
1870 gfar_tx_vlan(skb, fcb);
1942 fcb->ptp = 1;
2441 static inline void gfar_rx_checksum(struct sk_buff *skb, struct rxfcb *fcb)
2447 if ((be16_to_cpu(fcb->flags) & RXFCB_CSUM_MASK) ==
2458 struct rxfcb *fcb = NULL;
2460 /* fcb is at the beginning if exists */
2461 fcb = (struct rxfcb *)skb->data;
2485 gfar_rx_checksum(skb, fcb);
2492 be16_to_cpu(fcb->flags) & RXFCB_VLN)
2494 be16_to_cpu(fcb->vlctl));