[PATCH] GPIO API: SA1100 wrapper cleanup
Based on the discussion last december (http://lkml.org/lkml/2006/12/20/241), this patch - adds gpio_direction_input/output functions to generic.c instead of making them inline, - fixes comment and includes and uses inline functions instead of macros in gpio.h Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> 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>
This commit is contained in:
committed by
Linus Torvalds
parent
adff264fe6
commit
5b7e42b2d3
@@ -138,6 +138,36 @@ unsigned long long sched_clock(void)
|
||||
return v;
|
||||
}
|
||||
|
||||
int gpio_direction_input(unsigned gpio)
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
if (gpio > GPIO_MAX)
|
||||
return -EINVAL;
|
||||
|
||||
local_irq_save(flags);
|
||||
GPDR &= ~GPIO_GPIO(gpio);
|
||||
local_irq_restore(flags);
|
||||
return 0;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(gpio_direction_input);
|
||||
|
||||
int gpio_direction_output(unsigned gpio)
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
if (gpio > GPIO_MAX)
|
||||
return -EINVAL;
|
||||
|
||||
local_irq_save(flags);
|
||||
GPDR |= GPIO_GPIO(gpio);
|
||||
local_irq_restore(flags);
|
||||
return 0;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(gpio_direction_output);
|
||||
|
||||
/*
|
||||
* Default power-off for SA1100
|
||||
*/
|
||||
|
Reference in New Issue
Block a user