[PATCH] iio: chemical: scd30: Use devm_mutex_init() over non-devm mutex_init()
From: Maxwell Doose
Date: Wed Jun 03 2026 - 11:10:28 EST
The current code uses mutex_init() instead of devm_mutex_init(), which
is incorrect as the rest of the file uses the devm automatic resource
management API. Fix this so that the mutex is set up in the same way as
the rest of the device data structure.
Fixes: 64b3d8b1b0f5c ("iio: chemical: scd30: add core driver")
Signed-off-by: Maxwell Doose <m32285159@xxxxxxxxx>
---
drivers/iio/chemical/scd30_core.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/chemical/scd30_core.c b/drivers/iio/chemical/scd30_core.c
index db5cc295aeab..f00979c0c196 100644
--- a/drivers/iio/chemical/scd30_core.c
+++ b/drivers/iio/chemical/scd30_core.c
@@ -714,7 +714,10 @@ int scd30_probe(struct device *dev, int irq, const char *name, void *priv,
state->pressure_comp = SCD30_PRESSURE_COMP_DEFAULT;
state->meas_interval = SCD30_MEAS_INTERVAL_DEFAULT;
state->command = command;
- mutex_init(&state->lock);
+ ret = devm_mutex_init(dev, &state->lock);
+ if (ret)
+ return dev_err_probe(dev, ret, "Failed to init mutex\n");
+
init_completion(&state->meas_ready);
dev_set_drvdata(dev, indio_dev);
--
2.54.0