[PATCH] i2c: altera: disable clock after removing adapter

Jiawen Liu posted 1 patch 1 month, 1 week ago
[PATCH] i2c: altera: disable clock after removing adapter
Posted by Jiawen Liu 1 month, 1 week ago
From: jiawen <1298662399@qq.com>

In altr_i2c_remove(), the controller clock is disabled before
i2c_del_adapter() is called. This leaves the adapter teardown running
without the hardware clock, which can cause issues during adapter
removal.

Move the clk_disable_unprepare() call after i2c_del_adapter() to ensure
the adapter is removed while the clock is still available.

Signed-off-by: jiawen <1298662399@qq.com>
---
diff --git a/drivers/i2c/busses/i2c-altera.c b/drivers/i2c/busses/i2c-altera.c
--- a/drivers/i2c/busses/i2c-altera.c
+++ b/drivers/i2c/busses/i2c-altera.c
@@ -469,8 +469,8 @@
 {
 	struct altr_i2c_dev *idev = platform_get_drvdata(pdev);
 
+	i2c_del_adapter(&idev->adapter);
 	clk_disable_unprepare(idev->i2c_clk);
-	i2c_del_adapter(&idev->adapter);
 }
 
 /* Match table for of_platform binding */