]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blob - include/asm-avr32/arch-at32ap/gpio.h
[AVR32] gpio_*_cansleep() fix
[linux-2.6-omap-h63xx.git] / include / asm-avr32 / arch-at32ap / gpio.h
1 #ifndef __ASM_AVR32_ARCH_GPIO_H
2 #define __ASM_AVR32_ARCH_GPIO_H
3
4 #include <linux/compiler.h>
5 #include <asm/irq.h>
6
7
8 /* Arch-neutral GPIO API */
9 int __must_check gpio_request(unsigned int gpio, const char *label);
10 void gpio_free(unsigned int gpio);
11
12 int gpio_direction_input(unsigned int gpio);
13 int gpio_direction_output(unsigned int gpio, int value);
14 int gpio_get_value(unsigned int gpio);
15 void gpio_set_value(unsigned int gpio, int value);
16
17 #include <asm-generic/gpio.h>           /* cansleep wrappers */
18
19 static inline int gpio_to_irq(unsigned int gpio)
20 {
21         return gpio + GPIO_IRQ_BASE;
22 }
23
24 static inline int irq_to_gpio(unsigned int irq)
25 {
26         return irq - GPIO_IRQ_BASE;
27 }
28
29 #endif /* __ASM_AVR32_ARCH_GPIO_H */