Hi,
On Monday 23 February 2015 07:32 PM, Lukasz Majewski wrote:
From: Marek Szyprowski <[email protected]>
DWC3 hangs on OUT requests smaller than maxpacket size,
so HACK the request length to be at least equal to maxpacket size.
Curious to know using which gadget this issue was seen.
Thanks
Kishon
Signed-off-by: Marek Szyprowski <[email protected]>
---
drivers/usb/dwc3/gadget.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 01bc83b..f8a75d3 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -974,6 +974,12 @@ static int __dwc3_gadget_ep_queue(struct dwc3_ep *dep,
struct dwc3_request *req)
req->direction = dep->direction;
req->epnum = dep->number;
+ /* DWC3 hangs on OUT requests smaller than maxpacket size,
+ so HACK the request length */
+ if (dep->direction == 0 &&
+ req->request.length < dep->endpoint.maxpacket)
+ req->request.length = dep->endpoint.maxpacket;
+
/*
* We only add to our list of requests now and
* start consuming the list once we get XferNotReady
_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot