Browse Source

usb: musb: cppi41: exit early when tx fifo is empty

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>
Felipe Balbi 10 years ago
parent
commit
af63429cf0
1 changed files with 4 additions and 8 deletions
  1. 4 8
      drivers/usb/musb/musb_cppi41.c

+ 4 - 8
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);