omap_gpio.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*
  2. * Copyright (c) 2009 Wind River Systems, Inc.
  3. * Tom Rix <Tom.Rix@windriver.com>
  4. *
  5. * SPDX-License-Identifier: GPL-2.0
  6. *
  7. * This work is derived from the linux 2.6.27 kernel source
  8. * To fetch, use the kernel repository
  9. * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
  10. * Use the v2.6.27 tag.
  11. *
  12. * Below is the original's header including its copyright
  13. *
  14. * linux/arch/arm/plat-omap/gpio.c
  15. *
  16. * Support functions for OMAP GPIO
  17. *
  18. * Copyright (C) 2003-2005 Nokia Corporation
  19. * Written by Juha Yrjölä <juha.yrjola@nokia.com>
  20. */
  21. #ifndef _GPIO_H
  22. #define _GPIO_H
  23. #include <asm/arch/cpu.h>
  24. enum gpio_method {
  25. METHOD_GPIO_24XX = 4,
  26. };
  27. #ifdef CONFIG_DM_GPIO
  28. /* Information about a GPIO bank */
  29. struct omap_gpio_platdata {
  30. int bank_index;
  31. ulong base; /* address of registers in physical memory */
  32. enum gpio_method method;
  33. };
  34. #else
  35. struct gpio_bank {
  36. void *base;
  37. int method;
  38. };
  39. extern const struct gpio_bank *const omap_gpio_bank;
  40. /**
  41. * Check if gpio is valid.
  42. *
  43. * @param gpio GPIO number
  44. * @return 1 if ok, 0 on error
  45. */
  46. int gpio_is_valid(int gpio);
  47. #endif
  48. #endif /* _GPIO_H_ */