summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRosen Penev2024-10-04 20:24:29 +0000
committerRobert Marko2024-10-07 13:15:27 +0000
commitd51353db26f1e625fa95b36bc554902083dc72d3 (patch)
tree5fda8a87bf3988e86c10477c765ae75395104b10
parent73d3789e6792e685aeed039178d263510330f198 (diff)
downloadopenwrt-d51353db26f1e625fa95b36bc554902083dc72d3.tar.gz
ath79: gpio-latch-mikrotik: use devm_mutex_init
Avoids needing to call mutex_destroy in error paths, which is missing anyway. Signed-off-by: Rosen Penev <rosenp@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16620 Signed-off-by: Robert Marko <robimarko@gmail.com>
-rw-r--r--target/linux/ath79/files/drivers/gpio/gpio-latch-mikrotik.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/target/linux/ath79/files/drivers/gpio/gpio-latch-mikrotik.c b/target/linux/ath79/files/drivers/gpio/gpio-latch-mikrotik.c
index 70f091b79f..6e3f0f9690 100644
--- a/target/linux/ath79/files/drivers/gpio/gpio-latch-mikrotik.c
+++ b/target/linux/ath79/files/drivers/gpio/gpio-latch-mikrotik.c
@@ -110,14 +110,19 @@ static int gpio_latch_probe(struct platform_device *pdev)
struct gpio_latch_chip *glc;
struct gpio_chip *gc;
struct device *dev = &pdev->dev;
- int i, n;
+ int err, i, n;
glc = devm_kzalloc(dev, sizeof(*glc), GFP_KERNEL);
if (!glc)
return -ENOMEM;
- mutex_init(&glc->mutex);
- mutex_init(&glc->latch_mutex);
+ err = devm_mutex_init(&pdev->dev, &glc->mutex);
+ if (err)
+ return err;
+
+ err = devm_mutex_init(&pdev->dev, &glc->latch_mutex);
+ if (err)
+ return err;
n = gpiod_count(dev, NULL);
if (n <= 0)