usb: dwc3: gadget: pre-issue Start Transfer for Interrupt EPs too
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Mon, 26 Mar 2018 10:19:43 +0000 (13:19 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Mon, 21 May 2018 07:00:48 +0000 (10:00 +0300)
Interrupt endpoints behave much like Bulk endpoints with the exception
that they are periodic. We can pre-issue Start Transfer exactly as we
do for Bulk endpoints.

While at that, remove one trailing blank line which is unnecessary.

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

index 43cbc36..36fabde 100644 (file)
@@ -671,7 +671,8 @@ static int __dwc3_gadget_ep_enable(struct dwc3_ep *dep,
         * Issue StartTransfer here with no-op TRB so we can always rely on No
         * Response Update Transfer command.
         */
-       if (usb_endpoint_xfer_bulk(desc)) {
+       if (usb_endpoint_xfer_bulk(desc) ||
+                       usb_endpoint_xfer_int(desc)) {
                struct dwc3_gadget_ep_cmd_params params;
                struct dwc3_trb *trb;
                dma_addr_t trb_dma;
@@ -696,7 +697,6 @@ static int __dwc3_gadget_ep_enable(struct dwc3_ep *dep,
                WARN_ON_ONCE(!dep->resource_index);
        }
 
-
 out:
        trace_dwc3_gadget_ep_enable(dep);