aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2025-03-03 14:18:28 +0100
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>2025-03-10 11:52:12 +0100
commit0dfce460fe2e2a4744bfe881793a9f48a46c6095 (patch)
treede5e1bf831410422711e2b2381fad08ccc038e61
parentgpio: 74x164: use new line value setter callbacks (diff)
downloadwireguard-linux-0dfce460fe2e2a4744bfe881793a9f48a46c6095.tar.xz
wireguard-linux-0dfce460fe2e2a4744bfe881793a9f48a46c6095.zip
gpio: adnp: use devm_mutex_init()
The mutex initialized in probe() is never cleaned up. Use devm_mutex_init() to do it automatically. Link: https://lore.kernel.org/r/20250303-gpiochip-set-conversion-v1-3-1d5cceeebf8b@linaro.org Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
-rw-r--r--drivers/gpio/gpio-adnp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-adnp.c b/drivers/gpio/gpio-adnp.c
index 6dafab0cf964..9e752e98db9d 100644
--- a/drivers/gpio/gpio-adnp.c
+++ b/drivers/gpio/gpio-adnp.c
@@ -8,6 +8,7 @@
#include <linux/interrupt.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
+#include <linux/mutex.h>
#include <linux/property.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
@@ -506,7 +507,10 @@ static int adnp_i2c_probe(struct i2c_client *client)
if (!adnp)
return -ENOMEM;
- mutex_init(&adnp->i2c_lock);
+ err = devm_mutex_init(&client->dev, &adnp->i2c_lock);
+ if (err)
+ return err;
+
adnp->client = client;
err = adnp_gpio_setup(adnp, num_gpios, device_property_read_bool(dev, "interrupt-controller"));