Lines Matching refs:gpio
3 * gpio-au1300.h -- GPIO control for Au1300 GPIC and compatibles.
15 struct gpio;
29 static inline int au1300_gpio_get_value(unsigned int gpio)
34 gpio -= AU1300_GPIO_BASE;
35 roff += GPIC_GPIO_BANKOFF(gpio);
36 bit = GPIC_GPIO_TO_BIT(gpio);
40 static inline int au1300_gpio_direction_input(unsigned int gpio)
45 gpio -= AU1300_GPIO_BASE;
47 roff += GPIC_GPIO_BANKOFF(gpio);
48 bit = GPIC_GPIO_TO_BIT(gpio);
55 static inline int au1300_gpio_set_value(unsigned int gpio, int v)
60 gpio -= AU1300_GPIO_BASE;
62 roff += GPIC_GPIO_BANKOFF(gpio);
63 bit = GPIC_GPIO_TO_BIT(gpio);
71 static inline int au1300_gpio_direction_output(unsigned int gpio, int v)
74 return au1300_gpio_set_value(gpio, v);
77 static inline int au1300_gpio_to_irq(unsigned int gpio)
79 return AU1300_FIRST_INT + (gpio - AU1300_GPIO_BASE);
87 static inline int au1300_gpio_is_valid(unsigned int gpio)
93 ret = ((gpio >= AU1300_GPIO_BASE) && (gpio <= AU1300_GPIO_MAX));
101 /* hardware remembers gpio 0-63 levels on powerup */
102 static inline int au1300_gpio_getinitlvl(unsigned int gpio)
107 if (unlikely(gpio > 63))
109 else if (gpio > 31) {
110 gpio -= 32;
115 return (v >> gpio) & 1;