diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-04-14 13:54:40 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-04-14 13:54:40 -0400 |
commit | ba3b7d827e96e90e3df82695c96b3f9a666c0d82 (patch) | |
tree | c491c4152ec5dcc80cf557a7562116a787024911 /arch | |
parent | 4f9a197c223cc019801be948e444d05904391109 (diff) | |
parent | b2dfaa8d33cee9dd4ed78979f5d70063df546101 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
Pull m68knommu fix from Greg Ungerer:
"This contains only a single compilation fix for ColdFire m68k targets
that use local non-GPIOLIB support."
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
m68k: define a local gpio_request_one() function
Diffstat (limited to 'arch')
-rw-r--r-- | arch/m68k/include/asm/gpio.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/m68k/include/asm/gpio.h b/arch/m68k/include/asm/gpio.h index 4395ffc51fdb..8cc83431805b 100644 --- a/arch/m68k/include/asm/gpio.h +++ b/arch/m68k/include/asm/gpio.h | |||
@@ -86,4 +86,24 @@ static inline int gpio_cansleep(unsigned gpio) | |||
86 | return gpio < MCFGPIO_PIN_MAX ? 0 : __gpio_cansleep(gpio); | 86 | return gpio < MCFGPIO_PIN_MAX ? 0 : __gpio_cansleep(gpio); |
87 | } | 87 | } |
88 | 88 | ||
89 | static inline int gpio_request_one(unsigned gpio, unsigned long flags, const char *label) | ||
90 | { | ||
91 | int err; | ||
92 | |||
93 | err = gpio_request(gpio, label); | ||
94 | if (err) | ||
95 | return err; | ||
96 | |||
97 | if (flags & GPIOF_DIR_IN) | ||
98 | err = gpio_direction_input(gpio); | ||
99 | else | ||
100 | err = gpio_direction_output(gpio, | ||
101 | (flags & GPIOF_INIT_HIGH) ? 1 : 0); | ||
102 | |||
103 | if (err) | ||
104 | gpio_free(gpio); | ||
105 | |||
106 | return err; | ||
107 | } | ||
108 | |||
89 | #endif | 109 | #endif |