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 <ba...@ti.com>
---
 drivers/usb/musb/musb_cppi41.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/usb/musb/musb_cppi41.c b/drivers/usb/musb/musb_cppi41.c
index 73ac9835485d..4407f30d0b86 100644
--- a/drivers/usb/musb/musb_cppi41.c
+++ b/drivers/usb/musb/musb_cppi41.c
@@ -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);
-- 
2.3.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to