diff options
Diffstat (limited to 'drivers/net/mv643xx_eth.c')
-rw-r--r-- | drivers/net/mv643xx_eth.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c index 8015a7c5b0c9..ab15ecd4b3d6 100644 --- a/drivers/net/mv643xx_eth.c +++ b/drivers/net/mv643xx_eth.c | |||
@@ -434,7 +434,6 @@ static int mv643xx_eth_receive_queue(struct net_device *dev, int budget) | |||
434 | * received packet | 434 | * received packet |
435 | */ | 435 | */ |
436 | skb_put(skb, pkt_info.byte_cnt - 4); | 436 | skb_put(skb, pkt_info.byte_cnt - 4); |
437 | skb->dev = dev; | ||
438 | 437 | ||
439 | if (pkt_info.cmd_sts & ETH_LAYER_4_CHECKSUM_OK) { | 438 | if (pkt_info.cmd_sts & ETH_LAYER_4_CHECKSUM_OK) { |
440 | skb->ip_summed = CHECKSUM_UNNECESSARY; | 439 | skb->ip_summed = CHECKSUM_UNNECESSARY; |
@@ -1162,15 +1161,15 @@ static void eth_tx_submit_descs_for_skb(struct mv643xx_private *mp, | |||
1162 | 1161 | ||
1163 | cmd_sts |= ETH_GEN_TCP_UDP_CHECKSUM | | 1162 | cmd_sts |= ETH_GEN_TCP_UDP_CHECKSUM | |
1164 | ETH_GEN_IP_V_4_CHECKSUM | | 1163 | ETH_GEN_IP_V_4_CHECKSUM | |
1165 | skb->nh.iph->ihl << ETH_TX_IHL_SHIFT; | 1164 | ip_hdr(skb)->ihl << ETH_TX_IHL_SHIFT; |
1166 | 1165 | ||
1167 | switch (skb->nh.iph->protocol) { | 1166 | switch (ip_hdr(skb)->protocol) { |
1168 | case IPPROTO_UDP: | 1167 | case IPPROTO_UDP: |
1169 | cmd_sts |= ETH_UDP_FRAME; | 1168 | cmd_sts |= ETH_UDP_FRAME; |
1170 | desc->l4i_chk = skb->h.uh->check; | 1169 | desc->l4i_chk = udp_hdr(skb)->check; |
1171 | break; | 1170 | break; |
1172 | case IPPROTO_TCP: | 1171 | case IPPROTO_TCP: |
1173 | desc->l4i_chk = skb->h.th->check; | 1172 | desc->l4i_chk = tcp_hdr(skb)->check; |
1174 | break; | 1173 | break; |
1175 | default: | 1174 | default: |
1176 | BUG(); | 1175 | BUG(); |