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

Reply via email to