Hi Stephen, On Thu, Aug 27, 2015 at 10:06:14AM -0600, Stephen Warren wrote: >On 08/27/2015 05:08 AM, Marek Vasut wrote: >>On Thursday, August 27, 2015 at 01:00:50 PM, Peng Fan wrote: >>>Implement endpoint dequeue callback function. >>> >>>Without this function, uboot will hang when executing fastboot comamnd. >>>See following flow: >>>"fastboot_tx_write_str->fastboot_tx_write->usb_ep_dequeue->ep->ops->dequeue >>>" without implement ci_udc dequeue function, ep->ops->dequeue is NULL, then >>>uboot will hang. >>> >>>Tested on mx6qsabresd board with fastboot enabled. > >>>diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c > >>>+static int ci_ep_dequeue(struct usb_ep *_ep, struct usb_request *_req) > >>>+ if (ci_req->req.status == -EINPROGRESS) { >>>+ ci_req->req.status = -ECONNRESET; >>>+ if (ci_req->req.complete) >>>+ ci_req->req.complete(_ep, _req); >>>+ } > >Is there no need to reprogram the HW to abort the transfer?
I checked linux udc driver drivers/usb/gadget/udc/fsl_qe_udc.c qe_ep_dequeue->done->usb_gadget_giveback_request->"req->complete(ep, req)" I did not see code to reprogram the HW to abort the transfer. Regards, Peng. -- _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot