Lines Matching full:fcb
1725 struct txfcb *fcb = skb_push(skb, GMAC_FCB_LEN); in gfar_add_fcb() local
1727 memset(fcb, 0, GMAC_FCB_LEN); in gfar_add_fcb()
1729 return fcb; in gfar_add_fcb()
1732 static inline void gfar_tx_checksum(struct sk_buff *skb, struct txfcb *fcb, in gfar_tx_checksum() argument
1746 fcb->phcs = (__force __be16)(udp_hdr(skb)->check); in gfar_tx_checksum()
1748 fcb->phcs = (__force __be16)(tcp_hdr(skb)->check); in gfar_tx_checksum()
1755 fcb->l3os = (u8)(skb_network_offset(skb) - fcb_length); in gfar_tx_checksum()
1756 fcb->l4os = skb_network_header_len(skb); in gfar_tx_checksum()
1758 fcb->flags = flags; in gfar_tx_checksum()
1761 static inline void gfar_tx_vlan(struct sk_buff *skb, struct txfcb *fcb) in gfar_tx_vlan() argument
1763 fcb->flags |= TXFCB_VLN; in gfar_tx_vlan()
1764 fcb->vlctl = cpu_to_be16(skb_vlan_tag_get(skb)); in gfar_tx_vlan()
1781 /* eTSEC12: csum generation not supported for some fcb offsets */
1808 struct txfcb *fcb = NULL; in gfar_start_xmit() local
1835 /* make space for additional header when fcb is needed */ in gfar_start_xmit()
1871 /* Add TxPAL between FCB and frame if required */ in gfar_start_xmit()
1879 fcb = gfar_add_fcb(skb); in gfar_start_xmit()
1885 gfar_tx_checksum(skb, fcb, fcb_len); in gfar_start_xmit()
1887 if (unlikely(gfar_csum_errata_12(priv, (unsigned long)fcb)) || in gfar_start_xmit()
1892 /* put back a new fcb for vlan/tstamp TOE */ in gfar_start_xmit()
1893 fcb = gfar_add_fcb(skb); in gfar_start_xmit()
1897 fcb = NULL; in gfar_start_xmit()
1903 gfar_tx_vlan(skb, fcb); in gfar_start_xmit()
1954 * first TxBD points to the FCB and must have a data length of in gfar_start_xmit()
1975 fcb->ptp = 1; in gfar_start_xmit()
2477 static inline void gfar_rx_checksum(struct sk_buff *skb, struct rxfcb *fcb) in gfar_rx_checksum() argument
2483 if ((be16_to_cpu(fcb->flags) & RXFCB_CSUM_MASK) == in gfar_rx_checksum()
2494 struct rxfcb *fcb = NULL; in gfar_process_frame() local
2496 /* fcb is at the beginning if exists */ in gfar_process_frame()
2497 fcb = (struct rxfcb *)skb->data; in gfar_process_frame()
2499 /* Remove the FCB from the skb in gfar_process_frame()
2521 gfar_rx_checksum(skb, fcb); in gfar_process_frame()
2528 be16_to_cpu(fcb->flags) & RXFCB_VLN) in gfar_process_frame()
2530 be16_to_cpu(fcb->vlctl)); in gfar_process_frame()