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>
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)