diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2022-05-05 16:24:06 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2022-05-05 16:24:06 +0200 |
commit | f4b09d8d67efcc0620a9395b7a180bbd44066939 (patch) | |
tree | 284cf3e14ec9dfed4e88f58c1cf49126d28a75bb /drivers/pinctrl/stm32/pinctrl-stm32.c | |
parent | f4f1739a09dc7bcac3c6471cf3f82443934c3608 (diff) |
pinctrl: stm32: Fix up errorpath after merge
When merging the for_each_gpiochip_node() changes, I made
some mistakes by not disabling the clocks on the errorpath,
fix it up.
Fixes: a0912083086d ("Merge tag 'intel-gpio-v5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel into devel")
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Fabien Dessenne <fabien.dessenne@foss.st.com>
Reported-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/stm32/pinctrl-stm32.c')
-rw-r--r-- | drivers/pinctrl/stm32/pinctrl-stm32.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/pinctrl/stm32/pinctrl-stm32.c b/drivers/pinctrl/stm32/pinctrl-stm32.c index 0f7d608151ff..88da8ac0b252 100644 --- a/drivers/pinctrl/stm32/pinctrl-stm32.c +++ b/drivers/pinctrl/stm32/pinctrl-stm32.c @@ -1614,6 +1614,10 @@ int stm32_pctl_probe(struct platform_device *pdev) ret = stm32_gpiolib_register_bank(pctl, child); if (ret) { fwnode_handle_put(child); + + for (i = 0; i < pctl->nbanks; i++) + clk_disable_unprepare(pctl->banks[i].clk); + return ret; } |