usb: dwc3: gadget: abolish trbs_left
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Wed, 24 Aug 2016 11:37:22 +0000 (14:37 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 25 Aug 2016 09:13:20 +0000 (12:13 +0300)
Instead, we can always rely on dwc3_calc_trbs_left()
directly.

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/gadget.c

index 161a6bf..104b145 100644 (file)
@@ -886,7 +886,7 @@ static u32 dwc3_calc_trbs_left(struct dwc3_ep *dep)
 }
 
 static void dwc3_prepare_one_trb_sg(struct dwc3_ep *dep,
-               struct dwc3_request *req, unsigned int trbs_left)
+               struct dwc3_request *req)
 {
        struct scatterlist *sg = req->sg;
        struct scatterlist *s;
@@ -906,13 +906,13 @@ static void dwc3_prepare_one_trb_sg(struct dwc3_ep *dep,
                dwc3_prepare_one_trb(dep, req, dma, length,
                                chain, i);
 
-               if (!trbs_left--)
+               if (!dwc3_calc_trbs_left(dep))
                        break;
        }
 }
 
 static void dwc3_prepare_one_trb_linear(struct dwc3_ep *dep,
-               struct dwc3_request *req, unsigned int trbs_left)
+               struct dwc3_request *req)
 {
        unsigned int    length;
        dma_addr_t      dma;
@@ -935,21 +935,19 @@ static void dwc3_prepare_one_trb_linear(struct dwc3_ep *dep,
 static void dwc3_prepare_trbs(struct dwc3_ep *dep)
 {
        struct dwc3_request     *req, *n;
-       u32                     trbs_left;
 
        BUILD_BUG_ON_NOT_POWER_OF_2(DWC3_TRB_NUM);
 
-       trbs_left = dwc3_calc_trbs_left(dep);
-       if (!trbs_left)
+       if (!dwc3_calc_trbs_left(dep))
                return;
 
        list_for_each_entry_safe(req, n, &dep->pending_list, list) {
                if (req->num_pending_sgs > 0)
-                       dwc3_prepare_one_trb_sg(dep, req, trbs_left--);
+                       dwc3_prepare_one_trb_sg(dep, req);
                else
-                       dwc3_prepare_one_trb_linear(dep, req, trbs_left--);
+                       dwc3_prepare_one_trb_linear(dep, req);
 
-               if (!trbs_left)
+               if (!dwc3_calc_trbs_left(dep))
                        return;
        }
 }