summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2025-03-05 13:27:10 +0300
committerLinus Walleij <linus.walleij@linaro.org>2025-03-14 13:02:08 +0300
commit597b3627d532e81436aa5d8ca4d78f42e5be3284 (patch)
tree16e5fcae10f616b84059b2c5399f2e55c95a0891
parent8171e7b929890e51d475148255cc4707ff8b205a (diff)
downloadlinux-597b3627d532e81436aa5d8ca4d78f42e5be3284.tar.xz
pinctrl: spacemit: destroy mutex at driver detach
The mutex initialized in probe() is never cleaned up. Use devm_mutex_init() to destroy it automatically. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Yixun Lan <dlan@gentoo.org> Link: https://lore.kernel.org/20250305102710.52762-1-brgl@bgdev.pl Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--drivers/pinctrl/spacemit/pinctrl-k1.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/pinctrl/spacemit/pinctrl-k1.c b/drivers/pinctrl/spacemit/pinctrl-k1.c
index a32579d73613..3e1c194e7961 100644
--- a/drivers/pinctrl/spacemit/pinctrl-k1.c
+++ b/drivers/pinctrl/spacemit/pinctrl-k1.c
@@ -9,6 +9,7 @@
#include <linux/seq_file.h>
#include <linux/spinlock.h>
#include <linux/module.h>
+#include <linux/mutex.h>
#include <linux/pinctrl/pinconf-generic.h>
#include <linux/pinctrl/pinconf.h>
@@ -749,7 +750,10 @@ static int spacemit_pinctrl_probe(struct platform_device *pdev)
pctrl->data = pctrl_data;
pctrl->dev = dev;
raw_spin_lock_init(&pctrl->lock);
- mutex_init(&pctrl->mutex);
+
+ ret = devm_mutex_init(dev, &pctrl->mutex);
+ if (ret)
+ return ret;
platform_set_drvdata(pdev, pctrl);