diff options
| -rw-r--r-- | drivers/usb/gadget/imx_udc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/usb/gadget/imx_udc.c b/drivers/usb/gadget/imx_udc.c index 239bf8ed9f4a..c52a681f376c 100644 --- a/drivers/usb/gadget/imx_udc.c +++ b/drivers/usb/gadget/imx_udc.c | |||
| @@ -415,6 +415,13 @@ static int write_packet(struct imx_ep_struct *imx_ep, struct imx_request *req) | |||
| 415 | u8 *buf; | 415 | u8 *buf; |
| 416 | int length, count, temp; | 416 | int length, count, temp; |
| 417 | 417 | ||
| 418 | if (unlikely(__raw_readl(imx_ep->imx_usb->base + | ||
| 419 | USB_EP_STAT(EP_NO(imx_ep))) & EPSTAT_ZLPS)) { | ||
| 420 | D_TRX(imx_ep->imx_usb->dev, "<%s> zlp still queued in EP %s\n", | ||
| 421 | __func__, imx_ep->ep.name); | ||
| 422 | return -1; | ||
| 423 | } | ||
| 424 | |||
| 418 | buf = req->req.buf + req->req.actual; | 425 | buf = req->req.buf + req->req.actual; |
| 419 | prefetch(buf); | 426 | prefetch(buf); |
| 420 | 427 | ||
