home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / arm / mach-iop13xx / include / mach / irqs.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  6.2 KB  |  197 lines

  1. #ifndef _IOP13XX_IRQS_H_
  2. #define _IOP13XX_IRQS_H_
  3.  
  4. #ifndef __ASSEMBLER__
  5. #include <linux/types.h>
  6.  
  7. /* INTPND0 CP6 R0 Page 3
  8.  */
  9. static inline u32 read_intpnd_0(void)
  10. {
  11.     u32 val;
  12.     asm volatile("mrc p6, 0, %0, c0, c3, 0":"=r" (val));
  13.     return val;
  14. }
  15.  
  16. /* INTPND1 CP6 R1 Page 3
  17.  */
  18. static inline u32 read_intpnd_1(void)
  19. {
  20.     u32 val;
  21.     asm volatile("mrc p6, 0, %0, c1, c3, 0":"=r" (val));
  22.     return val;
  23. }
  24.  
  25. /* INTPND2 CP6 R2 Page 3
  26.  */
  27. static inline u32 read_intpnd_2(void)
  28. {
  29.     u32 val;
  30.     asm volatile("mrc p6, 0, %0, c2, c3, 0":"=r" (val));
  31.     return val;
  32. }
  33.  
  34. /* INTPND3 CP6 R3 Page 3
  35.  */
  36. static inline u32 read_intpnd_3(void)
  37. {
  38.     u32 val;
  39.     asm volatile("mrc p6, 0, %0, c3, c3, 0":"=r" (val));
  40.     return val;
  41. }
  42. #endif
  43.  
  44. #define INTBASE 0
  45. #define INTSIZE_4 1
  46.  
  47. /*
  48.  * iop34x chipset interrupts
  49.  */
  50. #define IOP13XX_IRQ(x)        (IOP13XX_IRQ_OFS + (x))
  51.  
  52. /*
  53.  * On IRQ or FIQ register
  54.  */
  55. #define IRQ_IOP13XX_ADMA0_EOT    (0)
  56. #define IRQ_IOP13XX_ADMA0_EOC    (1)
  57. #define IRQ_IOP13XX_ADMA1_EOT    (2)
  58. #define IRQ_IOP13XX_ADMA1_EOC    (3)
  59. #define IRQ_IOP13XX_ADMA2_EOT    (4)
  60. #define IRQ_IOP13XX_ADMA2_EOC    (5)
  61. #define IRQ_IOP134_WATCHDOG    (6)
  62. #define IRQ_IOP13XX_RSVD_7    (7)
  63. #define IRQ_IOP13XX_TIMER0    (8)
  64. #define IRQ_IOP13XX_TIMER1    (9)
  65. #define IRQ_IOP13XX_I2C_0    (10)
  66. #define IRQ_IOP13XX_I2C_1    (11)
  67. #define IRQ_IOP13XX_MSG    (12)
  68. #define IRQ_IOP13XX_MSGIBQ    (13)
  69. #define IRQ_IOP13XX_ATU_IM    (14)
  70. #define IRQ_IOP13XX_ATU_BIST    (15)
  71. #define IRQ_IOP13XX_PPMU    (16)
  72. #define IRQ_IOP13XX_COREPMU    (17)
  73. #define IRQ_IOP13XX_CORECACHE    (18)
  74. #define IRQ_IOP13XX_RSVD_19    (19)
  75. #define IRQ_IOP13XX_RSVD_20    (20)
  76. #define IRQ_IOP13XX_RSVD_21    (21)
  77. #define IRQ_IOP13XX_RSVD_22    (22)
  78. #define IRQ_IOP13XX_RSVD_23    (23)
  79. #define IRQ_IOP13XX_XINT0    (24)
  80. #define IRQ_IOP13XX_XINT1    (25)
  81. #define IRQ_IOP13XX_XINT2    (26)
  82. #define IRQ_IOP13XX_XINT3    (27)
  83. #define IRQ_IOP13XX_XINT4    (28)
  84. #define IRQ_IOP13XX_XINT5    (29)
  85. #define IRQ_IOP13XX_XINT6    (30)
  86. #define IRQ_IOP13XX_XINT7    (31)
  87.                       /* IINTSRC1 bit */
  88. #define IRQ_IOP13XX_XINT8    (32)  /* 0  */
  89. #define IRQ_IOP13XX_XINT9    (33)  /* 1  */
  90. #define IRQ_IOP13XX_XINT10    (34)  /* 2  */
  91. #define IRQ_IOP13XX_XINT11    (35)  /* 3  */
  92. #define IRQ_IOP13XX_XINT12    (36)  /* 4  */
  93. #define IRQ_IOP13XX_XINT13    (37)  /* 5  */
  94. #define IRQ_IOP13XX_XINT14    (38)  /* 6  */
  95. #define IRQ_IOP13XX_XINT15    (39)  /* 7  */
  96. #define IRQ_IOP13XX_RSVD_40    (40)  /* 8  */
  97. #define IRQ_IOP13XX_RSVD_41    (41)  /* 9  */
  98. #define IRQ_IOP13XX_RSVD_42    (42)  /* 10 */
  99. #define IRQ_IOP13XX_RSVD_43    (43)  /* 11 */
  100. #define IRQ_IOP13XX_RSVD_44    (44)  /* 12 */
  101. #define IRQ_IOP13XX_RSVD_45    (45)  /* 13 */
  102. #define IRQ_IOP13XX_RSVD_46    (46)  /* 14 */
  103. #define IRQ_IOP13XX_RSVD_47    (47)  /* 15 */
  104. #define IRQ_IOP13XX_RSVD_48    (48)  /* 16 */
  105. #define IRQ_IOP13XX_RSVD_49    (49)  /* 17 */
  106. #define IRQ_IOP13XX_RSVD_50    (50)  /* 18 */
  107. #define IRQ_IOP13XX_UART0    (51)  /* 19 */
  108. #define IRQ_IOP13XX_UART1    (52)  /* 20 */
  109. #define IRQ_IOP13XX_PBIE    (53)  /* 21 */
  110. #define IRQ_IOP13XX_ATU_CRW    (54)  /* 22 */
  111. #define IRQ_IOP13XX_ATU_ERR    (55)  /* 23 */
  112. #define IRQ_IOP13XX_MCU_ERR    (56)  /* 24 */
  113. #define IRQ_IOP13XX_ADMA0_ERR    (57)  /* 25 */
  114. #define IRQ_IOP13XX_ADMA1_ERR    (58)  /* 26 */
  115. #define IRQ_IOP13XX_ADMA2_ERR    (59)  /* 27 */
  116. #define IRQ_IOP13XX_RSVD_60    (60)  /* 28 */
  117. #define IRQ_IOP13XX_RSVD_61    (61)  /* 29 */
  118. #define IRQ_IOP13XX_MSG_ERR    (62)  /* 30 */
  119. #define IRQ_IOP13XX_RSVD_63    (63)  /* 31 */
  120.                       /* IINTSRC2 bit */
  121. #define IRQ_IOP13XX_INTERPROC    (64)  /* 0  */
  122. #define IRQ_IOP13XX_RSVD_65    (65)  /* 1  */
  123. #define IRQ_IOP13XX_RSVD_66    (66)  /* 2  */
  124. #define IRQ_IOP13XX_RSVD_67    (67)  /* 3  */
  125. #define IRQ_IOP13XX_RSVD_68    (68)  /* 4  */
  126. #define IRQ_IOP13XX_RSVD_69    (69)  /* 5  */
  127. #define IRQ_IOP13XX_RSVD_70    (70)  /* 6  */
  128. #define IRQ_IOP13XX_RSVD_71    (71)  /* 7  */
  129. #define IRQ_IOP13XX_RSVD_72    (72)  /* 8  */
  130. #define IRQ_IOP13XX_RSVD_73    (73)  /* 9  */
  131. #define IRQ_IOP13XX_RSVD_74    (74)  /* 10 */
  132. #define IRQ_IOP13XX_RSVD_75    (75)  /* 11 */
  133. #define IRQ_IOP13XX_RSVD_76    (76)  /* 12 */
  134. #define IRQ_IOP13XX_RSVD_77    (77)  /* 13 */
  135. #define IRQ_IOP13XX_RSVD_78    (78)  /* 14 */
  136. #define IRQ_IOP13XX_RSVD_79    (79)  /* 15 */
  137. #define IRQ_IOP13XX_RSVD_80    (80)  /* 16 */
  138. #define IRQ_IOP13XX_RSVD_81    (81)  /* 17 */
  139. #define IRQ_IOP13XX_RSVD_82    (82)  /* 18 */
  140. #define IRQ_IOP13XX_RSVD_83    (83)  /* 19 */
  141. #define IRQ_IOP13XX_RSVD_84    (84)  /* 20 */
  142. #define IRQ_IOP13XX_RSVD_85    (85)  /* 21 */
  143. #define IRQ_IOP13XX_RSVD_86    (86)  /* 22 */
  144. #define IRQ_IOP13XX_RSVD_87    (87)  /* 23 */
  145. #define IRQ_IOP13XX_RSVD_88    (88)  /* 24 */
  146. #define IRQ_IOP13XX_RSVD_89    (89)  /* 25 */
  147. #define IRQ_IOP13XX_RSVD_90    (90)  /* 26 */
  148. #define IRQ_IOP13XX_RSVD_91    (91)  /* 27 */
  149. #define IRQ_IOP13XX_RSVD_92    (92)  /* 28 */
  150. #define IRQ_IOP13XX_RSVD_93    (93)  /* 29 */
  151. #define IRQ_IOP13XX_SIB_ERR    (94)  /* 30 */
  152. #define IRQ_IOP13XX_SRAM_ERR    (95)  /* 31 */
  153.                       /* IINTSRC3 bit */
  154. #define IRQ_IOP13XX_I2C_2    (96)  /* 0  */
  155. #define IRQ_IOP13XX_ATUE_BIST    (97)  /* 1  */
  156. #define IRQ_IOP13XX_ATUE_CRW    (98)  /* 2  */
  157. #define IRQ_IOP13XX_ATUE_ERR    (99)  /* 3  */
  158. #define IRQ_IOP13XX_IMU    (100) /* 4  */
  159. #define IRQ_IOP13XX_RSVD_101    (101) /* 5  */
  160. #define IRQ_IOP13XX_RSVD_102    (102) /* 6  */
  161. #define IRQ_IOP13XX_TPMI0_OUT    (103) /* 7  */
  162. #define IRQ_IOP13XX_TPMI1_OUT    (104) /* 8  */
  163. #define IRQ_IOP13XX_TPMI2_OUT    (105) /* 9  */
  164. #define IRQ_IOP13XX_TPMI3_OUT    (106) /* 10 */
  165. #define IRQ_IOP13XX_ATUE_IMA    (107) /* 11 */
  166. #define IRQ_IOP13XX_ATUE_IMB    (108) /* 12 */
  167. #define IRQ_IOP13XX_ATUE_IMC    (109) /* 13 */
  168. #define IRQ_IOP13XX_ATUE_IMD    (110) /* 14 */
  169. #define IRQ_IOP13XX_MU_MSI_TB    (111) /* 15 */
  170. #define IRQ_IOP13XX_RSVD_112    (112) /* 16 */
  171. #define IRQ_IOP13XX_INBD_MSI    (113) /* 17 */
  172. #define IRQ_IOP13XX_RSVD_114    (114) /* 18 */
  173. #define IRQ_IOP13XX_RSVD_115    (115) /* 19 */
  174. #define IRQ_IOP13XX_RSVD_116    (116) /* 20 */
  175. #define IRQ_IOP13XX_RSVD_117    (117) /* 21 */
  176. #define IRQ_IOP13XX_RSVD_118    (118) /* 22 */
  177. #define IRQ_IOP13XX_RSVD_119    (119) /* 23 */
  178. #define IRQ_IOP13XX_RSVD_120    (120) /* 24 */
  179. #define IRQ_IOP13XX_RSVD_121    (121) /* 25 */
  180. #define IRQ_IOP13XX_RSVD_122    (122) /* 26 */
  181. #define IRQ_IOP13XX_RSVD_123    (123) /* 27 */
  182. #define IRQ_IOP13XX_RSVD_124    (124) /* 28 */
  183. #define IRQ_IOP13XX_RSVD_125    (125) /* 29 */
  184. #define IRQ_IOP13XX_RSVD_126    (126) /* 30 */
  185. #define IRQ_IOP13XX_HPI    (127) /* 31 */
  186.  
  187. #ifdef CONFIG_PCI_MSI
  188. #define IRQ_IOP13XX_MSI_0    (IRQ_IOP13XX_HPI + 1)
  189. #define NR_IOP13XX_IRQS     (IRQ_IOP13XX_MSI_0 + 128)
  190. #else
  191. #define NR_IOP13XX_IRQS    (IRQ_IOP13XX_HPI + 1)
  192. #endif
  193.  
  194. #define NR_IRQS        NR_IOP13XX_IRQS
  195.  
  196. #endif /* _IOP13XX_IRQ_H_ */
  197.