intr_vect_defs.h 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342
  1. #ifndef __intr_vect_defs_h
  2. #define __intr_vect_defs_h
  3. /*
  4. * This file is autogenerated from
  5. * file: intr_vect.r
  6. *
  7. * by ../../../tools/rdesc/bin/rdes2c -outfile intr_vect_defs.h intr_vect.r
  8. * Any changes here will be lost.
  9. *
  10. * -*- buffer-read-only: t -*-
  11. */
  12. /* Main access macros */
  13. #ifndef REG_RD
  14. #define REG_RD( scope, inst, reg ) \
  15. REG_READ( reg_##scope##_##reg, \
  16. (inst) + REG_RD_ADDR_##scope##_##reg )
  17. #endif
  18. #ifndef REG_WR
  19. #define REG_WR( scope, inst, reg, val ) \
  20. REG_WRITE( reg_##scope##_##reg, \
  21. (inst) + REG_WR_ADDR_##scope##_##reg, (val) )
  22. #endif
  23. #ifndef REG_RD_VECT
  24. #define REG_RD_VECT( scope, inst, reg, index ) \
  25. REG_READ( reg_##scope##_##reg, \
  26. (inst) + REG_RD_ADDR_##scope##_##reg + \
  27. (index) * STRIDE_##scope##_##reg )
  28. #endif
  29. #ifndef REG_WR_VECT
  30. #define REG_WR_VECT( scope, inst, reg, index, val ) \
  31. REG_WRITE( reg_##scope##_##reg, \
  32. (inst) + REG_WR_ADDR_##scope##_##reg + \
  33. (index) * STRIDE_##scope##_##reg, (val) )
  34. #endif
  35. #ifndef REG_RD_INT
  36. #define REG_RD_INT( scope, inst, reg ) \
  37. REG_READ( int, (inst) + REG_RD_ADDR_##scope##_##reg )
  38. #endif
  39. #ifndef REG_WR_INT
  40. #define REG_WR_INT( scope, inst, reg, val ) \
  41. REG_WRITE( int, (inst) + REG_WR_ADDR_##scope##_##reg, (val) )
  42. #endif
  43. #ifndef REG_RD_INT_VECT
  44. #define REG_RD_INT_VECT( scope, inst, reg, index ) \
  45. REG_READ( int, (inst) + REG_RD_ADDR_##scope##_##reg + \
  46. (index) * STRIDE_##scope##_##reg )
  47. #endif
  48. #ifndef REG_WR_INT_VECT
  49. #define REG_WR_INT_VECT( scope, inst, reg, index, val ) \
  50. REG_WRITE( int, (inst) + REG_WR_ADDR_##scope##_##reg + \
  51. (index) * STRIDE_##scope##_##reg, (val) )
  52. #endif
  53. #ifndef REG_TYPE_CONV
  54. #define REG_TYPE_CONV( type, orgtype, val ) \
  55. ( { union { orgtype o; type n; } r; r.o = val; r.n; } )
  56. #endif
  57. #ifndef reg_page_size
  58. #define reg_page_size 8192
  59. #endif
  60. #ifndef REG_ADDR
  61. #define REG_ADDR( scope, inst, reg ) \
  62. ( (inst) + REG_RD_ADDR_##scope##_##reg )
  63. #endif
  64. #ifndef REG_ADDR_VECT
  65. #define REG_ADDR_VECT( scope, inst, reg, index ) \
  66. ( (inst) + REG_RD_ADDR_##scope##_##reg + \
  67. (index) * STRIDE_##scope##_##reg )
  68. #endif
  69. /* C-code for register scope intr_vect */
  70. #define STRIDE_intr_vect_rw_mask 4
  71. /* Register rw_mask0, scope intr_vect, type rw */
  72. typedef struct {
  73. unsigned int timer0 : 1;
  74. unsigned int timer1 : 1;
  75. unsigned int dma0 : 1;
  76. unsigned int dma1 : 1;
  77. unsigned int dma2 : 1;
  78. unsigned int dma3 : 1;
  79. unsigned int dma4 : 1;
  80. unsigned int dma5 : 1;
  81. unsigned int dma6 : 1;
  82. unsigned int dma7 : 1;
  83. unsigned int dma9 : 1;
  84. unsigned int dma11 : 1;
  85. unsigned int gio : 1;
  86. unsigned int iop0 : 1;
  87. unsigned int iop1 : 1;
  88. unsigned int ser0 : 1;
  89. unsigned int ser1 : 1;
  90. unsigned int ser2 : 1;
  91. unsigned int ser3 : 1;
  92. unsigned int ser4 : 1;
  93. unsigned int sser : 1;
  94. unsigned int strdma0 : 1;
  95. unsigned int strdma1 : 1;
  96. unsigned int strdma2 : 1;
  97. unsigned int strdma3 : 1;
  98. unsigned int strdma5 : 1;
  99. unsigned int vin : 1;
  100. unsigned int vout : 1;
  101. unsigned int jpeg : 1;
  102. unsigned int h264 : 1;
  103. unsigned int histo : 1;
  104. unsigned int ccd : 1;
  105. } reg_intr_vect_rw_mask0;
  106. #define reg_intr_vect_rw_mask reg_intr_vect_rw_mask0
  107. #define REG_RD_ADDR_intr_vect_rw_mask 0
  108. #define REG_WR_ADDR_intr_vect_rw_mask 0
  109. #define REG_RD_ADDR_intr_vect_rw_mask0 0
  110. #define REG_WR_ADDR_intr_vect_rw_mask0 0
  111. #define STRIDE_intr_vect_r_vect 4
  112. /* Register r_vect0, scope intr_vect, type r */
  113. typedef struct {
  114. unsigned int timer0 : 1;
  115. unsigned int timer1 : 1;
  116. unsigned int dma0 : 1;
  117. unsigned int dma1 : 1;
  118. unsigned int dma2 : 1;
  119. unsigned int dma3 : 1;
  120. unsigned int dma4 : 1;
  121. unsigned int dma5 : 1;
  122. unsigned int dma6 : 1;
  123. unsigned int dma7 : 1;
  124. unsigned int dma9 : 1;
  125. unsigned int dma11 : 1;
  126. unsigned int gio : 1;
  127. unsigned int iop0 : 1;
  128. unsigned int iop1 : 1;
  129. unsigned int ser0 : 1;
  130. unsigned int ser1 : 1;
  131. unsigned int ser2 : 1;
  132. unsigned int ser3 : 1;
  133. unsigned int ser4 : 1;
  134. unsigned int sser : 1;
  135. unsigned int strdma0 : 1;
  136. unsigned int strdma1 : 1;
  137. unsigned int strdma2 : 1;
  138. unsigned int strdma3 : 1;
  139. unsigned int strdma5 : 1;
  140. unsigned int vin : 1;
  141. unsigned int vout : 1;
  142. unsigned int jpeg : 1;
  143. unsigned int h264 : 1;
  144. unsigned int histo : 1;
  145. unsigned int ccd : 1;
  146. } reg_intr_vect_r_vect0;
  147. #define reg_intr_vect_r_vect reg_intr_vect_r_vect0
  148. #define REG_RD_ADDR_intr_vect_r_vect 8
  149. #define REG_RD_ADDR_intr_vect_r_vect0 8
  150. #define STRIDE_intr_vect_r_masked_vect 4
  151. /* Register r_masked_vect0, scope intr_vect, type r */
  152. typedef struct {
  153. unsigned int timer0 : 1;
  154. unsigned int timer1 : 1;
  155. unsigned int dma0 : 1;
  156. unsigned int dma1 : 1;
  157. unsigned int dma2 : 1;
  158. unsigned int dma3 : 1;
  159. unsigned int dma4 : 1;
  160. unsigned int dma5 : 1;
  161. unsigned int dma6 : 1;
  162. unsigned int dma7 : 1;
  163. unsigned int dma9 : 1;
  164. unsigned int dma11 : 1;
  165. unsigned int gio : 1;
  166. unsigned int iop0 : 1;
  167. unsigned int iop1 : 1;
  168. unsigned int ser0 : 1;
  169. unsigned int ser1 : 1;
  170. unsigned int ser2 : 1;
  171. unsigned int ser3 : 1;
  172. unsigned int ser4 : 1;
  173. unsigned int sser : 1;
  174. unsigned int strdma0 : 1;
  175. unsigned int strdma1 : 1;
  176. unsigned int strdma2 : 1;
  177. unsigned int strdma3 : 1;
  178. unsigned int strdma5 : 1;
  179. unsigned int vin : 1;
  180. unsigned int vout : 1;
  181. unsigned int jpeg : 1;
  182. unsigned int h264 : 1;
  183. unsigned int histo : 1;
  184. unsigned int ccd : 1;
  185. } reg_intr_vect_r_masked_vect0;
  186. #define reg_intr_vect_r_masked_vect reg_intr_masked_vect_r_vect0
  187. #define REG_RD_ADDR_intr_vect_r_masked_vect0 16
  188. #define REG_RD_ADDR_intr_vect_r_masked_vect 16
  189. #define STRIDE_intr_vect_rw_xmask 4
  190. /* Register rw_xmask0, scope intr_vect, type rw */
  191. typedef struct {
  192. unsigned int timer0 : 1;
  193. unsigned int timer1 : 1;
  194. unsigned int dma0 : 1;
  195. unsigned int dma1 : 1;
  196. unsigned int dma2 : 1;
  197. unsigned int dma3 : 1;
  198. unsigned int dma4 : 1;
  199. unsigned int dma5 : 1;
  200. unsigned int dma6 : 1;
  201. unsigned int dma7 : 1;
  202. unsigned int dma9 : 1;
  203. unsigned int dma11 : 1;
  204. unsigned int gio : 1;
  205. unsigned int iop0 : 1;
  206. unsigned int iop1 : 1;
  207. unsigned int ser0 : 1;
  208. unsigned int ser1 : 1;
  209. unsigned int ser2 : 1;
  210. unsigned int ser3 : 1;
  211. unsigned int ser4 : 1;
  212. unsigned int sser : 1;
  213. unsigned int strdma0 : 1;
  214. unsigned int strdma1 : 1;
  215. unsigned int strdma2 : 1;
  216. unsigned int strdma3 : 1;
  217. unsigned int strdma5 : 1;
  218. unsigned int vin : 1;
  219. unsigned int vout : 1;
  220. unsigned int jpeg : 1;
  221. unsigned int h264 : 1;
  222. unsigned int histo : 1;
  223. unsigned int ccd : 1;
  224. } reg_intr_vect_rw_xmask0;
  225. #define reg_intr_vect_rw_xmask reg_intr_vect_rw_xmask0
  226. #define REG_RD_ADDR_intr_vect_rw_xmask0 24
  227. #define REG_WR_ADDR_intr_vect_rw_xmask0 24
  228. #define REG_RD_ADDR_intr_vect_rw_xmask 24
  229. #define REG_WR_ADDR_intr_vect_rw_xmask 24
  230. /* Register rw_mask1, scope intr_vect, type rw */
  231. typedef struct {
  232. unsigned int eth : 1;
  233. unsigned int memarb_bar : 1;
  234. unsigned int memarb_foo : 1;
  235. unsigned int pio : 1;
  236. unsigned int sclr : 1;
  237. unsigned int sclr_fifo : 1;
  238. unsigned int dummy1 : 26;
  239. } reg_intr_vect_rw_mask1;
  240. #define REG_RD_ADDR_intr_vect_rw_mask1 4
  241. #define REG_WR_ADDR_intr_vect_rw_mask1 4
  242. /* Register r_vect1, scope intr_vect, type r */
  243. typedef struct {
  244. unsigned int eth : 1;
  245. unsigned int memarb_bar : 1;
  246. unsigned int memarb_foo : 1;
  247. unsigned int pio : 1;
  248. unsigned int sclr : 1;
  249. unsigned int sclr_fifo : 1;
  250. unsigned int dummy1 : 26;
  251. } reg_intr_vect_r_vect1;
  252. #define REG_RD_ADDR_intr_vect_r_vect1 12
  253. /* Register r_masked_vect1, scope intr_vect, type r */
  254. typedef struct {
  255. unsigned int eth : 1;
  256. unsigned int memarb_bar : 1;
  257. unsigned int memarb_foo : 1;
  258. unsigned int pio : 1;
  259. unsigned int sclr : 1;
  260. unsigned int sclr_fifo : 1;
  261. unsigned int dummy1 : 26;
  262. } reg_intr_vect_r_masked_vect1;
  263. #define REG_RD_ADDR_intr_vect_r_masked_vect1 20
  264. /* Register rw_xmask1, scope intr_vect, type rw */
  265. typedef struct {
  266. unsigned int eth : 1;
  267. unsigned int memarb_bar : 1;
  268. unsigned int memarb_foo : 1;
  269. unsigned int pio : 1;
  270. unsigned int sclr : 1;
  271. unsigned int sclr_fifo : 1;
  272. unsigned int dummy1 : 26;
  273. } reg_intr_vect_rw_xmask1;
  274. #define REG_RD_ADDR_intr_vect_rw_xmask1 28
  275. #define REG_WR_ADDR_intr_vect_rw_xmask1 28
  276. /* Register rw_xmask_ctrl, scope intr_vect, type rw */
  277. typedef struct {
  278. unsigned int en : 1;
  279. unsigned int dummy1 : 31;
  280. } reg_intr_vect_rw_xmask_ctrl;
  281. #define REG_RD_ADDR_intr_vect_rw_xmask_ctrl 32
  282. #define REG_WR_ADDR_intr_vect_rw_xmask_ctrl 32
  283. /* Register r_nmi, scope intr_vect, type r */
  284. typedef struct {
  285. unsigned int watchdog0 : 1;
  286. unsigned int watchdog1 : 1;
  287. unsigned int dummy1 : 30;
  288. } reg_intr_vect_r_nmi;
  289. #define REG_RD_ADDR_intr_vect_r_nmi 64
  290. /* Register r_guru, scope intr_vect, type r */
  291. typedef struct {
  292. unsigned int jtag : 1;
  293. unsigned int dummy1 : 31;
  294. } reg_intr_vect_r_guru;
  295. #define REG_RD_ADDR_intr_vect_r_guru 68
  296. /* Register rw_ipi, scope intr_vect, type rw */
  297. typedef struct
  298. {
  299. unsigned int vector;
  300. } reg_intr_vect_rw_ipi;
  301. #define REG_RD_ADDR_intr_vect_rw_ipi 72
  302. #define REG_WR_ADDR_intr_vect_rw_ipi 72
  303. /* Constants */
  304. enum {
  305. regk_intr_vect_no = 0x00000000,
  306. regk_intr_vect_rw_mask0_default = 0x00000000,
  307. regk_intr_vect_rw_mask1_default = 0x00000000,
  308. regk_intr_vect_rw_xmask0_default = 0x00000000,
  309. regk_intr_vect_rw_xmask1_default = 0x00000000,
  310. regk_intr_vect_rw_xmask_ctrl_default = 0x00000000,
  311. regk_intr_vect_yes = 0x00000001
  312. };
  313. #endif /* __intr_vect_defs_h */