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

Log Message

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

Modified Paths

Diff

Modified: branches/2009R1/drivers/usb/musb/musb_host.c (6680 => 6681)


--- branches/2009R1/drivers/usb/musb/musb_host.c	2009-06-12 08:49:39 UTC (rev 6680)
+++ branches/2009R1/drivers/usb/musb/musb_host.c	2009-06-12 10:01:51 UTC (rev 6681)
@@ -608,7 +608,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