summary refs log tree commit diff
path: root/drivers/dma/mediatek
diff options
context:
space:
mode:
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>2020-12-19 13:47:18 +0100
committerVinod Koul <vkoul@kernel.org>2020-12-29 10:07:59 +0530
commit33cbd54dc515cc04b5a603603414222b4bb1448d (patch)
tree5e2ddc16d839f8d31789529079d90d6568ed6546 /drivers/dma/mediatek
parent8fb28795fb64e1151c0e713686d8b026a5a2aece (diff)
downloadlinux-33cbd54dc515cc04b5a603603414222b4bb1448d.tar.gz
dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling path of the probe function
'mtk_hsdma_hw_deinit()' should be called in the error handling path of the
probe function to undo a previous 'mtk_hsdma_hw_init()' call, as already
done in the remove function.

Fixes: 548c4597e984 ("dmaengine: mediatek: Add MediaTek High-Speed DMA controller for MT7622 and MT7623 SoC")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/20201219124718.182664-1-christophe.jaillet@wanadoo.fr
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/dma/mediatek')
-rw-r--r--drivers/dma/mediatek/mtk-hsdma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/dma/mediatek/mtk-hsdma.c b/drivers/dma/mediatek/mtk-hsdma.c
index f133ae8dece1..6ad8afbb95f2 100644
--- a/drivers/dma/mediatek/mtk-hsdma.c
+++ b/drivers/dma/mediatek/mtk-hsdma.c
@@ -1007,6 +1007,7 @@ static int mtk_hsdma_probe(struct platform_device *pdev)
 	return 0;
 
 err_free:
+	mtk_hsdma_hw_deinit(hsdma);
 	of_dma_controller_free(pdev->dev.of_node);
 err_unregister:
 	dma_async_device_unregister(dd);