Merge tag 'net-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
[linux-2.6-microblaze.git] / drivers / thermal / imx8mm_thermal.c
index a1e4f9b..7442e01 100644 (file)
@@ -166,10 +166,11 @@ static int imx8mm_tmu_probe(struct platform_device *pdev)
                                                             &tmu->sensors[i],
                                                             &tmu_tz_ops);
                if (IS_ERR(tmu->sensors[i].tzd)) {
+                       ret = PTR_ERR(tmu->sensors[i].tzd);
                        dev_err(&pdev->dev,
                                "failed to register thermal zone sensor[%d]: %d\n",
                                i, ret);
-                       return PTR_ERR(tmu->sensors[i].tzd);
+                       goto disable_clk;
                }
                tmu->sensors[i].hw_id = i;
        }
@@ -184,6 +185,10 @@ static int imx8mm_tmu_probe(struct platform_device *pdev)
        imx8mm_tmu_enable(tmu, true);
 
        return 0;
+
+disable_clk:
+       clk_disable_unprepare(tmu->clk);
+       return ret;
 }
 
 static int imx8mm_tmu_remove(struct platform_device *pdev)