Add the missing clk_disable_unprepare() before return in axi_dma_resume(). Signed-off-by: Gaosheng Cui <cuigaosheng1@xxxxxxxxxx> --- drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c b/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c index fffafa86d964..8bada153bfed 100644 --- a/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c +++ b/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c @@ -1334,8 +1334,10 @@ static int axi_dma_resume(struct axi_dma_chip *chip) return ret; ret = clk_prepare_enable(chip->core_clk); - if (ret < 0) + if (ret < 0) { + clk_disable_unprepare(chip->cfgr_clk); return ret; + } axi_dma_enable(chip); axi_dma_irq_enable(chip); -- 2.25.1