@@ -47,40 +47,6 @@ netdev_tx_t enetc_xmit(struct sk_buff *skb, struct net_device *ndev)
4747 return NETDEV_TX_OK ;
4848}
4949
50- static bool enetc_tx_csum (struct sk_buff * skb , union enetc_tx_bd * txbd )
51- {
52- int l3_start , l3_hsize ;
53- u16 l3_flags , l4_flags ;
54-
55- if (skb -> ip_summed != CHECKSUM_PARTIAL )
56- return false;
57-
58- switch (skb -> csum_offset ) {
59- case offsetof(struct tcphdr , check ):
60- l4_flags = ENETC_TXBD_L4_TCP ;
61- break ;
62- case offsetof(struct udphdr , check ):
63- l4_flags = ENETC_TXBD_L4_UDP ;
64- break ;
65- default :
66- skb_checksum_help (skb );
67- return false;
68- }
69-
70- l3_start = skb_network_offset (skb );
71- l3_hsize = skb_network_header_len (skb );
72-
73- l3_flags = 0 ;
74- if (skb -> protocol == htons (ETH_P_IPV6 ))
75- l3_flags = ENETC_TXBD_L3_IPV6 ;
76-
77- /* write BD fields */
78- txbd -> l3_csoff = enetc_txbd_l3_csoff (l3_start , l3_hsize , l3_flags );
79- txbd -> l4_csoff = l4_flags ;
80-
81- return true;
82- }
83-
8450static void enetc_unmap_tx_buff (struct enetc_bdr * tx_ring ,
8551 struct enetc_tx_swbd * tx_swbd )
8652{
@@ -146,22 +112,16 @@ static int enetc_map_tx_buffs(struct enetc_bdr *tx_ring, struct sk_buff *skb,
146112 if (do_vlan || do_tstamp )
147113 flags |= ENETC_TXBD_FLAGS_EX ;
148114
149- if (enetc_tx_csum (skb , & temp_bd ))
150- flags |= ENETC_TXBD_FLAGS_CSUM | ENETC_TXBD_FLAGS_L4CS ;
151- else if (tx_ring -> tsd_enable )
115+ if (tx_ring -> tsd_enable )
152116 flags |= ENETC_TXBD_FLAGS_TSE | ENETC_TXBD_FLAGS_TXSTART ;
153117
154118 /* first BD needs frm_len and offload flags set */
155119 temp_bd .frm_len = cpu_to_le16 (skb -> len );
156120 temp_bd .flags = flags ;
157121
158- if (flags & ENETC_TXBD_FLAGS_TSE ) {
159- u32 temp ;
160-
161- temp = (skb -> skb_mstamp_ns >> 5 & ENETC_TXBD_TXSTART_MASK )
162- | (flags << ENETC_TXBD_FLAGS_OFFSET );
163- temp_bd .txstart = cpu_to_le32 (temp );
164- }
122+ if (flags & ENETC_TXBD_FLAGS_TSE )
123+ temp_bd .txstart = enetc_txbd_set_tx_start (skb -> skb_mstamp_ns ,
124+ flags );
165125
166126 if (flags & ENETC_TXBD_FLAGS_EX ) {
167127 u8 e_flags = 0 ;
@@ -1897,8 +1857,7 @@ static void enetc_kfree_si(struct enetc_si *si)
18971857static void enetc_detect_errata (struct enetc_si * si )
18981858{
18991859 if (si -> pdev -> revision == ENETC_REV1 )
1900- si -> errata = ENETC_ERR_TXCSUM | ENETC_ERR_VLAN_ISOL |
1901- ENETC_ERR_UCMCSWP ;
1860+ si -> errata = ENETC_ERR_VLAN_ISOL | ENETC_ERR_UCMCSWP ;
19021861}
19031862
19041863int enetc_pci_probe (struct pci_dev * pdev , const char * name , int sizeof_priv )
0 commit comments