From 97155db74b7461e5d517af6e3fdb4059f8e35f35 Mon Sep 17 00:00:00 2001 From: Jon Lin Date: Sat, 19 Mar 2022 20:36:58 +0800 Subject: [PATCH] pcie-dma-trx: Reinit completion signal before dma start Change-Id: Ic353c7f6b5195026eade229df7d77adb3c495945 Signed-off-by: Jon Lin --- drivers/pci/controller/rockchip-pcie-dma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/controller/rockchip-pcie-dma.c b/drivers/pci/controller/rockchip-pcie-dma.c index 000b686c7aa3..71c312ec1afc 100644 --- a/drivers/pci/controller/rockchip-pcie-dma.c +++ b/drivers/pci/controller/rockchip-pcie-dma.c @@ -286,6 +286,7 @@ static void rk_pcie_dma_trx_work(struct work_struct *work) WARN_ON(1); return; } + reinit_completion(&obj->done); obj->start_dma_func(obj); } } @@ -538,7 +539,6 @@ static long rk_pcie_misc_ioctl(struct file *filp, unsigned int cmd, DMA_FROM_DEVICE); break; case PCIE_DMA_WAIT_TRANSFER_COMPLETE: - reinit_completion(&obj->done); ret = wait_for_completion_interruptible(&obj->done); if (WARN_ON(ret)) { pr_info("failed to wait complete\n");