gpio.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * arch/arm/mach-ks8695/include/mach/gpio.h
  3. *
  4. * Copyright (C) 2006 Andrew Victor
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. */
  10. #ifndef __ASM_ARCH_GPIO_H_
  11. #define __ASM_ARCH_GPIO_H_
  12. #include <linux/kernel.h>
  13. #define KS8695_GPIO_0 0
  14. #define KS8695_GPIO_1 1
  15. #define KS8695_GPIO_2 2
  16. #define KS8695_GPIO_3 3
  17. #define KS8695_GPIO_4 4
  18. #define KS8695_GPIO_5 5
  19. #define KS8695_GPIO_6 6
  20. #define KS8695_GPIO_7 7
  21. #define KS8695_GPIO_8 8
  22. #define KS8695_GPIO_9 9
  23. #define KS8695_GPIO_10 10
  24. #define KS8695_GPIO_11 11
  25. #define KS8695_GPIO_12 12
  26. #define KS8695_GPIO_13 13
  27. #define KS8695_GPIO_14 14
  28. #define KS8695_GPIO_15 15
  29. /*
  30. * Configure GPIO pin as external interrupt source.
  31. */
  32. extern int ks8695_gpio_interrupt(unsigned int pin, unsigned int type);
  33. /*
  34. * Map GPIO line to IRQ number.
  35. */
  36. extern int gpio_to_irq(unsigned int pin);
  37. /*
  38. * Map IRQ number to GPIO line.
  39. */
  40. extern int irq_to_gpio(unsigned int irq);
  41. #include <asm-generic/gpio.h>
  42. /* If it turns out that we need to optimise GPIO access for the
  43. * Micrel's GPIOs, then these can be changed to check their argument
  44. * directly as static inlines. However for now it's probably not
  45. * worthwhile.
  46. */
  47. #define gpio_get_value __gpio_get_value
  48. #define gpio_set_value __gpio_set_value
  49. /* Register the GPIOs */
  50. extern void ks8695_register_gpios(void);
  51. #endif