Add the missing clk_disable_unprepare() before return in kmb_dsi_clk_enable(). Signed-off-by: Gaosheng Cui <cuigaosheng1@xxxxxxxxxx> --- drivers/gpu/drm/kmb/kmb_dsi.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/kmb/kmb_dsi.c b/drivers/gpu/drm/kmb/kmb_dsi.c index cf7cf0b07541..02141ac593c6 100644 --- a/drivers/gpu/drm/kmb/kmb_dsi.c +++ b/drivers/gpu/drm/kmb/kmb_dsi.c @@ -1494,12 +1494,15 @@ static int kmb_dsi_clk_enable(struct kmb_dsi *kmb_dsi) ret = clk_prepare_enable(kmb_dsi->clk_mipi_ecfg); if (ret) { dev_err(dev, "Failed to enable MIPI_ECFG clock: %d\n", ret); + clk_disable_unprepare(kmb_dsi->clk_mipi); return ret; } ret = clk_prepare_enable(kmb_dsi->clk_mipi_cfg); if (ret) { dev_err(dev, "Failed to enable MIPI_CFG clock: %d\n", ret); + clk_disable_unprepare(kmb_dsi->clk_mipi); + clk_disable_unprepare(kmb_dsi->clk_mipi_ecfg); return ret; } -- 2.25.1