[PATCH] i2c-imx: fix broken GPIO bus recovery due to missing recover_bus assignment

Jan-David Voelkel jan-david-voelkel at web.de
Tue Jul 8 23:39:04 PDT 2025


From: Janitawa <jan-david-voelkel at web.de>

The transition to generic GPIO recovery support removed the
driver-specific bus recovery logic but failed to assign the
required recover_bus callback. This prevented the core from enabling
recovery, effectively disabling the feature.

This commit restores the assignment to ensure proper recovery
initialization.

Signed-off-by: Janitawa <jan-david-voelkel at web.de>
---
 drivers/i2c/busses/i2c-imx.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
index c5224d43eea4..421f6da61f00 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -1375,6 +1375,8 @@ static int i2c_imx_init_recovery_info(struct imx_i2c_struct *i2c_imx,
 	if (IS_ERR(bri->pinctrl))
 		return PTR_ERR(bri->pinctrl);
 
+	bri->recover_bus = i2c_generic_scl_recovery;
+
 	i2c_imx->adapter.bus_recovery_info = bri;
 
 	return 0;
-- 
2.43.0




More information about the linux-arm-kernel mailing list