[PATCH] gpiolib: remove unneeded WARN_ON() from gpiochip_set_multiple()

From: Bartosz Golaszewski
Date: Thu Feb 27 2025 - 10:28:50 EST


From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

GPIO drivers are not required to support set_multiple() - the core will
fallback to calling set() for each line if it's missing. Remove the
offending check from gpiochip_set_multiple().

Fixes: 98ce1eb1fd87 ("gpiolib: introduce gpio_chip setters that return values")
Reported-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
Closes: https://lore.kernel.org/all/ab3e42c0-70fa-48e0-ac93-ecbffef63507@xxxxxxxxxxx/
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>
---
drivers/gpio/gpiolib.c | 3 ---
1 file changed, 3 deletions(-)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 1b4af0f97e5a..6cfbc8869cf8 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -3608,9 +3608,6 @@ static int gpiochip_set_multiple(struct gpio_chip *gc,

lockdep_assert_held(&gc->gpiodev->srcu);

- if (WARN_ON(unlikely(!gc->set_multiple && !gc->set_multiple_rv)))
- return -EOPNOTSUPP;
-
if (gc->set_multiple_rv) {
ret = gc->set_multiple_rv(gc, mask, bits);
if (ret > 0)
--
2.45.2