usb: dwc3: gadget: keep track of allocated and queued reqs
We will be using this information to change how we figure out when we need LST bit. For now, just update our counters. Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
This commit is contained in:
@@ -741,6 +741,8 @@ static struct usb_request *dwc3_gadget_ep_alloc_request(struct usb_ep *ep,
|
||||
req->epnum = dep->number;
|
||||
req->dep = dep;
|
||||
|
||||
dep->allocated_requests++;
|
||||
|
||||
trace_dwc3_alloc_request(req);
|
||||
|
||||
return &req->request;
|
||||
@@ -750,7 +752,9 @@ static void dwc3_gadget_ep_free_request(struct usb_ep *ep,
|
||||
struct usb_request *request)
|
||||
{
|
||||
struct dwc3_request *req = to_dwc3_request(request);
|
||||
struct dwc3_ep *dep = to_dwc3_ep(ep);
|
||||
|
||||
dep->allocated_requests--;
|
||||
trace_dwc3_free_request(req);
|
||||
kfree(req);
|
||||
}
|
||||
@@ -831,6 +835,8 @@ static void dwc3_prepare_one_trb(struct dwc3_ep *dep,
|
||||
|
||||
trb->ctrl |= DWC3_TRB_CTRL_HWO;
|
||||
|
||||
dep->queued_requests++;
|
||||
|
||||
trace_dwc3_prepare_trb(dep, trb);
|
||||
}
|
||||
|
||||
@@ -1936,6 +1942,7 @@ static int __dwc3_cleanup_done_trbs(struct dwc3 *dwc, struct dwc3_ep *dep,
|
||||
unsigned int s_pkt = 0;
|
||||
unsigned int trb_status;
|
||||
|
||||
dep->queued_requests--;
|
||||
trace_dwc3_complete_trb(dep, trb);
|
||||
|
||||
if ((trb->ctrl & DWC3_TRB_CTRL_HWO) && status != -ESHUTDOWN)
|
||||
|
Reference in New Issue
Block a user