Blob Blame History Raw
From 3501f0c663063513ad604fb1b3f06af637d3396d Mon Sep 17 00:00:00 2001
From: Satish Nagireddy <satish.nagireddy@getcruise.com>
Date: Tue, 28 Jun 2022 12:12:16 -0700
Subject: [PATCH] i2c: cadence: Unregister the clk notifier in error path
Git-commit: 3501f0c663063513ad604fb1b3f06af637d3396d
Patch-mainline: v5.19-rc6
References: git-fixes

This patch ensures that the clock notifier is unregistered
when driver probe is returning error.

Fixes: df8eb5691c48 ("i2c: Add driver for Cadence I2C controller")
Signed-off-by: Satish Nagireddy <satish.nagireddy@getcruise.com>
Tested-by: Lars-Peter Clausen <lars@metafoo.de>
Reviewed-by: Michal Simek <michal.simek@amd.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Acked-by: Takashi Iwai <tiwai@suse.de>

---
 drivers/i2c/busses/i2c-cadence.c |    1 +
 1 file changed, 1 insertion(+)

--- a/drivers/i2c/busses/i2c-cadence.c
+++ b/drivers/i2c/busses/i2c-cadence.c
@@ -982,6 +982,7 @@ static int cdns_i2c_probe(struct platfor
 	return 0;
 
 err_clk_dis:
+	clk_notifier_unregister(id->clk, &id->clk_rate_change_nb);
 	clk_disable_unprepare(id->clk);
 	pm_runtime_set_suspended(&pdev->dev);
 	pm_runtime_disable(&pdev->dev);