Loading drivers/usb/dwc3/gadget.c +11 −8 Original line number Diff line number Diff line Loading @@ -1444,6 +1444,8 @@ static void dwc3_prepare_trbs(struct dwc3_ep *dep) } } static void dwc3_gadget_ep_cleanup_cancelled_requests(struct dwc3_ep *dep); static int __dwc3_gadget_kick_transfer(struct dwc3_ep *dep) { struct dwc3_gadget_ep_cmd_params params; Loading Loading @@ -1511,14 +1513,15 @@ static int __dwc3_gadget_kick_transfer(struct dwc3_ep *dep) return ret; } /* * FIXME we need to iterate over the list of requests * here and stop, unmap, free and del each of the linked * requests instead of what we do now. */ if (req->trb) memset(req->trb, 0, sizeof(struct dwc3_trb)); dwc3_gadget_del_and_unmap_request(dep, req, ret); dwc3_stop_active_transfer(dwc, dep->number, true); list_for_each_entry_safe(req, n, &dep->started_list, list) dwc3_gadget_move_cancelled_request(req); /* If ep isn't started, then there's no end transfer pending */ if (!(dep->flags & DWC3_EP_END_TRANSFER_PENDING)) dwc3_gadget_ep_cleanup_cancelled_requests(dep); return ret; } Loading Loading
drivers/usb/dwc3/gadget.c +11 −8 Original line number Diff line number Diff line Loading @@ -1444,6 +1444,8 @@ static void dwc3_prepare_trbs(struct dwc3_ep *dep) } } static void dwc3_gadget_ep_cleanup_cancelled_requests(struct dwc3_ep *dep); static int __dwc3_gadget_kick_transfer(struct dwc3_ep *dep) { struct dwc3_gadget_ep_cmd_params params; Loading Loading @@ -1511,14 +1513,15 @@ static int __dwc3_gadget_kick_transfer(struct dwc3_ep *dep) return ret; } /* * FIXME we need to iterate over the list of requests * here and stop, unmap, free and del each of the linked * requests instead of what we do now. */ if (req->trb) memset(req->trb, 0, sizeof(struct dwc3_trb)); dwc3_gadget_del_and_unmap_request(dep, req, ret); dwc3_stop_active_transfer(dwc, dep->number, true); list_for_each_entry_safe(req, n, &dep->started_list, list) dwc3_gadget_move_cancelled_request(req); /* If ep isn't started, then there's no end transfer pending */ if (!(dep->flags & DWC3_EP_END_TRANSFER_PENDING)) dwc3_gadget_ep_cleanup_cancelled_requests(dep); return ret; } Loading