devices/ccat/netdev-3.4-ethercat.c
branchstable-1.5
changeset 2551 000da5069f1a
parent 2550 7e25950ea941
child 2552 6e419c23b1b3
equal deleted inserted replaced
2550:7e25950ea941 2551:000da5069f1a
   447 
   447 
   448 	priv->kfree_skb_any(skb);
   448 	priv->kfree_skb_any(skb);
   449 
   449 
   450 	addr_and_length = 8 + (next * sizeof(*frame));
   450 	addr_and_length = 8 + (next * sizeof(*frame));
   451 	addr_and_length +=
   451 	addr_and_length +=
   452 	    ((frame[next].length + sizeof(CCAT_HEADER_TAG) + 8) / 8) << 24;
   452 	    ((frame[next].length + CCAT_DMA_FRAME_HEADER_LENGTH) / 8) << 24;
   453 	iowrite32(addr_and_length, priv->reg.tx_fifo);	/* add to DMA fifo */
   453 	iowrite32(addr_and_length, priv->reg.tx_fifo);	/* add to DMA fifo */
   454 	atomic64_add(frame[next].length, &priv->tx_bytes);	/* update stats */
   454 	atomic64_add(frame[next].length, &priv->tx_bytes);	/* update stats */
   455 
   455 
   456 	next = (next + 1) % FIFO_LENGTH;
   456 	next = (next + 1) % FIFO_LENGTH;
   457 	/* stop queue if tx ring is full */
   457 	/* stop queue if tx ring is full */