Title: [6509] branches/2009R1/drivers/net/bfin_mac.c: Rollback last commit and apply Mike's correct explanation.
Revision
6509
Author
sonicz
Date
2009-05-30 21:59:36 -0500 (Sat, 30 May 2009)

Log Message

Rollback last commit and apply Mike's correct explanation.

Make sure the internal data buffer in the core are drained
so that the DMA descriptors are completely written when the
the DMA engins goes to fetch them bellow.

Modified Paths

Diff

Modified: branches/2009R1/drivers/net/bfin_mac.c (6508 => 6509)


--- branches/2009R1/drivers/net/bfin_mac.c	2009-05-31 02:54:40 UTC (rev 6508)
+++ branches/2009R1/drivers/net/bfin_mac.c	2009-05-31 02:59:36 UTC (rev 6509)
@@ -641,6 +641,12 @@
 			(u32)(current_tx_ptr->packet + skb->len + 2));
 	}
 
+	/* Make sure the internal data buffer in the core are drained
+	 * so that the DMA descriptors are completely written when the
+	 * the DMA engins goes to fetch them bellow.
+	 */
+	SSYNC();
+
 	/* enable this packet's dma */
 	current_tx_ptr->desc_a.config |= DMAEN;
 
@@ -650,10 +656,6 @@
 
 	/* tx dma is not running */
 	bfin_write_DMA2_NEXT_DESC_PTR(&(current_tx_ptr->desc_a));
-	/* Make sure data is really written into DMA NEXT_DESC_PRT register
-	 * before enabling the DMA controller.
-	 */
-	SSYNC();
 	/* dma enabled, read from memory, size is 6 */
 	bfin_write_DMA2_CONFIG(current_tx_ptr->desc_a.config);
 	/* Turn on the EMAC tx */
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to