
23 Feb
2015
23 Feb
'15
3:24 p.m.
Hi,
On Monday 23 February 2015 07:32 PM, Lukasz Majewski wrote:
From: Marek Szyprowski m.szyprowski@samsung.com
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 m.szyprowski@samsung.com
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