summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2023-03-14 02:31:46 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-03-22 13:33:52 +0100
commitd3827d53b09867338f6a38bcb94c714f386e0dca (patch)
tree32b459a18663356c3365a4dd81ffadd59ff39dc4
parentb9e80aa64ee057b68b77b9ced6db45185c555fb6 (diff)
downloadlinux-d3827d53b09867338f6a38bcb94c714f386e0dca.tar.gz
hwmon: (ltc2992) Set `can_sleep` flag for GPIO chip
[ Upstream commit ab00709310eedcd8dae0df1f66d332f9bc64c99e ]

The ltc2992 drivers uses a mutex and I2C bus access in its GPIO chip `set`
and `get` implementation. This means these functions can sleep and the GPIO
chip should set the `can_sleep` property to true.

This will ensure that a warning is printed when trying to set or get the
GPIO value from a context that potentially can't sleep.

Fixes: 9ca26df1ba25 ("hwmon: (ltc2992) Add support for GPIOs.")
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Link: https://lore.kernel.org/r/20230314093146.2443845-2-lars@metafoo.de
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/hwmon/ltc2992.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/hwmon/ltc2992.c b/drivers/hwmon/ltc2992.c
index 72489d5d7eaf..d88e883c7492 100644
--- a/drivers/hwmon/ltc2992.c
+++ b/drivers/hwmon/ltc2992.c
@@ -323,6 +323,7 @@ static int ltc2992_config_gpio(struct ltc2992_state *st)
 	st->gc.label = name;
 	st->gc.parent = &st->client->dev;
 	st->gc.owner = THIS_MODULE;
+	st->gc.can_sleep = true;
 	st->gc.base = -1;
 	st->gc.names = st->gpio_names;
 	st->gc.ngpio = ARRAY_SIZE(st->gpio_names);