> >>> usb_gadget_unmap_request(&hwep->ci->gadget, &hwreq->req, > >>> hwep->dir); > >>> > >>> hwreq->req.actual += actual; > >>> > >> > >> Applied and tested the patch. Still the same condition. > > > > How about change condition like: > > > >>> + if (!hw_read(ci, OP_ENDPTSTAT, BIT(n))) > >>> + reprime_dtd(ci, hwep, node); > > > > No, this doesn't work either :(. > > > If you still meet issue, you may help me indicate your "condition" > > detail. > > Can you tell me the condition details you are looking for? Transfer descriptor > list logs? > Ok, if your case is really the errata describes, the software has submitted the request, and it is waiting the completion, but the controller does not see this request has added, so, it will not trigger interrupt. Let's check this first. Peter -- 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