diff options
author | Laxman Dewangan <ldewangan@nvidia.com> | 2012-02-17 20:26:21 +0530 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2012-03-05 07:49:44 -0700 |
commit | aca5ce14eb773a75e5d935968b2e390dc5bd29c3 (patch) | |
tree | 7da20e783f03b076d41163aad82dfb6878964ff9 /include/linux/gpio.h | |
parent | 3d2ddfdcf05f5f816f829f81858c54827d7be5b4 (diff) | |
download | linux-3.10-aca5ce14eb773a75e5d935968b2e390dc5bd29c3.tar.gz linux-3.10-aca5ce14eb773a75e5d935968b2e390dc5bd29c3.tar.bz2 linux-3.10-aca5ce14eb773a75e5d935968b2e390dc5bd29c3.zip |
gpio: gpiolib: Support for open drain/collector gpios
Adding support for the open drain gpio on which client
can specify the open drain property through GPIO flag
GPIOF_OPEN_DRAIN at the time of gpio request.
The open drain pins are normally pulled high and it
cannot be driven to output with value of 1 and so
when client request for setting the pin to HIGH, the
gpio will be set to input direction to make pin in tristate
and hence PULL-UP on pins will make the state to HIGH.
The open drain pin can be driven to LOW by setting output
with value of 0.
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviwed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'include/linux/gpio.h')
-rw-r--r-- | include/linux/gpio.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/gpio.h b/include/linux/gpio.h index 38ac48b7d3a..66a5b2e9d35 100644 --- a/include/linux/gpio.h +++ b/include/linux/gpio.h @@ -14,6 +14,9 @@ #define GPIOF_OUT_INIT_LOW (GPIOF_DIR_OUT | GPIOF_INIT_LOW) #define GPIOF_OUT_INIT_HIGH (GPIOF_DIR_OUT | GPIOF_INIT_HIGH) +/* Gpio pin is open drain */ +#define GPIOF_OPEN_DRAIN (1 << 2) + /** * struct gpio - a structure describing a GPIO with configuration * @gpio: the GPIO number |