123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #ifndef _AU1XXX_GPIO_H_
- #define _AU1XXX_GPIO_H_
- #include <linux/types.h>
- #define AU1XXX_GPIO_BASE 200
- struct au1x00_gpio2 {
- u32 dir;
- u32 reserved;
- u32 output;
- u32 pinstate;
- u32 inten;
- u32 enable;
- };
- extern int au1xxx_gpio_get_value(unsigned gpio);
- extern void au1xxx_gpio_set_value(unsigned gpio, int value);
- extern int au1xxx_gpio_direction_input(unsigned gpio);
- extern int au1xxx_gpio_direction_output(unsigned gpio, int value);
- /* Wrappers for the arch-neutral GPIO API */
- static inline int gpio_request(unsigned gpio, const char *label)
- {
- /* Not yet implemented */
- return 0;
- }
- static inline void gpio_free(unsigned gpio)
- {
- /* Not yet implemented */
- }
- static inline int gpio_direction_input(unsigned gpio)
- {
- return au1xxx_gpio_direction_input(gpio);
- }
- static inline int gpio_direction_output(unsigned gpio, int value)
- {
- return au1xxx_gpio_direction_output(gpio, value);
- }
- static inline int gpio_get_value(unsigned gpio)
- {
- return au1xxx_gpio_get_value(gpio);
- }
- static inline void gpio_set_value(unsigned gpio, int value)
- {
- au1xxx_gpio_set_value(gpio, value);
- }
- static inline int gpio_to_irq(unsigned gpio)
- {
- return gpio;
- }
- static inline int irq_to_gpio(unsigned irq)
- {
- return irq;
- }
- /* For cansleep */
- #include <asm-generic/gpio.h>
- #endif /* _AU1XXX_GPIO_H_ */
|