From f35134b0fef51bcfad06aa14fdc08f0f5bb6f89e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= Date: Thu, 28 May 2009 13:00:14 +0200 Subject: [PATCH] --- yaml --- r: 151383 b: refs/heads/master c: 680cc64557101eaaca706dc9a1a0777f35aac0da h: refs/heads/master i: 151381: 84e68a3a02a49b54dfff9ad933dd6ec0a45e83ab 151379: 76e21c136d580160b4781521f663a2bc43bab7f4 151375: c47ec1ed54d9acf8a162f633e96f8ecbb675b741 v: v3 --- [refs] | 2 +- trunk/drivers/usb/gadget/imx_udc.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 8bd460889129..887df4be0783 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2e25134122c25ebb0679b4bbd536fb46c669f9d7 +refs/heads/master: 680cc64557101eaaca706dc9a1a0777f35aac0da diff --git a/trunk/drivers/usb/gadget/imx_udc.c b/trunk/drivers/usb/gadget/imx_udc.c index 239bf8ed9f4a..c52a681f376c 100644 --- a/trunk/drivers/usb/gadget/imx_udc.c +++ b/trunk/drivers/usb/gadget/imx_udc.c @@ -415,6 +415,13 @@ static int write_packet(struct imx_ep_struct *imx_ep, struct imx_request *req) u8 *buf; int length, count, temp; + if (unlikely(__raw_readl(imx_ep->imx_usb->base + + USB_EP_STAT(EP_NO(imx_ep))) & EPSTAT_ZLPS)) { + D_TRX(imx_ep->imx_usb->dev, "<%s> zlp still queued in EP %s\n", + __func__, imx_ep->ep.name); + return -1; + } + buf = req->req.buf + req->req.actual; prefetch(buf);