Commit b424bb88 authored by Mathieu Dubois-Briand's avatar Mathieu Dubois-Briand Committed by Bartosz Golaszewski
Browse files

gpiolib: Allow to use setters with return value for output-only gpios



The gpiod_direction_output_raw_commit() function checks if any setter
callback is present before doing anything. As the new GPIO setters with
return values were introduced, make this check also succeed if one is
present.

Fixes: 98ce1eb1 ("gpiolib: introduce gpio_chip setters that return values")
Signed-off-by: default avatarMathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Link: https://lore.kernel.org/r/20250411-mdb-gpiolib-setters-fix-v2-1-9611280d8822@bootlin.com


Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
parent 8ffd015d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2879,7 +2879,7 @@ static int gpiod_direction_output_raw_commit(struct gpio_desc *desc, int value)
	 * output-only, but if there is then not even a .set() operation it
	 * is pretty tricky to drive the output line.
	 */
	if (!guard.gc->set && !guard.gc->direction_output) {
	if (!guard.gc->set && !guard.gc->set_rv && !guard.gc->direction_output) {
		gpiod_warn(desc,
			   "%s: missing set() and direction_output() operations\n",
			   __func__);