bfi_ctreg.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636
  1. /*
  2. * bfi_ctreg.h catapult host block register definitions
  3. *
  4. * !!! Do not edit. Auto generated. !!!
  5. */
  6. #ifndef __BFI_CTREG_H__
  7. #define __BFI_CTREG_H__
  8. #define HOSTFN0_LPU_MBOX0_0 0x00019200
  9. #define HOSTFN1_LPU_MBOX0_8 0x00019260
  10. #define LPU_HOSTFN0_MBOX0_0 0x00019280
  11. #define LPU_HOSTFN1_MBOX0_8 0x000192e0
  12. #define HOSTFN2_LPU_MBOX0_0 0x00019400
  13. #define HOSTFN3_LPU_MBOX0_8 0x00019460
  14. #define LPU_HOSTFN2_MBOX0_0 0x00019480
  15. #define LPU_HOSTFN3_MBOX0_8 0x000194e0
  16. #define HOSTFN0_INT_STATUS 0x00014000
  17. #define __HOSTFN0_HALT_OCCURRED 0x01000000
  18. #define __HOSTFN0_INT_STATUS_LVL_MK 0x00f00000
  19. #define __HOSTFN0_INT_STATUS_LVL_SH 20
  20. #define __HOSTFN0_INT_STATUS_LVL(_v) ((_v) << __HOSTFN0_INT_STATUS_LVL_SH)
  21. #define __HOSTFN0_INT_STATUS_P_MK 0x000f0000
  22. #define __HOSTFN0_INT_STATUS_P_SH 16
  23. #define __HOSTFN0_INT_STATUS_P(_v) ((_v) << __HOSTFN0_INT_STATUS_P_SH)
  24. #define __HOSTFN0_INT_STATUS_F 0x0000ffff
  25. #define HOSTFN0_INT_MSK 0x00014004
  26. #define HOST_PAGE_NUM_FN0 0x00014008
  27. #define __HOST_PAGE_NUM_FN 0x000001ff
  28. #define HOST_MSIX_ERR_INDEX_FN0 0x0001400c
  29. #define __MSIX_ERR_INDEX_FN 0x000001ff
  30. #define HOSTFN1_INT_STATUS 0x00014100
  31. #define __HOSTFN1_HALT_OCCURRED 0x01000000
  32. #define __HOSTFN1_INT_STATUS_LVL_MK 0x00f00000
  33. #define __HOSTFN1_INT_STATUS_LVL_SH 20
  34. #define __HOSTFN1_INT_STATUS_LVL(_v) ((_v) << __HOSTFN1_INT_STATUS_LVL_SH)
  35. #define __HOSTFN1_INT_STATUS_P_MK 0x000f0000
  36. #define __HOSTFN1_INT_STATUS_P_SH 16
  37. #define __HOSTFN1_INT_STATUS_P(_v) ((_v) << __HOSTFN1_INT_STATUS_P_SH)
  38. #define __HOSTFN1_INT_STATUS_F 0x0000ffff
  39. #define HOSTFN1_INT_MSK 0x00014104
  40. #define HOST_PAGE_NUM_FN1 0x00014108
  41. #define HOST_MSIX_ERR_INDEX_FN1 0x0001410c
  42. #define APP_PLL_425_CTL_REG 0x00014204
  43. #define __P_425_PLL_LOCK 0x80000000
  44. #define __APP_PLL_425_SRAM_USE_100MHZ 0x00100000
  45. #define __APP_PLL_425_RESET_TIMER_MK 0x000e0000
  46. #define __APP_PLL_425_RESET_TIMER_SH 17
  47. #define __APP_PLL_425_RESET_TIMER(_v) ((_v) << __APP_PLL_425_RESET_TIMER_SH)
  48. #define __APP_PLL_425_LOGIC_SOFT_RESET 0x00010000
  49. #define __APP_PLL_425_CNTLMT0_1_MK 0x0000c000
  50. #define __APP_PLL_425_CNTLMT0_1_SH 14
  51. #define __APP_PLL_425_CNTLMT0_1(_v) ((_v) << __APP_PLL_425_CNTLMT0_1_SH)
  52. #define __APP_PLL_425_JITLMT0_1_MK 0x00003000
  53. #define __APP_PLL_425_JITLMT0_1_SH 12
  54. #define __APP_PLL_425_JITLMT0_1(_v) ((_v) << __APP_PLL_425_JITLMT0_1_SH)
  55. #define __APP_PLL_425_HREF 0x00000800
  56. #define __APP_PLL_425_HDIV 0x00000400
  57. #define __APP_PLL_425_P0_1_MK 0x00000300
  58. #define __APP_PLL_425_P0_1_SH 8
  59. #define __APP_PLL_425_P0_1(_v) ((_v) << __APP_PLL_425_P0_1_SH)
  60. #define __APP_PLL_425_Z0_2_MK 0x000000e0
  61. #define __APP_PLL_425_Z0_2_SH 5
  62. #define __APP_PLL_425_Z0_2(_v) ((_v) << __APP_PLL_425_Z0_2_SH)
  63. #define __APP_PLL_425_RSEL200500 0x00000010
  64. #define __APP_PLL_425_ENARST 0x00000008
  65. #define __APP_PLL_425_BYPASS 0x00000004
  66. #define __APP_PLL_425_LRESETN 0x00000002
  67. #define __APP_PLL_425_ENABLE 0x00000001
  68. #define APP_PLL_312_CTL_REG 0x00014208
  69. #define __P_312_PLL_LOCK 0x80000000
  70. #define __ENABLE_MAC_AHB_1 0x00800000
  71. #define __ENABLE_MAC_AHB_0 0x00400000
  72. #define __ENABLE_MAC_1 0x00200000
  73. #define __ENABLE_MAC_0 0x00100000
  74. #define __APP_PLL_312_RESET_TIMER_MK 0x000e0000
  75. #define __APP_PLL_312_RESET_TIMER_SH 17
  76. #define __APP_PLL_312_RESET_TIMER(_v) ((_v) << __APP_PLL_312_RESET_TIMER_SH)
  77. #define __APP_PLL_312_LOGIC_SOFT_RESET 0x00010000
  78. #define __APP_PLL_312_CNTLMT0_1_MK 0x0000c000
  79. #define __APP_PLL_312_CNTLMT0_1_SH 14
  80. #define __APP_PLL_312_CNTLMT0_1(_v) ((_v) << __APP_PLL_312_CNTLMT0_1_SH)
  81. #define __APP_PLL_312_JITLMT0_1_MK 0x00003000
  82. #define __APP_PLL_312_JITLMT0_1_SH 12
  83. #define __APP_PLL_312_JITLMT0_1(_v) ((_v) << __APP_PLL_312_JITLMT0_1_SH)
  84. #define __APP_PLL_312_HREF 0x00000800
  85. #define __APP_PLL_312_HDIV 0x00000400
  86. #define __APP_PLL_312_P0_1_MK 0x00000300
  87. #define __APP_PLL_312_P0_1_SH 8
  88. #define __APP_PLL_312_P0_1(_v) ((_v) << __APP_PLL_312_P0_1_SH)
  89. #define __APP_PLL_312_Z0_2_MK 0x000000e0
  90. #define __APP_PLL_312_Z0_2_SH 5
  91. #define __APP_PLL_312_Z0_2(_v) ((_v) << __APP_PLL_312_Z0_2_SH)
  92. #define __APP_PLL_312_RSEL200500 0x00000010
  93. #define __APP_PLL_312_ENARST 0x00000008
  94. #define __APP_PLL_312_BYPASS 0x00000004
  95. #define __APP_PLL_312_LRESETN 0x00000002
  96. #define __APP_PLL_312_ENABLE 0x00000001
  97. #define MBIST_CTL_REG 0x00014220
  98. #define __EDRAM_BISTR_START 0x00000004
  99. #define __MBIST_RESET 0x00000002
  100. #define __MBIST_START 0x00000001
  101. #define MBIST_STAT_REG 0x00014224
  102. #define __EDRAM_BISTR_STATUS 0x00000008
  103. #define __EDRAM_BISTR_DONE 0x00000004
  104. #define __MEM_BIT_STATUS 0x00000002
  105. #define __MBIST_DONE 0x00000001
  106. #define HOST_SEM0_REG 0x00014230
  107. #define __HOST_SEMAPHORE 0x00000001
  108. #define HOST_SEM1_REG 0x00014234
  109. #define HOST_SEM2_REG 0x00014238
  110. #define HOST_SEM3_REG 0x0001423c
  111. #define HOST_SEM0_INFO_REG 0x00014240
  112. #define HOST_SEM1_INFO_REG 0x00014244
  113. #define HOST_SEM2_INFO_REG 0x00014248
  114. #define HOST_SEM3_INFO_REG 0x0001424c
  115. #define ETH_MAC_SER_REG 0x00014288
  116. #define __APP_EMS_CKBUFAMPIN 0x00000020
  117. #define __APP_EMS_REFCLKSEL 0x00000010
  118. #define __APP_EMS_CMLCKSEL 0x00000008
  119. #define __APP_EMS_REFCKBUFEN2 0x00000004
  120. #define __APP_EMS_REFCKBUFEN1 0x00000002
  121. #define __APP_EMS_CHANNEL_SEL 0x00000001
  122. #define HOSTFN2_INT_STATUS 0x00014300
  123. #define __HOSTFN2_HALT_OCCURRED 0x01000000
  124. #define __HOSTFN2_INT_STATUS_LVL_MK 0x00f00000
  125. #define __HOSTFN2_INT_STATUS_LVL_SH 20
  126. #define __HOSTFN2_INT_STATUS_LVL(_v) ((_v) << __HOSTFN2_INT_STATUS_LVL_SH)
  127. #define __HOSTFN2_INT_STATUS_P_MK 0x000f0000
  128. #define __HOSTFN2_INT_STATUS_P_SH 16
  129. #define __HOSTFN2_INT_STATUS_P(_v) ((_v) << __HOSTFN2_INT_STATUS_P_SH)
  130. #define __HOSTFN2_INT_STATUS_F 0x0000ffff
  131. #define HOSTFN2_INT_MSK 0x00014304
  132. #define HOST_PAGE_NUM_FN2 0x00014308
  133. #define HOST_MSIX_ERR_INDEX_FN2 0x0001430c
  134. #define HOSTFN3_INT_STATUS 0x00014400
  135. #define __HALT_OCCURRED 0x01000000
  136. #define __HOSTFN3_INT_STATUS_LVL_MK 0x00f00000
  137. #define __HOSTFN3_INT_STATUS_LVL_SH 20
  138. #define __HOSTFN3_INT_STATUS_LVL(_v) ((_v) << __HOSTFN3_INT_STATUS_LVL_SH)
  139. #define __HOSTFN3_INT_STATUS_P_MK 0x000f0000
  140. #define __HOSTFN3_INT_STATUS_P_SH 16
  141. #define __HOSTFN3_INT_STATUS_P(_v) ((_v) << __HOSTFN3_INT_STATUS_P_SH)
  142. #define __HOSTFN3_INT_STATUS_F 0x0000ffff
  143. #define HOSTFN3_INT_MSK 0x00014404
  144. #define HOST_PAGE_NUM_FN3 0x00014408
  145. #define HOST_MSIX_ERR_INDEX_FN3 0x0001440c
  146. #define FNC_ID_REG 0x00014600
  147. #define __FUNCTION_NUMBER 0x00000007
  148. #define FNC_PERS_REG 0x00014604
  149. #define __F3_FUNCTION_ACTIVE 0x80000000
  150. #define __F3_FUNCTION_MODE 0x40000000
  151. #define __F3_PORT_MAP_MK 0x30000000
  152. #define __F3_PORT_MAP_SH 28
  153. #define __F3_PORT_MAP(_v) ((_v) << __F3_PORT_MAP_SH)
  154. #define __F3_VM_MODE 0x08000000
  155. #define __F3_INTX_STATUS_MK 0x07000000
  156. #define __F3_INTX_STATUS_SH 24
  157. #define __F3_INTX_STATUS(_v) ((_v) << __F3_INTX_STATUS_SH)
  158. #define __F2_FUNCTION_ACTIVE 0x00800000
  159. #define __F2_FUNCTION_MODE 0x00400000
  160. #define __F2_PORT_MAP_MK 0x00300000
  161. #define __F2_PORT_MAP_SH 20
  162. #define __F2_PORT_MAP(_v) ((_v) << __F2_PORT_MAP_SH)
  163. #define __F2_VM_MODE 0x00080000
  164. #define __F2_INTX_STATUS_MK 0x00070000
  165. #define __F2_INTX_STATUS_SH 16
  166. #define __F2_INTX_STATUS(_v) ((_v) << __F2_INTX_STATUS_SH)
  167. #define __F1_FUNCTION_ACTIVE 0x00008000
  168. #define __F1_FUNCTION_MODE 0x00004000
  169. #define __F1_PORT_MAP_MK 0x00003000
  170. #define __F1_PORT_MAP_SH 12
  171. #define __F1_PORT_MAP(_v) ((_v) << __F1_PORT_MAP_SH)
  172. #define __F1_VM_MODE 0x00000800
  173. #define __F1_INTX_STATUS_MK 0x00000700
  174. #define __F1_INTX_STATUS_SH 8
  175. #define __F1_INTX_STATUS(_v) ((_v) << __F1_INTX_STATUS_SH)
  176. #define __F0_FUNCTION_ACTIVE 0x00000080
  177. #define __F0_FUNCTION_MODE 0x00000040
  178. #define __F0_PORT_MAP_MK 0x00000030
  179. #define __F0_PORT_MAP_SH 4
  180. #define __F0_PORT_MAP(_v) ((_v) << __F0_PORT_MAP_SH)
  181. #define __F0_VM_MODE 0x00000008
  182. #define __F0_INTX_STATUS 0x00000007
  183. enum {
  184. __F0_INTX_STATUS_MSIX = 0x0,
  185. __F0_INTX_STATUS_INTA = 0x1,
  186. __F0_INTX_STATUS_INTB = 0x2,
  187. __F0_INTX_STATUS_INTC = 0x3,
  188. __F0_INTX_STATUS_INTD = 0x4,
  189. };
  190. #define OP_MODE 0x0001460c
  191. #define __APP_ETH_CLK_LOWSPEED 0x00000004
  192. #define __GLOBAL_CORECLK_HALFSPEED 0x00000002
  193. #define __GLOBAL_FCOE_MODE 0x00000001
  194. #define HOST_SEM4_REG 0x00014610
  195. #define HOST_SEM5_REG 0x00014614
  196. #define HOST_SEM6_REG 0x00014618
  197. #define HOST_SEM7_REG 0x0001461c
  198. #define HOST_SEM4_INFO_REG 0x00014620
  199. #define HOST_SEM5_INFO_REG 0x00014624
  200. #define HOST_SEM6_INFO_REG 0x00014628
  201. #define HOST_SEM7_INFO_REG 0x0001462c
  202. #define HOSTFN0_LPU0_MBOX0_CMD_STAT 0x00019000
  203. #define __HOSTFN0_LPU0_MBOX0_INFO_MK 0xfffffffe
  204. #define __HOSTFN0_LPU0_MBOX0_INFO_SH 1
  205. #define __HOSTFN0_LPU0_MBOX0_INFO(_v) ((_v) << __HOSTFN0_LPU0_MBOX0_INFO_SH)
  206. #define __HOSTFN0_LPU0_MBOX0_CMD_STATUS 0x00000001
  207. #define HOSTFN0_LPU1_MBOX0_CMD_STAT 0x00019004
  208. #define __HOSTFN0_LPU1_MBOX0_INFO_MK 0xfffffffe
  209. #define __HOSTFN0_LPU1_MBOX0_INFO_SH 1
  210. #define __HOSTFN0_LPU1_MBOX0_INFO(_v) ((_v) << __HOSTFN0_LPU1_MBOX0_INFO_SH)
  211. #define __HOSTFN0_LPU1_MBOX0_CMD_STATUS 0x00000001
  212. #define LPU0_HOSTFN0_MBOX0_CMD_STAT 0x00019008
  213. #define __LPU0_HOSTFN0_MBOX0_INFO_MK 0xfffffffe
  214. #define __LPU0_HOSTFN0_MBOX0_INFO_SH 1
  215. #define __LPU0_HOSTFN0_MBOX0_INFO(_v) ((_v) << __LPU0_HOSTFN0_MBOX0_INFO_SH)
  216. #define __LPU0_HOSTFN0_MBOX0_CMD_STATUS 0x00000001
  217. #define LPU1_HOSTFN0_MBOX0_CMD_STAT 0x0001900c
  218. #define __LPU1_HOSTFN0_MBOX0_INFO_MK 0xfffffffe
  219. #define __LPU1_HOSTFN0_MBOX0_INFO_SH 1
  220. #define __LPU1_HOSTFN0_MBOX0_INFO(_v) ((_v) << __LPU1_HOSTFN0_MBOX0_INFO_SH)
  221. #define __LPU1_HOSTFN0_MBOX0_CMD_STATUS 0x00000001
  222. #define HOSTFN1_LPU0_MBOX0_CMD_STAT 0x00019010
  223. #define __HOSTFN1_LPU0_MBOX0_INFO_MK 0xfffffffe
  224. #define __HOSTFN1_LPU0_MBOX0_INFO_SH 1
  225. #define __HOSTFN1_LPU0_MBOX0_INFO(_v) ((_v) << __HOSTFN1_LPU0_MBOX0_INFO_SH)
  226. #define __HOSTFN1_LPU0_MBOX0_CMD_STATUS 0x00000001
  227. #define HOSTFN1_LPU1_MBOX0_CMD_STAT 0x00019014
  228. #define __HOSTFN1_LPU1_MBOX0_INFO_MK 0xfffffffe
  229. #define __HOSTFN1_LPU1_MBOX0_INFO_SH 1
  230. #define __HOSTFN1_LPU1_MBOX0_INFO(_v) ((_v) << __HOSTFN1_LPU1_MBOX0_INFO_SH)
  231. #define __HOSTFN1_LPU1_MBOX0_CMD_STATUS 0x00000001
  232. #define LPU0_HOSTFN1_MBOX0_CMD_STAT 0x00019018
  233. #define __LPU0_HOSTFN1_MBOX0_INFO_MK 0xfffffffe
  234. #define __LPU0_HOSTFN1_MBOX0_INFO_SH 1
  235. #define __LPU0_HOSTFN1_MBOX0_INFO(_v) ((_v) << __LPU0_HOSTFN1_MBOX0_INFO_SH)
  236. #define __LPU0_HOSTFN1_MBOX0_CMD_STATUS 0x00000001
  237. #define LPU1_HOSTFN1_MBOX0_CMD_STAT 0x0001901c
  238. #define __LPU1_HOSTFN1_MBOX0_INFO_MK 0xfffffffe
  239. #define __LPU1_HOSTFN1_MBOX0_INFO_SH 1
  240. #define __LPU1_HOSTFN1_MBOX0_INFO(_v) ((_v) << __LPU1_HOSTFN1_MBOX0_INFO_SH)
  241. #define __LPU1_HOSTFN1_MBOX0_CMD_STATUS 0x00000001
  242. #define HOSTFN2_LPU0_MBOX0_CMD_STAT 0x00019150
  243. #define __HOSTFN2_LPU0_MBOX0_INFO_MK 0xfffffffe
  244. #define __HOSTFN2_LPU0_MBOX0_INFO_SH 1
  245. #define __HOSTFN2_LPU0_MBOX0_INFO(_v) ((_v) << __HOSTFN2_LPU0_MBOX0_INFO_SH)
  246. #define __HOSTFN2_LPU0_MBOX0_CMD_STATUS 0x00000001
  247. #define HOSTFN2_LPU1_MBOX0_CMD_STAT 0x00019154
  248. #define __HOSTFN2_LPU1_MBOX0_INFO_MK 0xfffffffe
  249. #define __HOSTFN2_LPU1_MBOX0_INFO_SH 1
  250. #define __HOSTFN2_LPU1_MBOX0_INFO(_v) ((_v) << __HOSTFN2_LPU1_MBOX0_INFO_SH)
  251. #define __HOSTFN2_LPU1_MBOX0BOX0_CMD_STATUS 0x00000001
  252. #define LPU0_HOSTFN2_MBOX0_CMD_STAT 0x00019158
  253. #define __LPU0_HOSTFN2_MBOX0_INFO_MK 0xfffffffe
  254. #define __LPU0_HOSTFN2_MBOX0_INFO_SH 1
  255. #define __LPU0_HOSTFN2_MBOX0_INFO(_v) ((_v) << __LPU0_HOSTFN2_MBOX0_INFO_SH)
  256. #define __LPU0_HOSTFN2_MBOX0_CMD_STATUS 0x00000001
  257. #define LPU1_HOSTFN2_MBOX0_CMD_STAT 0x0001915c
  258. #define __LPU1_HOSTFN2_MBOX0_INFO_MK 0xfffffffe
  259. #define __LPU1_HOSTFN2_MBOX0_INFO_SH 1
  260. #define __LPU1_HOSTFN2_MBOX0_INFO(_v) ((_v) << __LPU1_HOSTFN2_MBOX0_INFO_SH)
  261. #define __LPU1_HOSTFN2_MBOX0_CMD_STATUS 0x00000001
  262. #define HOSTFN3_LPU0_MBOX0_CMD_STAT 0x00019160
  263. #define __HOSTFN3_LPU0_MBOX0_INFO_MK 0xfffffffe
  264. #define __HOSTFN3_LPU0_MBOX0_INFO_SH 1
  265. #define __HOSTFN3_LPU0_MBOX0_INFO(_v) ((_v) << __HOSTFN3_LPU0_MBOX0_INFO_SH)
  266. #define __HOSTFN3_LPU0_MBOX0_CMD_STATUS 0x00000001
  267. #define HOSTFN3_LPU1_MBOX0_CMD_STAT 0x00019164
  268. #define __HOSTFN3_LPU1_MBOX0_INFO_MK 0xfffffffe
  269. #define __HOSTFN3_LPU1_MBOX0_INFO_SH 1
  270. #define __HOSTFN3_LPU1_MBOX0_INFO(_v) ((_v) << __HOSTFN3_LPU1_MBOX0_INFO_SH)
  271. #define __HOSTFN3_LPU1_MBOX0_CMD_STATUS 0x00000001
  272. #define LPU0_HOSTFN3_MBOX0_CMD_STAT 0x00019168
  273. #define __LPU0_HOSTFN3_MBOX0_INFO_MK 0xfffffffe
  274. #define __LPU0_HOSTFN3_MBOX0_INFO_SH 1
  275. #define __LPU0_HOSTFN3_MBOX0_INFO(_v) ((_v) << __LPU0_HOSTFN3_MBOX0_INFO_SH)
  276. #define __LPU0_HOSTFN3_MBOX0_CMD_STATUS 0x00000001
  277. #define LPU1_HOSTFN3_MBOX0_CMD_STAT 0x0001916c
  278. #define __LPU1_HOSTFN3_MBOX0_INFO_MK 0xfffffffe
  279. #define __LPU1_HOSTFN3_MBOX0_INFO_SH 1
  280. #define __LPU1_HOSTFN3_MBOX0_INFO(_v) ((_v) << __LPU1_HOSTFN3_MBOX0_INFO_SH)
  281. #define __LPU1_HOSTFN3_MBOX0_CMD_STATUS 0x00000001
  282. #define FW_INIT_HALT_P0 0x000191ac
  283. #define __FW_INIT_HALT_P 0x00000001
  284. #define FW_INIT_HALT_P1 0x000191bc
  285. #define CPE_PI_PTR_Q0 0x00038000
  286. #define __CPE_PI_UNUSED_MK 0xffff0000
  287. #define __CPE_PI_UNUSED_SH 16
  288. #define __CPE_PI_UNUSED(_v) ((_v) << __CPE_PI_UNUSED_SH)
  289. #define __CPE_PI_PTR 0x0000ffff
  290. #define CPE_PI_PTR_Q1 0x00038040
  291. #define CPE_CI_PTR_Q0 0x00038004
  292. #define __CPE_CI_UNUSED_MK 0xffff0000
  293. #define __CPE_CI_UNUSED_SH 16
  294. #define __CPE_CI_UNUSED(_v) ((_v) << __CPE_CI_UNUSED_SH)
  295. #define __CPE_CI_PTR 0x0000ffff
  296. #define CPE_CI_PTR_Q1 0x00038044
  297. #define CPE_DEPTH_Q0 0x00038008
  298. #define __CPE_DEPTH_UNUSED_MK 0xf8000000
  299. #define __CPE_DEPTH_UNUSED_SH 27
  300. #define __CPE_DEPTH_UNUSED(_v) ((_v) << __CPE_DEPTH_UNUSED_SH)
  301. #define __CPE_MSIX_VEC_INDEX_MK 0x07ff0000
  302. #define __CPE_MSIX_VEC_INDEX_SH 16
  303. #define __CPE_MSIX_VEC_INDEX(_v) ((_v) << __CPE_MSIX_VEC_INDEX_SH)
  304. #define __CPE_DEPTH 0x0000ffff
  305. #define CPE_DEPTH_Q1 0x00038048
  306. #define CPE_QCTRL_Q0 0x0003800c
  307. #define __CPE_CTRL_UNUSED30_MK 0xfc000000
  308. #define __CPE_CTRL_UNUSED30_SH 26
  309. #define __CPE_CTRL_UNUSED30(_v) ((_v) << __CPE_CTRL_UNUSED30_SH)
  310. #define __CPE_FUNC_INT_CTRL_MK 0x03000000
  311. #define __CPE_FUNC_INT_CTRL_SH 24
  312. #define __CPE_FUNC_INT_CTRL(_v) ((_v) << __CPE_FUNC_INT_CTRL_SH)
  313. enum {
  314. __CPE_FUNC_INT_CTRL_DISABLE = 0x0,
  315. __CPE_FUNC_INT_CTRL_F2NF = 0x1,
  316. __CPE_FUNC_INT_CTRL_3QUART = 0x2,
  317. __CPE_FUNC_INT_CTRL_HALF = 0x3,
  318. };
  319. #define __CPE_CTRL_UNUSED20_MK 0x00f00000
  320. #define __CPE_CTRL_UNUSED20_SH 20
  321. #define __CPE_CTRL_UNUSED20(_v) ((_v) << __CPE_CTRL_UNUSED20_SH)
  322. #define __CPE_SCI_TH_MK 0x000f0000
  323. #define __CPE_SCI_TH_SH 16
  324. #define __CPE_SCI_TH(_v) ((_v) << __CPE_SCI_TH_SH)
  325. #define __CPE_CTRL_UNUSED10_MK 0x0000c000
  326. #define __CPE_CTRL_UNUSED10_SH 14
  327. #define __CPE_CTRL_UNUSED10(_v) ((_v) << __CPE_CTRL_UNUSED10_SH)
  328. #define __CPE_ACK_PENDING 0x00002000
  329. #define __CPE_CTRL_UNUSED40_MK 0x00001c00
  330. #define __CPE_CTRL_UNUSED40_SH 10
  331. #define __CPE_CTRL_UNUSED40(_v) ((_v) << __CPE_CTRL_UNUSED40_SH)
  332. #define __CPE_PCIEID_MK 0x00000300
  333. #define __CPE_PCIEID_SH 8
  334. #define __CPE_PCIEID(_v) ((_v) << __CPE_PCIEID_SH)
  335. #define __CPE_CTRL_UNUSED00_MK 0x000000fe
  336. #define __CPE_CTRL_UNUSED00_SH 1
  337. #define __CPE_CTRL_UNUSED00(_v) ((_v) << __CPE_CTRL_UNUSED00_SH)
  338. #define __CPE_ESIZE 0x00000001
  339. #define CPE_QCTRL_Q1 0x0003804c
  340. #define __CPE_CTRL_UNUSED31_MK 0xfc000000
  341. #define __CPE_CTRL_UNUSED31_SH 26
  342. #define __CPE_CTRL_UNUSED31(_v) ((_v) << __CPE_CTRL_UNUSED31_SH)
  343. #define __CPE_CTRL_UNUSED21_MK 0x00f00000
  344. #define __CPE_CTRL_UNUSED21_SH 20
  345. #define __CPE_CTRL_UNUSED21(_v) ((_v) << __CPE_CTRL_UNUSED21_SH)
  346. #define __CPE_CTRL_UNUSED11_MK 0x0000c000
  347. #define __CPE_CTRL_UNUSED11_SH 14
  348. #define __CPE_CTRL_UNUSED11(_v) ((_v) << __CPE_CTRL_UNUSED11_SH)
  349. #define __CPE_CTRL_UNUSED41_MK 0x00001c00
  350. #define __CPE_CTRL_UNUSED41_SH 10
  351. #define __CPE_CTRL_UNUSED41(_v) ((_v) << __CPE_CTRL_UNUSED41_SH)
  352. #define __CPE_CTRL_UNUSED01_MK 0x000000fe
  353. #define __CPE_CTRL_UNUSED01_SH 1
  354. #define __CPE_CTRL_UNUSED01(_v) ((_v) << __CPE_CTRL_UNUSED01_SH)
  355. #define RME_PI_PTR_Q0 0x00038020
  356. #define __LATENCY_TIME_STAMP_MK 0xffff0000
  357. #define __LATENCY_TIME_STAMP_SH 16
  358. #define __LATENCY_TIME_STAMP(_v) ((_v) << __LATENCY_TIME_STAMP_SH)
  359. #define __RME_PI_PTR 0x0000ffff
  360. #define RME_PI_PTR_Q1 0x00038060
  361. #define RME_CI_PTR_Q0 0x00038024
  362. #define __DELAY_TIME_STAMP_MK 0xffff0000
  363. #define __DELAY_TIME_STAMP_SH 16
  364. #define __DELAY_TIME_STAMP(_v) ((_v) << __DELAY_TIME_STAMP_SH)
  365. #define __RME_CI_PTR 0x0000ffff
  366. #define RME_CI_PTR_Q1 0x00038064
  367. #define RME_DEPTH_Q0 0x00038028
  368. #define __RME_DEPTH_UNUSED_MK 0xf8000000
  369. #define __RME_DEPTH_UNUSED_SH 27
  370. #define __RME_DEPTH_UNUSED(_v) ((_v) << __RME_DEPTH_UNUSED_SH)
  371. #define __RME_MSIX_VEC_INDEX_MK 0x07ff0000
  372. #define __RME_MSIX_VEC_INDEX_SH 16
  373. #define __RME_MSIX_VEC_INDEX(_v) ((_v) << __RME_MSIX_VEC_INDEX_SH)
  374. #define __RME_DEPTH 0x0000ffff
  375. #define RME_DEPTH_Q1 0x00038068
  376. #define RME_QCTRL_Q0 0x0003802c
  377. #define __RME_INT_LATENCY_TIMER_MK 0xff000000
  378. #define __RME_INT_LATENCY_TIMER_SH 24
  379. #define __RME_INT_LATENCY_TIMER(_v) ((_v) << __RME_INT_LATENCY_TIMER_SH)
  380. #define __RME_INT_DELAY_TIMER_MK 0x00ff0000
  381. #define __RME_INT_DELAY_TIMER_SH 16
  382. #define __RME_INT_DELAY_TIMER(_v) ((_v) << __RME_INT_DELAY_TIMER_SH)
  383. #define __RME_INT_DELAY_DISABLE 0x00008000
  384. #define __RME_DLY_DELAY_DISABLE 0x00004000
  385. #define __RME_ACK_PENDING 0x00002000
  386. #define __RME_FULL_INTERRUPT_DISABLE 0x00001000
  387. #define __RME_CTRL_UNUSED10_MK 0x00000c00
  388. #define __RME_CTRL_UNUSED10_SH 10
  389. #define __RME_CTRL_UNUSED10(_v) ((_v) << __RME_CTRL_UNUSED10_SH)
  390. #define __RME_PCIEID_MK 0x00000300
  391. #define __RME_PCIEID_SH 8
  392. #define __RME_PCIEID(_v) ((_v) << __RME_PCIEID_SH)
  393. #define __RME_CTRL_UNUSED00_MK 0x000000fe
  394. #define __RME_CTRL_UNUSED00_SH 1
  395. #define __RME_CTRL_UNUSED00(_v) ((_v) << __RME_CTRL_UNUSED00_SH)
  396. #define __RME_ESIZE 0x00000001
  397. #define RME_QCTRL_Q1 0x0003806c
  398. #define __RME_CTRL_UNUSED11_MK 0x00000c00
  399. #define __RME_CTRL_UNUSED11_SH 10
  400. #define __RME_CTRL_UNUSED11(_v) ((_v) << __RME_CTRL_UNUSED11_SH)
  401. #define __RME_CTRL_UNUSED01_MK 0x000000fe
  402. #define __RME_CTRL_UNUSED01_SH 1
  403. #define __RME_CTRL_UNUSED01(_v) ((_v) << __RME_CTRL_UNUSED01_SH)
  404. #define PSS_CTL_REG 0x00018800
  405. #define __PSS_I2C_CLK_DIV_MK 0x007f0000
  406. #define __PSS_I2C_CLK_DIV_SH 16
  407. #define __PSS_I2C_CLK_DIV(_v) ((_v) << __PSS_I2C_CLK_DIV_SH)
  408. #define __PSS_LMEM_INIT_DONE 0x00001000
  409. #define __PSS_LMEM_RESET 0x00000200
  410. #define __PSS_LMEM_INIT_EN 0x00000100
  411. #define __PSS_LPU1_RESET 0x00000002
  412. #define __PSS_LPU0_RESET 0x00000001
  413. #define PSS_ERR_STATUS_REG 0x00018810
  414. #define __PSS_LPU1_TCM_READ_ERR 0x00200000
  415. #define __PSS_LPU0_TCM_READ_ERR 0x00100000
  416. #define __PSS_LMEM5_CORR_ERR 0x00080000
  417. #define __PSS_LMEM4_CORR_ERR 0x00040000
  418. #define __PSS_LMEM3_CORR_ERR 0x00020000
  419. #define __PSS_LMEM2_CORR_ERR 0x00010000
  420. #define __PSS_LMEM1_CORR_ERR 0x00008000
  421. #define __PSS_LMEM0_CORR_ERR 0x00004000
  422. #define __PSS_LMEM5_UNCORR_ERR 0x00002000
  423. #define __PSS_LMEM4_UNCORR_ERR 0x00001000
  424. #define __PSS_LMEM3_UNCORR_ERR 0x00000800
  425. #define __PSS_LMEM2_UNCORR_ERR 0x00000400
  426. #define __PSS_LMEM1_UNCORR_ERR 0x00000200
  427. #define __PSS_LMEM0_UNCORR_ERR 0x00000100
  428. #define __PSS_BAL_PERR 0x00000080
  429. #define __PSS_DIP_IF_ERR 0x00000040
  430. #define __PSS_IOH_IF_ERR 0x00000020
  431. #define __PSS_TDS_IF_ERR 0x00000010
  432. #define __PSS_RDS_IF_ERR 0x00000008
  433. #define __PSS_SGM_IF_ERR 0x00000004
  434. #define __PSS_LPU1_RAM_ERR 0x00000002
  435. #define __PSS_LPU0_RAM_ERR 0x00000001
  436. #define ERR_SET_REG 0x00018818
  437. #define __PSS_ERR_STATUS_SET 0x003fffff
  438. #define PMM_1T_RESET_REG_P0 0x0002381c
  439. #define __PMM_1T_RESET_P 0x00000001
  440. #define PMM_1T_RESET_REG_P1 0x00023c1c
  441. #define HQM_QSET0_RXQ_DRBL_P0 0x00038000
  442. #define __RXQ0_ADD_VECTORS_P 0x80000000
  443. #define __RXQ0_STOP_P 0x40000000
  444. #define __RXQ0_PRD_PTR_P 0x0000ffff
  445. #define HQM_QSET1_RXQ_DRBL_P0 0x00038080
  446. #define __RXQ1_ADD_VECTORS_P 0x80000000
  447. #define __RXQ1_STOP_P 0x40000000
  448. #define __RXQ1_PRD_PTR_P 0x0000ffff
  449. #define HQM_QSET0_RXQ_DRBL_P1 0x0003c000
  450. #define HQM_QSET1_RXQ_DRBL_P1 0x0003c080
  451. #define HQM_QSET0_TXQ_DRBL_P0 0x00038020
  452. #define __TXQ0_ADD_VECTORS_P 0x80000000
  453. #define __TXQ0_STOP_P 0x40000000
  454. #define __TXQ0_PRD_PTR_P 0x0000ffff
  455. #define HQM_QSET1_TXQ_DRBL_P0 0x000380a0
  456. #define __TXQ1_ADD_VECTORS_P 0x80000000
  457. #define __TXQ1_STOP_P 0x40000000
  458. #define __TXQ1_PRD_PTR_P 0x0000ffff
  459. #define HQM_QSET0_TXQ_DRBL_P1 0x0003c020
  460. #define HQM_QSET1_TXQ_DRBL_P1 0x0003c0a0
  461. #define HQM_QSET0_IB_DRBL_1_P0 0x00038040
  462. #define __IB1_0_ACK_P 0x80000000
  463. #define __IB1_0_DISABLE_P 0x40000000
  464. #define __IB1_0_COALESCING_CFG_P_MK 0x00ff0000
  465. #define __IB1_0_COALESCING_CFG_P_SH 16
  466. #define __IB1_0_COALESCING_CFG_P(_v) ((_v) << __IB1_0_COALESCING_CFG_P_SH)
  467. #define __IB1_0_NUM_OF_ACKED_EVENTS_P 0x0000ffff
  468. #define HQM_QSET1_IB_DRBL_1_P0 0x000380c0
  469. #define __IB1_1_ACK_P 0x80000000
  470. #define __IB1_1_DISABLE_P 0x40000000
  471. #define __IB1_1_COALESCING_CFG_P_MK 0x00ff0000
  472. #define __IB1_1_COALESCING_CFG_P_SH 16
  473. #define __IB1_1_COALESCING_CFG_P(_v) ((_v) << __IB1_1_COALESCING_CFG_P_SH)
  474. #define __IB1_1_NUM_OF_ACKED_EVENTS_P 0x0000ffff
  475. #define HQM_QSET0_IB_DRBL_1_P1 0x0003c040
  476. #define HQM_QSET1_IB_DRBL_1_P1 0x0003c0c0
  477. #define HQM_QSET0_IB_DRBL_2_P0 0x00038060
  478. #define __IB2_0_ACK_P 0x80000000
  479. #define __IB2_0_DISABLE_P 0x40000000
  480. #define __IB2_0_COALESCING_CFG_P_MK 0x00ff0000
  481. #define __IB2_0_COALESCING_CFG_P_SH 16
  482. #define __IB2_0_COALESCING_CFG_P(_v) ((_v) << __IB2_0_COALESCING_CFG_P_SH)
  483. #define __IB2_0_NUM_OF_ACKED_EVENTS_P 0x0000ffff
  484. #define HQM_QSET1_IB_DRBL_2_P0 0x000380e0
  485. #define __IB2_1_ACK_P 0x80000000
  486. #define __IB2_1_DISABLE_P 0x40000000
  487. #define __IB2_1_COALESCING_CFG_P_MK 0x00ff0000
  488. #define __IB2_1_COALESCING_CFG_P_SH 16
  489. #define __IB2_1_COALESCING_CFG_P(_v) ((_v) << __IB2_1_COALESCING_CFG_P_SH)
  490. #define __IB2_1_NUM_OF_ACKED_EVENTS_P 0x0000ffff
  491. #define HQM_QSET0_IB_DRBL_2_P1 0x0003c060
  492. #define HQM_QSET1_IB_DRBL_2_P1 0x0003c0e0
  493. /*
  494. * These definitions are either in error/missing in spec. Its auto-generated
  495. * from hard coded values in regparse.pl.
  496. */
  497. #define __EMPHPOST_AT_4G_MK_FIX 0x0000001c
  498. #define __EMPHPOST_AT_4G_SH_FIX 0x00000002
  499. #define __EMPHPRE_AT_4G_FIX 0x00000003
  500. #define __SFP_TXRATE_EN_FIX 0x00000100
  501. #define __SFP_RXRATE_EN_FIX 0x00000080
  502. /*
  503. * These register definitions are auto-generated from hard coded values
  504. * in regparse.pl.
  505. */
  506. /*
  507. * These register mapping definitions are auto-generated from mapping tables
  508. * in regparse.pl.
  509. */
  510. #define BFA_IOC0_HBEAT_REG HOST_SEM0_INFO_REG
  511. #define BFA_IOC0_STATE_REG HOST_SEM1_INFO_REG
  512. #define BFA_IOC1_HBEAT_REG HOST_SEM2_INFO_REG
  513. #define BFA_IOC1_STATE_REG HOST_SEM3_INFO_REG
  514. #define BFA_FW_USE_COUNT HOST_SEM4_INFO_REG
  515. #define BFA_IOC_FAIL_SYNC HOST_SEM5_INFO_REG
  516. #define CPE_DEPTH_Q(__n) \
  517. (CPE_DEPTH_Q0 + (__n) * (CPE_DEPTH_Q1 - CPE_DEPTH_Q0))
  518. #define CPE_QCTRL_Q(__n) \
  519. (CPE_QCTRL_Q0 + (__n) * (CPE_QCTRL_Q1 - CPE_QCTRL_Q0))
  520. #define CPE_PI_PTR_Q(__n) \
  521. (CPE_PI_PTR_Q0 + (__n) * (CPE_PI_PTR_Q1 - CPE_PI_PTR_Q0))
  522. #define CPE_CI_PTR_Q(__n) \
  523. (CPE_CI_PTR_Q0 + (__n) * (CPE_CI_PTR_Q1 - CPE_CI_PTR_Q0))
  524. #define RME_DEPTH_Q(__n) \
  525. (RME_DEPTH_Q0 + (__n) * (RME_DEPTH_Q1 - RME_DEPTH_Q0))
  526. #define RME_QCTRL_Q(__n) \
  527. (RME_QCTRL_Q0 + (__n) * (RME_QCTRL_Q1 - RME_QCTRL_Q0))
  528. #define RME_PI_PTR_Q(__n) \
  529. (RME_PI_PTR_Q0 + (__n) * (RME_PI_PTR_Q1 - RME_PI_PTR_Q0))
  530. #define RME_CI_PTR_Q(__n) \
  531. (RME_CI_PTR_Q0 + (__n) * (RME_CI_PTR_Q1 - RME_CI_PTR_Q0))
  532. #define HQM_QSET_RXQ_DRBL_P0(__n) \
  533. (HQM_QSET0_RXQ_DRBL_P0 + (__n) * \
  534. (HQM_QSET1_RXQ_DRBL_P0 - HQM_QSET0_RXQ_DRBL_P0))
  535. #define HQM_QSET_TXQ_DRBL_P0(__n) \
  536. (HQM_QSET0_TXQ_DRBL_P0 + (__n) * \
  537. (HQM_QSET1_TXQ_DRBL_P0 - HQM_QSET0_TXQ_DRBL_P0))
  538. #define HQM_QSET_IB_DRBL_1_P0(__n) \
  539. (HQM_QSET0_IB_DRBL_1_P0 + (__n) * \
  540. (HQM_QSET1_IB_DRBL_1_P0 - HQM_QSET0_IB_DRBL_1_P0))
  541. #define HQM_QSET_IB_DRBL_2_P0(__n) \
  542. (HQM_QSET0_IB_DRBL_2_P0 + (__n) * \
  543. (HQM_QSET1_IB_DRBL_2_P0 - HQM_QSET0_IB_DRBL_2_P0))
  544. #define HQM_QSET_RXQ_DRBL_P1(__n) \
  545. (HQM_QSET0_RXQ_DRBL_P1 + (__n) * \
  546. (HQM_QSET1_RXQ_DRBL_P1 - HQM_QSET0_RXQ_DRBL_P1))
  547. #define HQM_QSET_TXQ_DRBL_P1(__n) \
  548. (HQM_QSET0_TXQ_DRBL_P1 + (__n) * \
  549. (HQM_QSET1_TXQ_DRBL_P1 - HQM_QSET0_TXQ_DRBL_P1))
  550. #define HQM_QSET_IB_DRBL_1_P1(__n) \
  551. (HQM_QSET0_IB_DRBL_1_P1 + (__n) * \
  552. (HQM_QSET1_IB_DRBL_1_P1 - HQM_QSET0_IB_DRBL_1_P1))
  553. #define HQM_QSET_IB_DRBL_2_P1(__n) \
  554. (HQM_QSET0_IB_DRBL_2_P1 + (__n) * \
  555. (HQM_QSET1_IB_DRBL_2_P1 - HQM_QSET0_IB_DRBL_2_P1))
  556. #define CPE_Q_NUM(__fn, __q) (((__fn) << 2) + (__q))
  557. #define RME_Q_NUM(__fn, __q) (((__fn) << 2) + (__q))
  558. #define CPE_Q_MASK(__q) ((__q) & 0x3)
  559. #define RME_Q_MASK(__q) ((__q) & 0x3)
  560. /*
  561. * PCI MSI-X vector defines
  562. */
  563. enum {
  564. BFA_MSIX_CPE_Q0 = 0,
  565. BFA_MSIX_CPE_Q1 = 1,
  566. BFA_MSIX_CPE_Q2 = 2,
  567. BFA_MSIX_CPE_Q3 = 3,
  568. BFA_MSIX_RME_Q0 = 4,
  569. BFA_MSIX_RME_Q1 = 5,
  570. BFA_MSIX_RME_Q2 = 6,
  571. BFA_MSIX_RME_Q3 = 7,
  572. BFA_MSIX_LPU_ERR = 8,
  573. BFA_MSIX_CT_MAX = 9,
  574. };
  575. /*
  576. * And corresponding host interrupt status bit field defines
  577. */
  578. #define __HFN_INT_CPE_Q0 0x00000001U
  579. #define __HFN_INT_CPE_Q1 0x00000002U
  580. #define __HFN_INT_CPE_Q2 0x00000004U
  581. #define __HFN_INT_CPE_Q3 0x00000008U
  582. #define __HFN_INT_CPE_Q4 0x00000010U
  583. #define __HFN_INT_CPE_Q5 0x00000020U
  584. #define __HFN_INT_CPE_Q6 0x00000040U
  585. #define __HFN_INT_CPE_Q7 0x00000080U
  586. #define __HFN_INT_RME_Q0 0x00000100U
  587. #define __HFN_INT_RME_Q1 0x00000200U
  588. #define __HFN_INT_RME_Q2 0x00000400U
  589. #define __HFN_INT_RME_Q3 0x00000800U
  590. #define __HFN_INT_RME_Q4 0x00001000U
  591. #define __HFN_INT_RME_Q5 0x00002000U
  592. #define __HFN_INT_RME_Q6 0x00004000U
  593. #define __HFN_INT_RME_Q7 0x00008000U
  594. #define __HFN_INT_ERR_EMC 0x00010000U
  595. #define __HFN_INT_ERR_LPU0 0x00020000U
  596. #define __HFN_INT_ERR_LPU1 0x00040000U
  597. #define __HFN_INT_ERR_PSS 0x00080000U
  598. #define __HFN_INT_MBOX_LPU0 0x00100000U
  599. #define __HFN_INT_MBOX_LPU1 0x00200000U
  600. #define __HFN_INT_MBOX1_LPU0 0x00400000U
  601. #define __HFN_INT_MBOX1_LPU1 0x00800000U
  602. #define __HFN_INT_LL_HALT 0x01000000U
  603. #define __HFN_INT_CPE_MASK 0x000000ffU
  604. #define __HFN_INT_RME_MASK 0x0000ff00U
  605. /*
  606. * catapult memory map.
  607. */
  608. #define LL_PGN_HQM0 0x0096
  609. #define LL_PGN_HQM1 0x0097
  610. #define PSS_SMEM_PAGE_START 0x8000
  611. #define PSS_SMEM_PGNUM(_pg0, _ma) ((_pg0) + ((_ma) >> 15))
  612. #define PSS_SMEM_PGOFF(_ma) ((_ma) & 0x7fff)
  613. /*
  614. * End of catapult memory map
  615. */
  616. #endif /* __BFI_CTREG_H__ */