Title: [6913] branches/2009R1/drivers/usb/musb/musb_gadget.c: bug[#5269],bug[#5268],bug[#5264]correct dma address for tx,only complete the request when all data has been transfered
- Revision
- 6913
- Author
- cliff
- Date
- 2009-07-03 01:26:46 -0500 (Fri, 03 Jul 2009)
Log Message
bug[#5269],bug[#5268],bug[#5264]correct dma address for tx,only complete the request when all data has been transfered
Modified Paths
Diff
Modified: branches/2009R1/drivers/usb/musb/musb_gadget.c (6912 => 6913)
--- branches/2009R1/drivers/usb/musb/musb_gadget.c 2009-07-03 06:12:39 UTC (rev 6912)
+++ branches/2009R1/drivers/usb/musb/musb_gadget.c 2009-07-03 06:26:46 UTC (rev 6913)
@@ -316,7 +316,7 @@
use_dma = use_dma && c->channel_program(
musb_ep->dma, musb_ep->packet_sz,
musb_ep->dma->desired_mode,
- request->dma,
+ request->dma + request->actual,
(musb_ep->dma->desired_mode == 0)
? request_size
: (request_size -
@@ -512,7 +512,8 @@
| MUSB_TXCSR_TXPKTRDY);
request->zero = 0;
}
-
+ if (request->actual < request->length)
+ break;
/* ... or if not, then complete it */
musb_g_giveback(musb_ep, request, 0);
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits