Title: [6675] trunk/drivers/usb/musb/musb_gadget.c: workaround RX DMA hang anomaly by disabling double buffer mode
Revision
6675
Author
cliff
Date
2009-06-11 22:14:39 -0500 (Thu, 11 Jun 2009)

Log Message

workaround RX DMA hang anomaly by disabling double buffer mode

Modified Paths


Diff

Modified: trunk/drivers/usb/musb/musb_gadget.c (6674 => 6675)


--- trunk/drivers/usb/musb/musb_gadget.c	2009-06-12 03:05:17 UTC (rev 6674)
+++ trunk/drivers/usb/musb/musb_gadget.c	2009-06-12 03:14:39 UTC (rev 6675)
@@ -957,8 +957,14 @@
 		/* REVISIT if can_bulk_combine() use by updating "tmp"
 		 * likewise high bandwidth periodic rx
 		 */
-		musb_writew(regs, MUSB_RXMAXP, tmp);
-
+#if defined(CONFIG_BLACKFIN) && ANOMALY_05000465
+                /* Set RXMAXP with the FIFO size of the endpoint
+                 * to diable double buffer mode.
+                 */
+                musb_writew(regs, MUSB_RXMAXP, hw_ep->max_packet_sz_rx);
+#elif
+                musb_writew(regs, MUSB_RXMAXP, tmp);
+#endif
 		/* force shared fifo to OUT-only mode */
 		if (hw_ep->is_shared_fifo) {
 			csr = musb_readw(regs, MUSB_TXCSR);
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to