diff options
author | Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> | 2008-04-28 05:14:46 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-28 11:58:34 -0400 |
commit | e6de1808f8ebfeb7e49f3c5a30cb8f2032beb287 (patch) | |
tree | 2230ea8f384449c7785d636ab016af3b2aa20123 /include/asm-generic | |
parent | d72cbed0c486e3db8b56380635f8e845073ce63a (diff) |
gpio: define gpio_is_valid()
Introduce a gpio_is_valid() predicate; use it in gpiolib.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
[ use inline function; follow the gpio_* naming convention;
work without gpiolib; all programming interfaces need docs ]
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/gpio.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h index 7e77b6ff45bb..464c5b334dc2 100644 --- a/include/asm-generic/gpio.h +++ b/include/asm-generic/gpio.h | |||
@@ -16,6 +16,12 @@ | |||
16 | #define ARCH_NR_GPIOS 256 | 16 | #define ARCH_NR_GPIOS 256 |
17 | #endif | 17 | #endif |
18 | 18 | ||
19 | static inline int gpio_is_valid(int number) | ||
20 | { | ||
21 | /* only some non-negative numbers are valid */ | ||
22 | return ((unsigned)number) < ARCH_NR_GPIOS; | ||
23 | } | ||
24 | |||
19 | struct seq_file; | 25 | struct seq_file; |
20 | struct module; | 26 | struct module; |
21 | 27 | ||
@@ -99,6 +105,12 @@ extern int __gpio_cansleep(unsigned gpio); | |||
99 | 105 | ||
100 | #else | 106 | #else |
101 | 107 | ||
108 | static inline int gpio_is_valid(int number) | ||
109 | { | ||
110 | /* only non-negative numbers are valid */ | ||
111 | return number >= 0; | ||
112 | } | ||
113 | |||
102 | /* platforms that don't directly support access to GPIOs through I2C, SPI, | 114 | /* platforms that don't directly support access to GPIOs through I2C, SPI, |
103 | * or other blocking infrastructure can use these wrappers. | 115 | * or other blocking infrastructure can use these wrappers. |
104 | */ | 116 | */ |