usb: musb: cppi41: exit early when tx fifo is empty
authorFelipe Balbi <balbi@ti.com>
Fri, 27 Feb 2015 19:21:14 +0000 (13:21 -0600)
committerFelipe Balbi <balbi@ti.com>
Tue, 10 Mar 2015 20:33:32 +0000 (15:33 -0500)
as soon as we find out tx fifo is empty, there's
no need to break out of the loop just to have another
branch to complete the transfer. We can just complete
transfer and exit early.

Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/musb/musb_cppi41.c

index 73ac983..4407f30 100644 (file)
@@ -280,19 +280,15 @@ static void cppi41_dma_callback(void *private_data)
 
                do {
                        empty = musb_is_tx_fifo_empty(hw_ep);
-                       if (empty)
-                               break;
+                       if (empty) {
+                               cppi41_trans_done(cppi41_channel);
+                               goto out;
+                       }
                        wait--;
                        if (!wait)
                                break;
                        udelay(1);
                } while (1);
-
-               empty = musb_is_tx_fifo_empty(hw_ep);
-               if (empty) {
-                       cppi41_trans_done(cppi41_channel);
-                       goto out;
-               }
        }
        list_add_tail(&cppi41_channel->tx_check,
                        &controller->early_tx_list);