summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorji.luo <ji.luo@nxp.com>2017-09-28 18:49:47 +0800
committerji.luo <ji.luo@nxp.com>2017-11-22 10:35:48 +0800
commitb195836e2b816018edcff5b58ed20b1ed914c7b7 (patch)
tree096bf242f7bf6fe18456cedc1b93be0c8a06000f
parent20b054b4252e1c8835fe9cf7afe0ad87b6d4935d (diff)
Enable multiple packets sent on fastboot
Change-Id: I2b8fd610258ffcf81fed25184e69a2d7f34c4b88 Signed-off-by: ji.luo <ji.luo@nxp.com>
-rwxr-xr-xdrivers/usb/gadget/f_fastboot.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c
index 592968487b..b60f161e6d 100755
--- a/drivers/usb/gadget/f_fastboot.c
+++ b/drivers/usb/gadget/f_fastboot.c
@@ -2008,9 +2008,13 @@ static int fastboot_tx_write(const char *buffer, unsigned int buffer_size)
struct usb_request *in_req = fastboot_func->in_req;
int ret;
+ /* TODO: Investigate why this is necessary */
+ udelay(8500);
+
memcpy(in_req->buf, buffer, buffer_size);
in_req->length = buffer_size;
+ usb_gadget_handle_interrupts(0);
usb_ep_dequeue(fastboot_func->in_ep, in_req);
ret = usb_ep_queue(fastboot_func->in_ep, in_req, 0);