diff options
author | Mathias Nyman <mathias.nyman@linux.intel.com> | 2012-10-24 17:25:27 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2012-10-26 09:18:55 +0200 |
commit | 80b0a6029272247f19146bf8f88e5d4bba94cba5 (patch) | |
tree | 40cb6244bd1efb5e8e351952cf15e36d06801491 /include/asm-generic | |
parent | d6a2fa0424aefe97289aa561444ec3ae09bdbba0 (diff) | |
download | linux-80b0a6029272247f19146bf8f88e5d4bba94cba5.tar.bz2 |
gpiolib: add gpio get direction callback support
Add .get_direction callback to gpio_chip. This allows gpiolib
to check the current direction of a gpio.
Used to show the correct gpio direction in sysfs and debug entries.
If callback is not set then gpiolib will work as previously;
e.g. guessing everything is input until a direction is set.
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/gpio.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h index a9432fc6b8ba..eb70ca295971 100644 --- a/include/asm-generic/gpio.h +++ b/include/asm-generic/gpio.h @@ -56,6 +56,8 @@ struct device_node; * enabling module power and clock; may sleep * @free: optional hook for chip-specific deactivation, such as * disabling module power and clock; may sleep + * @get_direction: returns direction for signal "offset", 0=out, 1=in, + * (same as GPIOF_DIR_XXX), or negative error * @direction_input: configures signal "offset" as input, or returns error * @get: returns value for signal "offset"; for output signals this * returns either the value actually sensed, or zero @@ -100,7 +102,8 @@ struct gpio_chip { unsigned offset); void (*free)(struct gpio_chip *chip, unsigned offset); - + int (*get_direction)(struct gpio_chip *chip, + unsigned offset); int (*direction_input)(struct gpio_chip *chip, unsigned offset); int (*get)(struct gpio_chip *chip, |