From: Wolfram Sang Date: Wed, 15 Jan 2025 07:29:45 +0000 (+0100) Subject: i2c: mux: demux-pinctrl: check initial mux selection, too X-Git-Tag: v6.13~12^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ca89f73394daf92779ddaa37b42956f4953f3941;p=thirdparty%2Fkernel%2Flinux.git i2c: mux: demux-pinctrl: check initial mux selection, too When misconfigured, the initial setup of the current mux channel can fail, too. It must be checked as well. Fixes: 50a5ba876908 ("i2c: mux: demux-pinctrl: add driver") Signed-off-by: Wolfram Sang --- diff --git a/drivers/i2c/muxes/i2c-demux-pinctrl.c b/drivers/i2c/muxes/i2c-demux-pinctrl.c index dce18f763a09b..b204e5a21ce6d 100644 --- a/drivers/i2c/muxes/i2c-demux-pinctrl.c +++ b/drivers/i2c/muxes/i2c-demux-pinctrl.c @@ -261,7 +261,9 @@ static int i2c_demux_pinctrl_probe(struct platform_device *pdev) pm_runtime_no_callbacks(&pdev->dev); /* switch to first parent as active master */ - i2c_demux_activate_master(priv, 0); + err = i2c_demux_activate_master(priv, 0); + if (err) + goto err_rollback; err = device_create_file(&pdev->dev, &dev_attr_available_masters); if (err)