irqs.h 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. /*
  2. * arch/arm/mach-versatile/include/mach/irqs.h
  3. *
  4. * Copyright (C) 2003 ARM Limited
  5. * Copyright (C) 2000 Deep Blue Solutions Ltd.
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  20. */
  21. #include <mach/platform.h>
  22. /*
  23. * IRQ interrupts definitions are the same as the INT definitions
  24. * held within platform.h
  25. */
  26. #define IRQ_VIC_START 0
  27. #define IRQ_WDOGINT (IRQ_VIC_START + INT_WDOGINT)
  28. #define IRQ_SOFTINT (IRQ_VIC_START + INT_SOFTINT)
  29. #define IRQ_COMMRx (IRQ_VIC_START + INT_COMMRx)
  30. #define IRQ_COMMTx (IRQ_VIC_START + INT_COMMTx)
  31. #define IRQ_TIMERINT0_1 (IRQ_VIC_START + INT_TIMERINT0_1)
  32. #define IRQ_TIMERINT2_3 (IRQ_VIC_START + INT_TIMERINT2_3)
  33. #define IRQ_GPIOINT0 (IRQ_VIC_START + INT_GPIOINT0)
  34. #define IRQ_GPIOINT1 (IRQ_VIC_START + INT_GPIOINT1)
  35. #define IRQ_GPIOINT2 (IRQ_VIC_START + INT_GPIOINT2)
  36. #define IRQ_GPIOINT3 (IRQ_VIC_START + INT_GPIOINT3)
  37. #define IRQ_RTCINT (IRQ_VIC_START + INT_RTCINT)
  38. #define IRQ_SSPINT (IRQ_VIC_START + INT_SSPINT)
  39. #define IRQ_UARTINT0 (IRQ_VIC_START + INT_UARTINT0)
  40. #define IRQ_UARTINT1 (IRQ_VIC_START + INT_UARTINT1)
  41. #define IRQ_UARTINT2 (IRQ_VIC_START + INT_UARTINT2)
  42. #define IRQ_SCIINT (IRQ_VIC_START + INT_SCIINT)
  43. #define IRQ_CLCDINT (IRQ_VIC_START + INT_CLCDINT)
  44. #define IRQ_DMAINT (IRQ_VIC_START + INT_DMAINT)
  45. #define IRQ_PWRFAILINT (IRQ_VIC_START + INT_PWRFAILINT)
  46. #define IRQ_MBXINT (IRQ_VIC_START + INT_MBXINT)
  47. #define IRQ_GNDINT (IRQ_VIC_START + INT_GNDINT)
  48. #define IRQ_VICSOURCE21 (IRQ_VIC_START + INT_VICSOURCE21)
  49. #define IRQ_VICSOURCE22 (IRQ_VIC_START + INT_VICSOURCE22)
  50. #define IRQ_VICSOURCE23 (IRQ_VIC_START + INT_VICSOURCE23)
  51. #define IRQ_VICSOURCE24 (IRQ_VIC_START + INT_VICSOURCE24)
  52. #define IRQ_VICSOURCE25 (IRQ_VIC_START + INT_VICSOURCE25)
  53. #define IRQ_VICSOURCE26 (IRQ_VIC_START + INT_VICSOURCE26)
  54. #define IRQ_VICSOURCE27 (IRQ_VIC_START + INT_VICSOURCE27)
  55. #define IRQ_VICSOURCE28 (IRQ_VIC_START + INT_VICSOURCE28)
  56. #define IRQ_VICSOURCE29 (IRQ_VIC_START + INT_VICSOURCE29)
  57. #define IRQ_VICSOURCE30 (IRQ_VIC_START + INT_VICSOURCE30)
  58. #define IRQ_VICSOURCE31 (IRQ_VIC_START + INT_VICSOURCE31)
  59. #define IRQ_VIC_END (IRQ_VIC_START + 31)
  60. #define IRQMASK_WDOGINT INTMASK_WDOGINT
  61. #define IRQMASK_SOFTINT INTMASK_SOFTINT
  62. #define IRQMASK_COMMRx INTMASK_COMMRx
  63. #define IRQMASK_COMMTx INTMASK_COMMTx
  64. #define IRQMASK_TIMERINT0_1 INTMASK_TIMERINT0_1
  65. #define IRQMASK_TIMERINT2_3 INTMASK_TIMERINT2_3
  66. #define IRQMASK_GPIOINT0 INTMASK_GPIOINT0
  67. #define IRQMASK_GPIOINT1 INTMASK_GPIOINT1
  68. #define IRQMASK_GPIOINT2 INTMASK_GPIOINT2
  69. #define IRQMASK_GPIOINT3 INTMASK_GPIOINT3
  70. #define IRQMASK_RTCINT INTMASK_RTCINT
  71. #define IRQMASK_SSPINT INTMASK_SSPINT
  72. #define IRQMASK_UARTINT0 INTMASK_UARTINT0
  73. #define IRQMASK_UARTINT1 INTMASK_UARTINT1
  74. #define IRQMASK_UARTINT2 INTMASK_UARTINT2
  75. #define IRQMASK_SCIINT INTMASK_SCIINT
  76. #define IRQMASK_CLCDINT INTMASK_CLCDINT
  77. #define IRQMASK_DMAINT INTMASK_DMAINT
  78. #define IRQMASK_PWRFAILINT INTMASK_PWRFAILINT
  79. #define IRQMASK_MBXINT INTMASK_MBXINT
  80. #define IRQMASK_GNDINT INTMASK_GNDINT
  81. #define IRQMASK_VICSOURCE21 INTMASK_VICSOURCE21
  82. #define IRQMASK_VICSOURCE22 INTMASK_VICSOURCE22
  83. #define IRQMASK_VICSOURCE23 INTMASK_VICSOURCE23
  84. #define IRQMASK_VICSOURCE24 INTMASK_VICSOURCE24
  85. #define IRQMASK_VICSOURCE25 INTMASK_VICSOURCE25
  86. #define IRQMASK_VICSOURCE26 INTMASK_VICSOURCE26
  87. #define IRQMASK_VICSOURCE27 INTMASK_VICSOURCE27
  88. #define IRQMASK_VICSOURCE28 INTMASK_VICSOURCE28
  89. #define IRQMASK_VICSOURCE29 INTMASK_VICSOURCE29
  90. #define IRQMASK_VICSOURCE30 INTMASK_VICSOURCE30
  91. #define IRQMASK_VICSOURCE31 INTMASK_VICSOURCE31
  92. /*
  93. * FIQ interrupts definitions are the same as the INT definitions.
  94. */
  95. #define FIQ_WDOGINT INT_WDOGINT
  96. #define FIQ_SOFTINT INT_SOFTINT
  97. #define FIQ_COMMRx INT_COMMRx
  98. #define FIQ_COMMTx INT_COMMTx
  99. #define FIQ_TIMERINT0_1 INT_TIMERINT0_1
  100. #define FIQ_TIMERINT2_3 INT_TIMERINT2_3
  101. #define FIQ_GPIOINT0 INT_GPIOINT0
  102. #define FIQ_GPIOINT1 INT_GPIOINT1
  103. #define FIQ_GPIOINT2 INT_GPIOINT2
  104. #define FIQ_GPIOINT3 INT_GPIOINT3
  105. #define FIQ_RTCINT INT_RTCINT
  106. #define FIQ_SSPINT INT_SSPINT
  107. #define FIQ_UARTINT0 INT_UARTINT0
  108. #define FIQ_UARTINT1 INT_UARTINT1
  109. #define FIQ_UARTINT2 INT_UARTINT2
  110. #define FIQ_SCIINT INT_SCIINT
  111. #define FIQ_CLCDINT INT_CLCDINT
  112. #define FIQ_DMAINT INT_DMAINT
  113. #define FIQ_PWRFAILINT INT_PWRFAILINT
  114. #define FIQ_MBXINT INT_MBXINT
  115. #define FIQ_GNDINT INT_GNDINT
  116. #define FIQ_VICSOURCE21 INT_VICSOURCE21
  117. #define FIQ_VICSOURCE22 INT_VICSOURCE22
  118. #define FIQ_VICSOURCE23 INT_VICSOURCE23
  119. #define FIQ_VICSOURCE24 INT_VICSOURCE24
  120. #define FIQ_VICSOURCE25 INT_VICSOURCE25
  121. #define FIQ_VICSOURCE26 INT_VICSOURCE26
  122. #define FIQ_VICSOURCE27 INT_VICSOURCE27
  123. #define FIQ_VICSOURCE28 INT_VICSOURCE28
  124. #define FIQ_VICSOURCE29 INT_VICSOURCE29
  125. #define FIQ_VICSOURCE30 INT_VICSOURCE30
  126. #define FIQ_VICSOURCE31 INT_VICSOURCE31
  127. #define FIQMASK_WDOGINT INTMASK_WDOGINT
  128. #define FIQMASK_SOFTINT INTMASK_SOFTINT
  129. #define FIQMASK_COMMRx INTMASK_COMMRx
  130. #define FIQMASK_COMMTx INTMASK_COMMTx
  131. #define FIQMASK_TIMERINT0_1 INTMASK_TIMERINT0_1
  132. #define FIQMASK_TIMERINT2_3 INTMASK_TIMERINT2_3
  133. #define FIQMASK_GPIOINT0 INTMASK_GPIOINT0
  134. #define FIQMASK_GPIOINT1 INTMASK_GPIOINT1
  135. #define FIQMASK_GPIOINT2 INTMASK_GPIOINT2
  136. #define FIQMASK_GPIOINT3 INTMASK_GPIOINT3
  137. #define FIQMASK_RTCINT INTMASK_RTCINT
  138. #define FIQMASK_SSPINT INTMASK_SSPINT
  139. #define FIQMASK_UARTINT0 INTMASK_UARTINT0
  140. #define FIQMASK_UARTINT1 INTMASK_UARTINT1
  141. #define FIQMASK_UARTINT2 INTMASK_UARTINT2
  142. #define FIQMASK_SCIINT INTMASK_SCIINT
  143. #define FIQMASK_CLCDINT INTMASK_CLCDINT
  144. #define FIQMASK_DMAINT INTMASK_DMAINT
  145. #define FIQMASK_PWRFAILINT INTMASK_PWRFAILINT
  146. #define FIQMASK_MBXINT INTMASK_MBXINT
  147. #define FIQMASK_GNDINT INTMASK_GNDINT
  148. #define FIQMASK_VICSOURCE21 INTMASK_VICSOURCE21
  149. #define FIQMASK_VICSOURCE22 INTMASK_VICSOURCE22
  150. #define FIQMASK_VICSOURCE23 INTMASK_VICSOURCE23
  151. #define FIQMASK_VICSOURCE24 INTMASK_VICSOURCE24
  152. #define FIQMASK_VICSOURCE25 INTMASK_VICSOURCE25
  153. #define FIQMASK_VICSOURCE26 INTMASK_VICSOURCE26
  154. #define FIQMASK_VICSOURCE27 INTMASK_VICSOURCE27
  155. #define FIQMASK_VICSOURCE28 INTMASK_VICSOURCE28
  156. #define FIQMASK_VICSOURCE29 INTMASK_VICSOURCE29
  157. #define FIQMASK_VICSOURCE30 INTMASK_VICSOURCE30
  158. #define FIQMASK_VICSOURCE31 INTMASK_VICSOURCE31
  159. /*
  160. * Secondary interrupt controller
  161. */
  162. #define IRQ_SIC_START 32
  163. #define IRQ_SIC_MMCI0B (IRQ_SIC_START + SIC_INT_MMCI0B)
  164. #define IRQ_SIC_MMCI1B (IRQ_SIC_START + SIC_INT_MMCI1B)
  165. #define IRQ_SIC_KMI0 (IRQ_SIC_START + SIC_INT_KMI0)
  166. #define IRQ_SIC_KMI1 (IRQ_SIC_START + SIC_INT_KMI1)
  167. #define IRQ_SIC_SCI3 (IRQ_SIC_START + SIC_INT_SCI3)
  168. #define IRQ_SIC_UART3 (IRQ_SIC_START + SIC_INT_UART3)
  169. #define IRQ_SIC_CLCD (IRQ_SIC_START + SIC_INT_CLCD)
  170. #define IRQ_SIC_TOUCH (IRQ_SIC_START + SIC_INT_TOUCH)
  171. #define IRQ_SIC_KEYPAD (IRQ_SIC_START + SIC_INT_KEYPAD)
  172. #define IRQ_SIC_DoC (IRQ_SIC_START + SIC_INT_DoC)
  173. #define IRQ_SIC_MMCI0A (IRQ_SIC_START + SIC_INT_MMCI0A)
  174. #define IRQ_SIC_MMCI1A (IRQ_SIC_START + SIC_INT_MMCI1A)
  175. #define IRQ_SIC_AACI (IRQ_SIC_START + SIC_INT_AACI)
  176. #define IRQ_SIC_ETH (IRQ_SIC_START + SIC_INT_ETH)
  177. #define IRQ_SIC_USB (IRQ_SIC_START + SIC_INT_USB)
  178. #define IRQ_SIC_PCI0 (IRQ_SIC_START + SIC_INT_PCI0)
  179. #define IRQ_SIC_PCI1 (IRQ_SIC_START + SIC_INT_PCI1)
  180. #define IRQ_SIC_PCI2 (IRQ_SIC_START + SIC_INT_PCI2)
  181. #define IRQ_SIC_PCI3 (IRQ_SIC_START + SIC_INT_PCI3)
  182. #define IRQ_SIC_END 63
  183. #define SIC_IRQMASK_MMCI0B SIC_INTMASK_MMCI0B
  184. #define SIC_IRQMASK_MMCI1B SIC_INTMASK_MMCI1B
  185. #define SIC_IRQMASK_KMI0 SIC_INTMASK_KMI0
  186. #define SIC_IRQMASK_KMI1 SIC_INTMASK_KMI1
  187. #define SIC_IRQMASK_SCI3 SIC_INTMASK_SCI3
  188. #define SIC_IRQMASK_UART3 SIC_INTMASK_UART3
  189. #define SIC_IRQMASK_CLCD SIC_INTMASK_CLCD
  190. #define SIC_IRQMASK_TOUCH SIC_INTMASK_TOUCH
  191. #define SIC_IRQMASK_KEYPAD SIC_INTMASK_KEYPAD
  192. #define SIC_IRQMASK_DoC SIC_INTMASK_DoC
  193. #define SIC_IRQMASK_MMCI0A SIC_INTMASK_MMCI0A
  194. #define SIC_IRQMASK_MMCI1A SIC_INTMASK_MMCI1A
  195. #define SIC_IRQMASK_AACI SIC_INTMASK_AACI
  196. #define SIC_IRQMASK_ETH SIC_INTMASK_ETH
  197. #define SIC_IRQMASK_USB SIC_INTMASK_USB
  198. #define SIC_IRQMASK_PCI0 SIC_INTMASK_PCI0
  199. #define SIC_IRQMASK_PCI1 SIC_INTMASK_PCI1
  200. #define SIC_IRQMASK_PCI2 SIC_INTMASK_PCI2
  201. #define SIC_IRQMASK_PCI3 SIC_INTMASK_PCI3
  202. #define NR_IRQS 64