]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/mips/include/asm/pmc-sierra/msp71xx/gpio.h
MIPS: Move headfiles to new location below arch/mips/include
[linux-2.6-omap-h63xx.git] / arch / mips / include / asm / pmc-sierra / msp71xx / gpio.h
1 /*
2  * include/asm-mips/pmc-sierra/msp71xx/gpio.h
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * @author Patrick Glass <patrickglass@gmail.com>
9  */
10
11 #ifndef __PMC_MSP71XX_GPIO_H
12 #define __PMC_MSP71XX_GPIO_H
13
14 /* Max number of gpio's is 28 on chip plus 3 banks of I2C IO Expanders */
15 #define ARCH_NR_GPIOS (28 + (3 * 8))
16
17 /* new generic GPIO API - see Documentation/gpio.txt */
18 #include <asm-generic/gpio.h>
19
20 #define gpio_get_value  __gpio_get_value
21 #define gpio_set_value  __gpio_set_value
22 #define gpio_cansleep   __gpio_cansleep
23
24 /* Setup calls for the gpio and gpio extended */
25 extern void msp71xx_init_gpio(void);
26 extern void msp71xx_init_gpio_extended(void);
27 extern int msp71xx_set_output_drive(unsigned gpio, int value);
28
29 /* Custom output drive functionss */
30 static inline int gpio_set_output_drive(unsigned gpio, int value)
31 {
32         return msp71xx_set_output_drive(gpio, value);
33 }
34
35 /* IRQ's are not supported for gpio lines */
36 static inline int gpio_to_irq(unsigned gpio)
37 {
38         return -EINVAL;
39 }
40
41 static inline int irq_to_gpio(unsigned irq)
42 {
43         return -EINVAL;
44 }
45
46 #endif /* __PMC_MSP71XX_GPIO_H */