浏览代码

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 年之前
父节点
当前提交
af63429cf0
共有 1 个文件被更改,包括 4 次插入8 次删除
  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 {
 		do {
 			empty = musb_is_tx_fifo_empty(hw_ep);
 			empty = musb_is_tx_fifo_empty(hw_ep);
-			if (empty)
-				break;
+			if (empty) {
+				cppi41_trans_done(cppi41_channel);
+				goto out;
+			}
 			wait--;
 			wait--;
 			if (!wait)
 			if (!wait)
 				break;
 				break;
 			udelay(1);
 			udelay(1);
 		} while (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,
 	list_add_tail(&cppi41_channel->tx_check,
 			&controller->early_tx_list);
 			&controller->early_tx_list);