OSDN Git Service

gpio: update gpiochip .get() callback description
authorVladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Tue, 22 Dec 2015 14:37:28 +0000 (16:37 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Sat, 26 Dec 2015 21:28:43 +0000 (22:28 +0100)
Since gpiochip .get() callback may return a negative error value, it
strictly limits the range of possible non-error returned values to
a subset of [30:0] bitmask, however on practice on success all
gpiochip drivers return either 0 for low signal or 1 for high signal,
this is assured by "gpio: *: Be sure to clamp return value" series of
changes. To avoid any confusion, misinterpretation and potential
errors while developing gpiochip drivers in future convert this
implicit assumption to a mandatory rule.

For output signals with unknown output signal state gpiochip drivers
should return a negative error instead of 0.

Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
include/linux/gpio/driver.h

index b02c43b..9907975 100644 (file)
@@ -32,8 +32,7 @@ struct seq_file;
  *     (same as GPIOF_DIR_XXX), or negative error
  * @direction_input: configures signal "offset" as input, or returns error
  * @direction_output: configures signal "offset" as output, or returns error
- * @get: returns value for signal "offset"; for output signals this
- *     returns either the value actually sensed, or zero
+ * @get: returns value for signal "offset", 0=low, 1=high, or negative error
  * @set: assigns output value for signal "offset"
  * @set_multiple: assigns output values for multiple signals defined by "mask"
  * @set_debounce: optional hook for setting debounce time for specified gpio in