diff options
| author | Christophe JAILLET <[email protected]> | 2025-07-30 19:38:02 +0000 |
|---|---|---|
| committer | Wolfram Sang <[email protected]> | 2025-08-03 20:47:57 +0000 |
| commit | 33ac5155891cab165c93b51b0e22e153eacc2ee7 (patch) | |
| tree | bcbc107b9f4cdf280c19703a140d093e3eb0f48e /drivers/i2c | |
| parent | i2c: Force DLL0945 touchpad i2c freq to 100khz (diff) | |
| download | kernel-33ac5155891cab165c93b51b0e22e153eacc2ee7.tar.gz kernel-33ac5155891cab165c93b51b0e22e153eacc2ee7.zip | |
i2c: muxes: mule: Fix an error handling path in mule_i2c_mux_probe()
If an error occurs in the loop that creates the device adapters, then a
reference to 'dev' still needs to be released.
Use for_each_child_of_node_scoped() to both fix the issue and save one line
of code.
Fixes: d0f8e97866bf ("i2c: muxes: add support for tsd,mule-i2c multiplexer")
Signed-off-by: Christophe JAILLET <[email protected]>
Signed-off-by: Wolfram Sang <[email protected]>
Diffstat (limited to 'drivers/i2c')
| -rw-r--r-- | drivers/i2c/muxes/i2c-mux-mule.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/i2c/muxes/i2c-mux-mule.c b/drivers/i2c/muxes/i2c-mux-mule.c index 284ff4afeeac..d3b32b794172 100644 --- a/drivers/i2c/muxes/i2c-mux-mule.c +++ b/drivers/i2c/muxes/i2c-mux-mule.c @@ -47,7 +47,6 @@ static int mule_i2c_mux_probe(struct platform_device *pdev) struct mule_i2c_reg_mux *priv; struct i2c_client *client; struct i2c_mux_core *muxc; - struct device_node *dev; unsigned int readback; int ndev, ret; bool old_fw; @@ -95,7 +94,7 @@ static int mule_i2c_mux_probe(struct platform_device *pdev) "Failed to register mux remove\n"); /* Create device adapters */ - for_each_child_of_node(mux_dev->of_node, dev) { + for_each_child_of_node_scoped(mux_dev->of_node, dev) { u32 reg; ret = of_property_read_u32(dev, "reg", ®); |
