Title: [6682] trunk/drivers/usb/musb/musb_host.c: task[#2424]walk around RX DMA hang anomaly by disabling double buffer mode
Revision
6682
Author
cliff
Date
2009-06-12 05:05:49 -0500 (Fri, 12 Jun 2009)

Log Message

task[#2424]walk around RX DMA hang anomaly by disabling double buffer mode

Modified Paths

Diff

Modified: trunk/drivers/usb/musb/musb_host.c (6681 => 6682)


--- trunk/drivers/usb/musb/musb_host.c	2009-06-12 10:01:51 UTC (rev 6681)
+++ trunk/drivers/usb/musb/musb_host.c	2009-06-12 10:05:49 UTC (rev 6682)
@@ -633,7 +633,14 @@
 	musb_writeb(ep->regs, MUSB_RXTYPE, qh->type_reg);
 	musb_writeb(ep->regs, MUSB_RXINTERVAL, qh->intv_reg);
 	/* NOTE: bulk combining rewrites high bits of maxpacket */
-	musb_writew(ep->regs, MUSB_RXMAXP, qh->maxpacket);
+#if defined(CONFIG_BLACKFIN) && ANOMALY_05000465
+        /* Set RXMAXP with the FIFO size of the endpoint
+         * to diable double buffer mode.
+         */
+        musb_writew(ep->regs, MUSB_RXMAXP, ep->max_packet_sz_rx);
+#elif
+        musb_writew(ep->regs, MUSB_RXMAXP, qh->maxpacket);
+#endif
 
 	ep->rx_reinit = 0;
 }
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to