iop331-irqs.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:4k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /*
  2.  * linux/include/asm-arm/arch-iop3xx/irqs.h
  3.  *
  4.  * Author: Dave Jiang (dave.jiang@intel.com)
  5.  * Copyright: (C) 2003 Intel Corp.
  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 version 2 as
  9.  * published by the Free Software Foundation.
  10.  *
  11.  */
  12. #ifndef _IOP331_IRQS_H_
  13. #define _IOP331_IRQS_H_
  14. /*
  15.  * IOP80331 chipset interrupts
  16.  */
  17. #define IOP331_IRQ_OFS 0
  18. #define IOP331_IRQ(x) (IOP331_IRQ_OFS + (x))
  19. /*
  20.  * On IRQ or FIQ register
  21.  */
  22. #define IRQ_IOP331_DMA0_EOT IOP331_IRQ(0)
  23. #define IRQ_IOP331_DMA0_EOC IOP331_IRQ(1)
  24. #define IRQ_IOP331_DMA1_EOT IOP331_IRQ(2)
  25. #define IRQ_IOP331_DMA1_EOC IOP331_IRQ(3)
  26. #define IRQ_IOP331_RSVD_4 IOP331_IRQ(4)
  27. #define IRQ_IOP331_RSVD_5 IOP331_IRQ(5)
  28. #define IRQ_IOP331_AA_EOT IOP331_IRQ(6)
  29. #define IRQ_IOP331_AA_EOC IOP331_IRQ(7)
  30. #define IRQ_IOP331_TIMER0 IOP331_IRQ(8)
  31. #define IRQ_IOP331_TIMER1 IOP331_IRQ(9)
  32. #define IRQ_IOP331_I2C_0 IOP331_IRQ(10)
  33. #define IRQ_IOP331_I2C_1 IOP331_IRQ(11)
  34. #define IRQ_IOP331_MSG     IOP331_IRQ(12)
  35. #define IRQ_IOP331_MSGIBQ   IOP331_IRQ(13)
  36. #define IRQ_IOP331_ATU_BIST IOP331_IRQ(14)
  37. #define IRQ_IOP331_PERFMON IOP331_IRQ(15)
  38. #define IRQ_IOP331_CORE_PMU IOP331_IRQ(16)
  39. #define IRQ_IOP331_RSVD_17 IOP331_IRQ(17)
  40. #define IRQ_IOP331_RSVD_18 IOP331_IRQ(18)
  41. #define IRQ_IOP331_RSVD_19 IOP331_IRQ(19)
  42. #define IRQ_IOP331_RSVD_20 IOP331_IRQ(20)
  43. #define IRQ_IOP331_RSVD_21 IOP331_IRQ(21)
  44. #define IRQ_IOP331_RSVD_22 IOP331_IRQ(22)
  45. #define IRQ_IOP331_RSVD_23 IOP331_IRQ(23)
  46. #define IRQ_IOP331_XINT0 IOP331_IRQ(24)
  47. #define IRQ_IOP331_XINT1 IOP331_IRQ(25)
  48. #define IRQ_IOP331_XINT2 IOP331_IRQ(26)
  49. #define IRQ_IOP331_XINT3 IOP331_IRQ(27)
  50. #define IRQ_IOP331_RSVD_28  IOP331_IRQ(28)
  51. #define IRQ_IOP331_RSVD_29  IOP331_IRQ(29)
  52. #define IRQ_IOP331_RSVD_30  IOP331_IRQ(30)
  53. #define IRQ_IOP331_RSVD_31  IOP331_IRQ(31)
  54. #define IRQ_IOP331_XINT8    IOP331_IRQ(32)  // 0
  55. #define IRQ_IOP331_XINT9    IOP331_IRQ(33)  // 1
  56. #define IRQ_IOP331_XINT10   IOP331_IRQ(34)  // 2
  57. #define IRQ_IOP331_XINT11   IOP331_IRQ(35)  // 3
  58. #define IRQ_IOP331_XINT12   IOP331_IRQ(36)  // 4
  59. #define IRQ_IOP331_XINT13   IOP331_IRQ(37)  // 5
  60. #define IRQ_IOP331_XINT14   IOP331_IRQ(38)  // 6
  61. #define IRQ_IOP331_XINT15   IOP331_IRQ(39)  // 7
  62. #define IRQ_IOP331_RSVD_40  IOP331_IRQ(40)  // 8
  63. #define IRQ_IOP331_RSVD_41  IOP331_IRQ(41)  // 9
  64. #define IRQ_IOP331_RSVD_42  IOP331_IRQ(42)  // 10
  65. #define IRQ_IOP331_RSVD_43  IOP331_IRQ(43)  // 11
  66. #define IRQ_IOP331_RSVD_44  IOP331_IRQ(44)  // 12
  67. #define IRQ_IOP331_RSVD_45  IOP331_IRQ(45)  // 13
  68. #define IRQ_IOP331_RSVD_46  IOP331_IRQ(46)  // 14
  69. #define IRQ_IOP331_RSVD_47  IOP331_IRQ(47)  // 15
  70. #define IRQ_IOP331_RSVD_48  IOP331_IRQ(48)  // 16
  71. #define IRQ_IOP331_RSVD_49  IOP331_IRQ(49)  // 17
  72. #define IRQ_IOP331_RSVD_50  IOP331_IRQ(50)  // 18
  73. #define IRQ_IOP331_UART0    IOP331_IRQ(51)  // 19
  74. #define IRQ_IOP331_UART1    IOP331_IRQ(52)  // 20
  75. #define IRQ_IOP331_PBIE     IOP331_IRQ(53)  // 21
  76. #define IRQ_IOP331_ATU_CRW  IOP331_IRQ(54)  // 22
  77. #define IRQ_IOP331_ATU_ERR IOP331_IRQ(55)  // 23
  78. #define IRQ_IOP331_MCU_ERR IOP331_IRQ(56)  // 24
  79. #define IRQ_IOP331_DMA0_ERR IOP331_IRQ(57)  // 25
  80. #define IRQ_IOP331_DMA1_ERR IOP331_IRQ(58)  // 26
  81. #define IRQ_IOP331_RSVD_59  IOP331_IRQ(59)  // 27
  82. #define IRQ_IOP331_AA_ERR IOP331_IRQ(60)  // 28
  83. #define IRQ_IOP331_RSVD_61  IOP331_IRQ(61)  // 29
  84. #define IRQ_IOP331_MSG_ERR IOP331_IRQ(62)  // 30
  85. #define IRQ_IOP331_HPI IOP331_IRQ(63)  // 31
  86. #define NR_IOP331_IRQS (IOP331_IRQ(63) + 1)
  87. #define NR_IRQS NR_IOP331_IRQS
  88. #if defined(CONFIG_ARCH_IQ80331)
  89. /*
  90.  * Interrupts available on the IQ80331 board
  91.  */
  92. /*
  93.  * On board devices
  94.  */
  95. #define IRQ_IQ80331_I82544 IRQ_IOP331_XINT0
  96. #define IRQ_IQ80331_UART0 IRQ_IOP331_UART0
  97. #define IRQ_IQ80331_UART1 IRQ_IOP331_UART1
  98. /*
  99.  * PCI interrupts
  100.  */
  101. #define IRQ_IQ80331_INTA IRQ_IOP331_XINT0
  102. #define IRQ_IQ80331_INTB IRQ_IOP331_XINT1
  103. #define IRQ_IQ80331_INTC IRQ_IOP331_XINT2
  104. #define IRQ_IQ80331_INTD IRQ_IOP331_XINT3
  105. #elif defined(CONFIG_MACH_IQ80332)
  106. /*
  107.  * Interrupts available on the IQ80332 board
  108.  */
  109. /*
  110.  * On board devices
  111.  */
  112. #define IRQ_IQ80332_I82544 IRQ_IOP331_XINT0
  113. #define IRQ_IQ80332_UART0 IRQ_IOP331_UART0
  114. #define IRQ_IQ80332_UART1 IRQ_IOP331_UART1
  115. /*
  116.  * PCI interrupts
  117.  */
  118. #define IRQ_IQ80332_INTA IRQ_IOP331_XINT0
  119. #define IRQ_IQ80332_INTB IRQ_IOP331_XINT1
  120. #define IRQ_IQ80332_INTC IRQ_IOP331_XINT2
  121. #define IRQ_IQ80332_INTD IRQ_IOP331_XINT3
  122. #endif
  123. #endif // _IOP331_IRQ_H_