Once the reset_control_deassert() fails, we need to run the missing
clk_disable_unprepare() before return in stf_dphy_init().
Fixes: d3ab79553308 ("phy: starfive: Add mipi dphy tx support")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202410310715.duo3ShR4-lkp@intel.com/
Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
---
drivers/phy/starfive/phy-jh7110-dphy-tx.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/phy/starfive/phy-jh7110-dphy-tx.c b/drivers/phy/starfive/phy-jh7110-dphy-tx.c
index c64d1c91b130..7b59496983d2 100644
--- a/drivers/phy/starfive/phy-jh7110-dphy-tx.c
+++ b/drivers/phy/starfive/phy-jh7110-dphy-tx.c
@@ -330,6 +330,7 @@ static int stf_dphy_init(struct phy *phy)
ret = reset_control_deassert(dphy->sys_rst);
if (ret) {
+ clk_disable_unprepare(dphy->txesc_clk);
dev_err(dphy->dev, "Failed to deassert sys_rst\n");
return ret;
}
--
2.25.1