irqs.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*
  2. * Copyright (C) 2008 STMicroelectronics
  3. * Copyright (C) 2009 ST-Ericsson.
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation; either version 2 of the License, or
  8. * (at your option) any later version.
  9. */
  10. #ifndef ASM_ARCH_IRQS_H
  11. #define ASM_ARCH_IRQS_H
  12. #include <mach/hardware.h>
  13. #define IRQ_LOCALTIMER 29
  14. #define IRQ_LOCALWDOG 30
  15. /* Shared Peripheral Interrupt (SHPI) */
  16. #define IRQ_SHPI_START 32
  17. /*
  18. * MTU0 preserved for now until plat-nomadik is taught not to use it. Don't
  19. * add any other IRQs here, use the irqs-dbx500.h files.
  20. */
  21. #define IRQ_MTU0 (IRQ_SHPI_START + 4)
  22. #define DBX500_NR_INTERNAL_IRQS 160
  23. /* After chip-specific IRQ numbers we have the GPIO ones */
  24. #define NOMADIK_NR_GPIO 288
  25. #define NOMADIK_GPIO_TO_IRQ(gpio) ((gpio) + DBX500_NR_INTERNAL_IRQS)
  26. #define NOMADIK_IRQ_TO_GPIO(irq) ((irq) - DBX500_NR_INTERNAL_IRQS)
  27. #define IRQ_GPIO_END NOMADIK_GPIO_TO_IRQ(NOMADIK_NR_GPIO)
  28. #define IRQ_SOC_START IRQ_GPIO_END
  29. /* This will be overridden by SoC-specific irq headers */
  30. #define IRQ_SOC_END IRQ_SOC_START
  31. #include <mach/irqs-db5500.h>
  32. #include <mach/irqs-db8500.h>
  33. #define IRQ_BOARD_START IRQ_SOC_END
  34. /* This will be overridden by board-specific irq headers */
  35. #define IRQ_BOARD_END IRQ_BOARD_START
  36. #ifdef CONFIG_MACH_MOP500
  37. #include <mach/irqs-board-mop500.h>
  38. #endif
  39. #ifdef CONFIG_MACH_U5500
  40. #include <mach/irqs-board-u5500.h>
  41. #endif
  42. #define NR_IRQS IRQ_BOARD_END
  43. #endif /* ASM_ARCH_IRQS_H */