Loading drivers/usb/dwc3/gadget.c +11 −0 Original line number Diff line number Diff line Loading @@ -2873,8 +2873,19 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep, const struct dwc3_event_depevt *event, struct dwc3_request *req, int status) { struct dwc3 *dwc = dep->dwc; int ret; /* * If the HWO is set, it implies the TRB is still being * processed by the core. Hence do not reclaim it until * it is processed by the core. */ if (req->trb->ctrl & DWC3_TRB_CTRL_HWO) { dbg_event(0xFF, "PEND TRB", dep->number); return 1; } if (req->num_pending_sgs) ret = dwc3_gadget_ep_reclaim_trb_sg(dep, req, event, status); Loading Loading
drivers/usb/dwc3/gadget.c +11 −0 Original line number Diff line number Diff line Loading @@ -2873,8 +2873,19 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep, const struct dwc3_event_depevt *event, struct dwc3_request *req, int status) { struct dwc3 *dwc = dep->dwc; int ret; /* * If the HWO is set, it implies the TRB is still being * processed by the core. Hence do not reclaim it until * it is processed by the core. */ if (req->trb->ctrl & DWC3_TRB_CTRL_HWO) { dbg_event(0xFF, "PEND TRB", dep->number); return 1; } if (req->num_pending_sgs) ret = dwc3_gadget_ep_reclaim_trb_sg(dep, req, event, status); Loading