Hello. On 25-08-2012 6:54, Pratyush Anand wrote: There are several typos here and there... First, s/Pedning/pending/ in the subject.
If xfernotready is received and there is no request in request_list then PENDING flag must be set, so that next request in ep queue is executed.
In case of isoc transfer, if xfornotready is alreday elapsed and even first
s/xfornotready/xfernotready/, s/alreday/already/.
request has not been queued to request_list, then issue END TRANSFER, so that you can receive xfernotready again and can have notion of current microframe.
Signed-off-by: Pratyush Anand <pratyush.anand@xxxxxx> --- drivers/usb/dwc3/gadget.c | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-) diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 5d41d74..5ebbd9f 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c
[...]
@@ -1103,6 +1104,16 @@ static int __dwc3_gadget_ep_queue(struct dwc3_ep *dep, struct dwc3_request *req) if (dep->flags & DWC3_EP_PENDING_REQUEST) { int ret; + /* + * If xfornotready is already elapsed and it is a case
s/xfornotready/xfernotready/. WBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html