You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

qib_7220_regs.h 51KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762
  1. /*
  2. * Copyright (c) 2008, 2009 QLogic Corporation. All rights reserved.
  3. *
  4. *
  5. * This software is available to you under a choice of one of two
  6. * licenses. You may choose to be licensed under the terms of the GNU
  7. * General Public License (GPL) Version 2, available from the file
  8. * COPYING in the main directory of this source tree, or the
  9. * OpenIB.org BSD license below:
  10. *
  11. * Redistribution and use in source and binary forms, with or
  12. * without modification, are permitted provided that the following
  13. * conditions are met:
  14. *
  15. * - Redistributions of source code must retain the above
  16. * copyright notice, this list of conditions and the following
  17. * disclaimer.
  18. *
  19. * - Redistributions in binary form must reproduce the above
  20. * copyright notice, this list of conditions and the following
  21. * disclaimer in the documentation and/or other materials
  22. * provided with the distribution.
  23. *
  24. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  25. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  26. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  27. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
  28. * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
  29. * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  30. * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  31. * SOFTWARE.
  32. *
  33. */
  34. /* This file is mechanically generated from RTL. Any hand-edits will be lost! */
  35. /* This file has been further processed by ./drivers/infiniband/qib_genbits.pl */
  36. FILE_LICENCE ( GPL2_ONLY );
  37. #define QIB_7220_Revision_offset 0x00000000UL
  38. struct QIB_7220_Revision_pb {
  39. pseudo_bit_t R_ChipRevMinor[8];
  40. pseudo_bit_t R_ChipRevMajor[8];
  41. pseudo_bit_t R_Arch[8];
  42. pseudo_bit_t R_SW[8];
  43. pseudo_bit_t BoardID[8];
  44. pseudo_bit_t R_Emulation_Revcode[22];
  45. pseudo_bit_t R_Emulation[1];
  46. pseudo_bit_t R_Simulator[1];
  47. };
  48. struct QIB_7220_Revision {
  49. PSEUDO_BIT_STRUCT ( struct QIB_7220_Revision_pb );
  50. };
  51. #define QIB_7220_Control_offset 0x00000008UL
  52. struct QIB_7220_Control_pb {
  53. pseudo_bit_t SyncReset[1];
  54. pseudo_bit_t FreezeMode[1];
  55. pseudo_bit_t LinkEn[1];
  56. pseudo_bit_t PCIERetryBufDiagEn[1];
  57. pseudo_bit_t TxLatency[1];
  58. pseudo_bit_t Reserved[1];
  59. pseudo_bit_t PCIECplQDiagEn[1];
  60. pseudo_bit_t SyncResetExceptPcieIRAMRST[1];
  61. pseudo_bit_t _unused_0[56];
  62. };
  63. struct QIB_7220_Control {
  64. PSEUDO_BIT_STRUCT ( struct QIB_7220_Control_pb );
  65. };
  66. #define QIB_7220_PageAlign_offset 0x00000010UL
  67. #define QIB_7220_PortCnt_offset 0x00000018UL
  68. #define QIB_7220_DbgPortSel_offset 0x00000020UL
  69. struct QIB_7220_DbgPortSel_pb {
  70. pseudo_bit_t NibbleSel0[4];
  71. pseudo_bit_t NibbleSel1[4];
  72. pseudo_bit_t NibbleSel2[4];
  73. pseudo_bit_t NibbleSel3[4];
  74. pseudo_bit_t NibbleSel4[4];
  75. pseudo_bit_t NibbleSel5[4];
  76. pseudo_bit_t NibbleSel6[4];
  77. pseudo_bit_t NibbleSel7[4];
  78. pseudo_bit_t SrcMuxSel[14];
  79. pseudo_bit_t DbgClkPortSel[5];
  80. pseudo_bit_t EnDbgPort[1];
  81. pseudo_bit_t EnEnhancedDebugMode[1];
  82. pseudo_bit_t EnhMode_SrcMuxSelIndex[10];
  83. pseudo_bit_t EnhMode_SrcMuxSelWrEn[1];
  84. };
  85. struct QIB_7220_DbgPortSel {
  86. PSEUDO_BIT_STRUCT ( struct QIB_7220_DbgPortSel_pb );
  87. };
  88. #define QIB_7220_DebugSigsIntSel_offset 0x00000028UL
  89. struct QIB_7220_DebugSigsIntSel_pb {
  90. pseudo_bit_t debug_port_sel_pcs_pipe_lane07[3];
  91. pseudo_bit_t debug_port_sel_pcs_pipe_lane815[3];
  92. pseudo_bit_t debug_port_sel_pcs_sdout[1];
  93. pseudo_bit_t debug_port_sel_pcs_symlock_elfifo_lane[4];
  94. pseudo_bit_t debug_port_sel_pcs_rxdet_encdec_lane[4];
  95. pseudo_bit_t debug_port_sel_pcie_rx_tx[1];
  96. pseudo_bit_t debug_port_sel_xgxs[4];
  97. pseudo_bit_t debug_port_sel_epb_pcie[1];
  98. pseudo_bit_t _unused_0[43];
  99. };
  100. struct QIB_7220_DebugSigsIntSel {
  101. PSEUDO_BIT_STRUCT ( struct QIB_7220_DebugSigsIntSel_pb );
  102. };
  103. #define QIB_7220_SendRegBase_offset 0x00000030UL
  104. #define QIB_7220_UserRegBase_offset 0x00000038UL
  105. #define QIB_7220_CntrRegBase_offset 0x00000040UL
  106. #define QIB_7220_Scratch_offset 0x00000048UL
  107. #define QIB_7220_REG_000050_offset 0x00000050UL
  108. #define QIB_7220_IntBlocked_offset 0x00000060UL
  109. struct QIB_7220_IntBlocked_pb {
  110. pseudo_bit_t RcvAvail0IntBlocked[1];
  111. pseudo_bit_t RcvAvail1IntBlocked[1];
  112. pseudo_bit_t RcvAvail2IntBlocked[1];
  113. pseudo_bit_t RcvAvail3IntBlocked[1];
  114. pseudo_bit_t RcvAvail4IntBlocked[1];
  115. pseudo_bit_t RcvAvail5IntBlocked[1];
  116. pseudo_bit_t RcvAvail6IntBlocked[1];
  117. pseudo_bit_t RcvAvail7IntBlocked[1];
  118. pseudo_bit_t RcvAvail8IntBlocked[1];
  119. pseudo_bit_t RcvAvail9IntBlocked[1];
  120. pseudo_bit_t RcvAvail10IntBlocked[1];
  121. pseudo_bit_t RcvAvail11IntBlocked[1];
  122. pseudo_bit_t RcvAvail12IntBlocked[1];
  123. pseudo_bit_t RcvAvail13IntBlocked[1];
  124. pseudo_bit_t RcvAvail14IntBlocked[1];
  125. pseudo_bit_t RcvAvail15IntBlocked[1];
  126. pseudo_bit_t RcvAvail16IntBlocked[1];
  127. pseudo_bit_t Reserved1[9];
  128. pseudo_bit_t JIntBlocked[1];
  129. pseudo_bit_t IBSerdesTrimDoneIntBlocked[1];
  130. pseudo_bit_t assertGPIOIntBlocked[1];
  131. pseudo_bit_t PioBufAvailIntBlocked[1];
  132. pseudo_bit_t PioSetIntBlocked[1];
  133. pseudo_bit_t ErrorIntBlocked[1];
  134. pseudo_bit_t RcvUrg0IntBlocked[1];
  135. pseudo_bit_t RcvUrg1IntBlocked[1];
  136. pseudo_bit_t RcvUrg2IntBlocked[1];
  137. pseudo_bit_t RcvUrg3IntBlocked[1];
  138. pseudo_bit_t RcvUrg4IntBlocked[1];
  139. pseudo_bit_t RcvUrg5IntBlocked[1];
  140. pseudo_bit_t RcvUrg6IntBlocked[1];
  141. pseudo_bit_t RcvUrg7IntBlocked[1];
  142. pseudo_bit_t RcvUrg8IntBlocked[1];
  143. pseudo_bit_t RcvUrg9IntBlocked[1];
  144. pseudo_bit_t RcvUrg10IntBlocked[1];
  145. pseudo_bit_t RcvUrg11IntBlocked[1];
  146. pseudo_bit_t RcvUrg12IntBlocked[1];
  147. pseudo_bit_t RcvUrg13IntBlocked[1];
  148. pseudo_bit_t RcvUrg14IntBlocked[1];
  149. pseudo_bit_t RcvUrg15IntBlocked[1];
  150. pseudo_bit_t RcvUrg16IntBlocked[1];
  151. pseudo_bit_t Reserved[13];
  152. pseudo_bit_t SDmaDisabledBlocked[1];
  153. pseudo_bit_t SDmaIntBlocked[1];
  154. };
  155. struct QIB_7220_IntBlocked {
  156. PSEUDO_BIT_STRUCT ( struct QIB_7220_IntBlocked_pb );
  157. };
  158. #define QIB_7220_IntMask_offset 0x00000068UL
  159. struct QIB_7220_IntMask_pb {
  160. pseudo_bit_t RcvAvail0IntMask[1];
  161. pseudo_bit_t RcvAvail1IntMask[1];
  162. pseudo_bit_t RcvAvail2IntMask[1];
  163. pseudo_bit_t RcvAvail3IntMask[1];
  164. pseudo_bit_t RcvAvail4IntMask[1];
  165. pseudo_bit_t RcvAvail5IntMask[1];
  166. pseudo_bit_t RcvAvail6IntMask[1];
  167. pseudo_bit_t RcvAvail7IntMask[1];
  168. pseudo_bit_t RcvAvail8IntMask[1];
  169. pseudo_bit_t RcvAvail9IntMask[1];
  170. pseudo_bit_t RcvAvail10IntMask[1];
  171. pseudo_bit_t RcvAvail11IntMask[1];
  172. pseudo_bit_t RcvAvail12IntMask[1];
  173. pseudo_bit_t RcvAvail13IntMask[1];
  174. pseudo_bit_t RcvAvail14IntMask[1];
  175. pseudo_bit_t RcvAvail15IntMask[1];
  176. pseudo_bit_t RcvAvail16IntMask[1];
  177. pseudo_bit_t Reserved1[9];
  178. pseudo_bit_t JIntMask[1];
  179. pseudo_bit_t IBSerdesTrimDoneIntMask[1];
  180. pseudo_bit_t assertGPIOIntMask[1];
  181. pseudo_bit_t PioBufAvailIntMask[1];
  182. pseudo_bit_t PioSetIntMask[1];
  183. pseudo_bit_t ErrorIntMask[1];
  184. pseudo_bit_t RcvUrg0IntMask[1];
  185. pseudo_bit_t RcvUrg1IntMask[1];
  186. pseudo_bit_t RcvUrg2IntMask[1];
  187. pseudo_bit_t RcvUrg3IntMask[1];
  188. pseudo_bit_t RcvUrg4IntMask[1];
  189. pseudo_bit_t RcvUrg5IntMask[1];
  190. pseudo_bit_t RcvUrg6IntMask[1];
  191. pseudo_bit_t RcvUrg7IntMask[1];
  192. pseudo_bit_t RcvUrg8IntMask[1];
  193. pseudo_bit_t RcvUrg9IntMask[1];
  194. pseudo_bit_t RcvUrg10IntMask[1];
  195. pseudo_bit_t RcvUrg11IntMask[1];
  196. pseudo_bit_t RcvUrg12IntMask[1];
  197. pseudo_bit_t RcvUrg13IntMask[1];
  198. pseudo_bit_t RcvUrg14IntMask[1];
  199. pseudo_bit_t RcvUrg15IntMask[1];
  200. pseudo_bit_t RcvUrg16IntMask[1];
  201. pseudo_bit_t Reserved[13];
  202. pseudo_bit_t SDmaDisabledMasked[1];
  203. pseudo_bit_t SDmaIntMask[1];
  204. };
  205. struct QIB_7220_IntMask {
  206. PSEUDO_BIT_STRUCT ( struct QIB_7220_IntMask_pb );
  207. };
  208. #define QIB_7220_IntStatus_offset 0x00000070UL
  209. struct QIB_7220_IntStatus_pb {
  210. pseudo_bit_t RcvAvail0[1];
  211. pseudo_bit_t RcvAvail1[1];
  212. pseudo_bit_t RcvAvail2[1];
  213. pseudo_bit_t RcvAvail3[1];
  214. pseudo_bit_t RcvAvail4[1];
  215. pseudo_bit_t RcvAvail5[1];
  216. pseudo_bit_t RcvAvail6[1];
  217. pseudo_bit_t RcvAvail7[1];
  218. pseudo_bit_t RcvAvail8[1];
  219. pseudo_bit_t RcvAvail9[1];
  220. pseudo_bit_t RcvAvail10[1];
  221. pseudo_bit_t RcvAvail11[1];
  222. pseudo_bit_t RcvAvail12[1];
  223. pseudo_bit_t RcvAvail13[1];
  224. pseudo_bit_t RcvAvail14[1];
  225. pseudo_bit_t RcvAvail15[1];
  226. pseudo_bit_t RcvAvail16[1];
  227. pseudo_bit_t Reserved1[9];
  228. pseudo_bit_t JInt[1];
  229. pseudo_bit_t IBSerdesTrimDone[1];
  230. pseudo_bit_t assertGPIO[1];
  231. pseudo_bit_t PioBufAvail[1];
  232. pseudo_bit_t PioSent[1];
  233. pseudo_bit_t Error[1];
  234. pseudo_bit_t RcvUrg0[1];
  235. pseudo_bit_t RcvUrg1[1];
  236. pseudo_bit_t RcvUrg2[1];
  237. pseudo_bit_t RcvUrg3[1];
  238. pseudo_bit_t RcvUrg4[1];
  239. pseudo_bit_t RcvUrg5[1];
  240. pseudo_bit_t RcvUrg6[1];
  241. pseudo_bit_t RcvUrg7[1];
  242. pseudo_bit_t RcvUrg8[1];
  243. pseudo_bit_t RcvUrg9[1];
  244. pseudo_bit_t RcvUrg10[1];
  245. pseudo_bit_t RcvUrg11[1];
  246. pseudo_bit_t RcvUrg12[1];
  247. pseudo_bit_t RcvUrg13[1];
  248. pseudo_bit_t RcvUrg14[1];
  249. pseudo_bit_t RcvUrg15[1];
  250. pseudo_bit_t RcvUrg16[1];
  251. pseudo_bit_t Reserved[13];
  252. pseudo_bit_t SDmaDisabled[1];
  253. pseudo_bit_t SDmaInt[1];
  254. };
  255. struct QIB_7220_IntStatus {
  256. PSEUDO_BIT_STRUCT ( struct QIB_7220_IntStatus_pb );
  257. };
  258. #define QIB_7220_IntClear_offset 0x00000078UL
  259. struct QIB_7220_IntClear_pb {
  260. pseudo_bit_t RcvAvail0IntClear[1];
  261. pseudo_bit_t RcvAvail1IntClear[1];
  262. pseudo_bit_t RcvAvail2IntClear[1];
  263. pseudo_bit_t RcvAvail3IntClear[1];
  264. pseudo_bit_t RcvAvail4IntClear[1];
  265. pseudo_bit_t RcvAvail5IntClear[1];
  266. pseudo_bit_t RcvAvail6IntClear[1];
  267. pseudo_bit_t RcvAvail7IntClear[1];
  268. pseudo_bit_t RcvAvail8IntClear[1];
  269. pseudo_bit_t RcvAvail9IntClear[1];
  270. pseudo_bit_t RcvAvail10IntClear[1];
  271. pseudo_bit_t RcvAvail11IntClear[1];
  272. pseudo_bit_t RcvAvail12IntClear[1];
  273. pseudo_bit_t RcvAvail13IntClear[1];
  274. pseudo_bit_t RcvAvail14IntClear[1];
  275. pseudo_bit_t RcvAvail15IntClear[1];
  276. pseudo_bit_t RcvAvail16IntClear[1];
  277. pseudo_bit_t Reserved1[9];
  278. pseudo_bit_t JIntClear[1];
  279. pseudo_bit_t IBSerdesTrimDoneClear[1];
  280. pseudo_bit_t assertGPIOIntClear[1];
  281. pseudo_bit_t PioBufAvailIntClear[1];
  282. pseudo_bit_t PioSetIntClear[1];
  283. pseudo_bit_t ErrorIntClear[1];
  284. pseudo_bit_t RcvUrg0IntClear[1];
  285. pseudo_bit_t RcvUrg1IntClear[1];
  286. pseudo_bit_t RcvUrg2IntClear[1];
  287. pseudo_bit_t RcvUrg3IntClear[1];
  288. pseudo_bit_t RcvUrg4IntClear[1];
  289. pseudo_bit_t RcvUrg5IntClear[1];
  290. pseudo_bit_t RcvUrg6IntClear[1];
  291. pseudo_bit_t RcvUrg7IntClear[1];
  292. pseudo_bit_t RcvUrg8IntClear[1];
  293. pseudo_bit_t RcvUrg9IntClear[1];
  294. pseudo_bit_t RcvUrg10IntClear[1];
  295. pseudo_bit_t RcvUrg11IntClear[1];
  296. pseudo_bit_t RcvUrg12IntClear[1];
  297. pseudo_bit_t RcvUrg13IntClear[1];
  298. pseudo_bit_t RcvUrg14IntClear[1];
  299. pseudo_bit_t RcvUrg15IntClear[1];
  300. pseudo_bit_t RcvUrg16IntClear[1];
  301. pseudo_bit_t Reserved[13];
  302. pseudo_bit_t SDmaDisabledClear[1];
  303. pseudo_bit_t SDmaIntClear[1];
  304. };
  305. struct QIB_7220_IntClear {
  306. PSEUDO_BIT_STRUCT ( struct QIB_7220_IntClear_pb );
  307. };
  308. #define QIB_7220_ErrMask_offset 0x00000080UL
  309. struct QIB_7220_ErrMask_pb {
  310. pseudo_bit_t RcvFormatErrMask[1];
  311. pseudo_bit_t RcvVCRCErrMask[1];
  312. pseudo_bit_t RcvICRCErrMask[1];
  313. pseudo_bit_t RcvMinPktLenErrMask[1];
  314. pseudo_bit_t RcvMaxPktLenErrMask[1];
  315. pseudo_bit_t RcvLongPktLenErrMask[1];
  316. pseudo_bit_t RcvShortPktLenErrMask[1];
  317. pseudo_bit_t RcvUnexpectedCharErrMask[1];
  318. pseudo_bit_t RcvUnsupportedVLErrMask[1];
  319. pseudo_bit_t RcvEBPErrMask[1];
  320. pseudo_bit_t RcvIBFlowErrMask[1];
  321. pseudo_bit_t RcvBadVersionErrMask[1];
  322. pseudo_bit_t RcvEgrFullErrMask[1];
  323. pseudo_bit_t RcvHdrFullErrMask[1];
  324. pseudo_bit_t RcvBadTidErrMask[1];
  325. pseudo_bit_t RcvHdrLenErrMask[1];
  326. pseudo_bit_t RcvHdrErrMask[1];
  327. pseudo_bit_t RcvIBLostLinkErrMask[1];
  328. pseudo_bit_t Reserved1[9];
  329. pseudo_bit_t SendSpecialTriggerErrMask[1];
  330. pseudo_bit_t SDmaDisabledErrMask[1];
  331. pseudo_bit_t SendMinPktLenErrMask[1];
  332. pseudo_bit_t SendMaxPktLenErrMask[1];
  333. pseudo_bit_t SendUnderRunErrMask[1];
  334. pseudo_bit_t SendPktLenErrMask[1];
  335. pseudo_bit_t SendDroppedSmpPktErrMask[1];
  336. pseudo_bit_t SendDroppedDataPktErrMask[1];
  337. pseudo_bit_t SendPioArmLaunchErrMask[1];
  338. pseudo_bit_t SendUnexpectedPktNumErrMask[1];
  339. pseudo_bit_t SendUnsupportedVLErrMask[1];
  340. pseudo_bit_t SendBufMisuseErrMask[1];
  341. pseudo_bit_t SDmaGenMismatchErrMask[1];
  342. pseudo_bit_t SDmaOutOfBoundErrMask[1];
  343. pseudo_bit_t SDmaTailOutOfBoundErrMask[1];
  344. pseudo_bit_t SDmaBaseErrMask[1];
  345. pseudo_bit_t SDma1stDescErrMask[1];
  346. pseudo_bit_t SDmaRpyTagErrMask[1];
  347. pseudo_bit_t SDmaDwEnErrMask[1];
  348. pseudo_bit_t SDmaMissingDwErrMask[1];
  349. pseudo_bit_t SDmaUnexpDataErrMask[1];
  350. pseudo_bit_t IBStatusChangedMask[1];
  351. pseudo_bit_t InvalidAddrErrMask[1];
  352. pseudo_bit_t ResetNegatedMask[1];
  353. pseudo_bit_t HardwareErrMask[1];
  354. pseudo_bit_t SDmaDescAddrMisalignErrMask[1];
  355. pseudo_bit_t InvalidEEPCmdMask[1];
  356. pseudo_bit_t Reserved[10];
  357. };
  358. struct QIB_7220_ErrMask {
  359. PSEUDO_BIT_STRUCT ( struct QIB_7220_ErrMask_pb );
  360. };
  361. #define QIB_7220_ErrStatus_offset 0x00000088UL
  362. struct QIB_7220_ErrStatus_pb {
  363. pseudo_bit_t RcvFormatErr[1];
  364. pseudo_bit_t RcvVCRCErr[1];
  365. pseudo_bit_t RcvICRCErr[1];
  366. pseudo_bit_t RcvMinPktLenErr[1];
  367. pseudo_bit_t RcvMaxPktLenErr[1];
  368. pseudo_bit_t RcvLongPktLenErr[1];
  369. pseudo_bit_t RcvShortPktLenErr[1];
  370. pseudo_bit_t RcvUnexpectedCharErr[1];
  371. pseudo_bit_t RcvUnsupportedVLErr[1];
  372. pseudo_bit_t RcvEBPErr[1];
  373. pseudo_bit_t RcvIBFlowErr[1];
  374. pseudo_bit_t RcvBadVersionErr[1];
  375. pseudo_bit_t RcvEgrFullErr[1];
  376. pseudo_bit_t RcvHdrFullErr[1];
  377. pseudo_bit_t RcvBadTidErr[1];
  378. pseudo_bit_t RcvHdrLenErr[1];
  379. pseudo_bit_t RcvHdrErr[1];
  380. pseudo_bit_t RcvIBLostLinkErr[1];
  381. pseudo_bit_t Reserved1[9];
  382. pseudo_bit_t SendSpecialTriggerErr[1];
  383. pseudo_bit_t SDmaDisabledErr[1];
  384. pseudo_bit_t SendMinPktLenErr[1];
  385. pseudo_bit_t SendMaxPktLenErr[1];
  386. pseudo_bit_t SendUnderRunErr[1];
  387. pseudo_bit_t SendPktLenErr[1];
  388. pseudo_bit_t SendDroppedSmpPktErr[1];
  389. pseudo_bit_t SendDroppedDataPktErr[1];
  390. pseudo_bit_t SendPioArmLaunchErr[1];
  391. pseudo_bit_t SendUnexpectedPktNumErr[1];
  392. pseudo_bit_t SendUnsupportedVLErr[1];
  393. pseudo_bit_t SendBufMisuseErr[1];
  394. pseudo_bit_t SDmaGenMismatchErr[1];
  395. pseudo_bit_t SDmaOutOfBoundErr[1];
  396. pseudo_bit_t SDmaTailOutOfBoundErr[1];
  397. pseudo_bit_t SDmaBaseErr[1];
  398. pseudo_bit_t SDma1stDescErr[1];
  399. pseudo_bit_t SDmaRpyTagErr[1];
  400. pseudo_bit_t SDmaDwEnErr[1];
  401. pseudo_bit_t SDmaMissingDwErr[1];
  402. pseudo_bit_t SDmaUnexpDataErr[1];
  403. pseudo_bit_t IBStatusChanged[1];
  404. pseudo_bit_t InvalidAddrErr[1];
  405. pseudo_bit_t ResetNegated[1];
  406. pseudo_bit_t HardwareErr[1];
  407. pseudo_bit_t SDmaDescAddrMisalignErr[1];
  408. pseudo_bit_t InvalidEEPCmdErr[1];
  409. pseudo_bit_t Reserved[10];
  410. };
  411. struct QIB_7220_ErrStatus {
  412. PSEUDO_BIT_STRUCT ( struct QIB_7220_ErrStatus_pb );
  413. };
  414. #define QIB_7220_ErrClear_offset 0x00000090UL
  415. struct QIB_7220_ErrClear_pb {
  416. pseudo_bit_t RcvFormatErrClear[1];
  417. pseudo_bit_t RcvVCRCErrClear[1];
  418. pseudo_bit_t RcvICRCErrClear[1];
  419. pseudo_bit_t RcvMinPktLenErrClear[1];
  420. pseudo_bit_t RcvMaxPktLenErrClear[1];
  421. pseudo_bit_t RcvLongPktLenErrClear[1];
  422. pseudo_bit_t RcvShortPktLenErrClear[1];
  423. pseudo_bit_t RcvUnexpectedCharErrClear[1];
  424. pseudo_bit_t RcvUnsupportedVLErrClear[1];
  425. pseudo_bit_t RcvEBPErrClear[1];
  426. pseudo_bit_t RcvIBFlowErrClear[1];
  427. pseudo_bit_t RcvBadVersionErrClear[1];
  428. pseudo_bit_t RcvEgrFullErrClear[1];
  429. pseudo_bit_t RcvHdrFullErrClear[1];
  430. pseudo_bit_t RcvBadTidErrClear[1];
  431. pseudo_bit_t RcvHdrLenErrClear[1];
  432. pseudo_bit_t RcvHdrErrClear[1];
  433. pseudo_bit_t RcvIBLostLinkErrClear[1];
  434. pseudo_bit_t Reserved1[9];
  435. pseudo_bit_t SendSpecialTriggerErrClear[1];
  436. pseudo_bit_t SDmaDisabledErrClear[1];
  437. pseudo_bit_t SendMinPktLenErrClear[1];
  438. pseudo_bit_t SendMaxPktLenErrClear[1];
  439. pseudo_bit_t SendUnderRunErrClear[1];
  440. pseudo_bit_t SendPktLenErrClear[1];
  441. pseudo_bit_t SendDroppedSmpPktErrClear[1];
  442. pseudo_bit_t SendDroppedDataPktErrClear[1];
  443. pseudo_bit_t SendPioArmLaunchErrClear[1];
  444. pseudo_bit_t SendUnexpectedPktNumErrClear[1];
  445. pseudo_bit_t SendUnsupportedVLErrClear[1];
  446. pseudo_bit_t SendBufMisuseErrClear[1];
  447. pseudo_bit_t SDmaGenMismatchErrClear[1];
  448. pseudo_bit_t SDmaOutOfBoundErrClear[1];
  449. pseudo_bit_t SDmaTailOutOfBoundErrClear[1];
  450. pseudo_bit_t SDmaBaseErrClear[1];
  451. pseudo_bit_t SDma1stDescErrClear[1];
  452. pseudo_bit_t SDmaRpyTagErrClear[1];
  453. pseudo_bit_t SDmaDwEnErrClear[1];
  454. pseudo_bit_t SDmaMissingDwErrClear[1];
  455. pseudo_bit_t SDmaUnexpDataErrClear[1];
  456. pseudo_bit_t IBStatusChangedClear[1];
  457. pseudo_bit_t InvalidAddrErrClear[1];
  458. pseudo_bit_t ResetNegatedClear[1];
  459. pseudo_bit_t HardwareErrClear[1];
  460. pseudo_bit_t SDmaDescAddrMisalignErrClear[1];
  461. pseudo_bit_t InvalidEEPCmdErrClear[1];
  462. pseudo_bit_t Reserved[10];
  463. };
  464. struct QIB_7220_ErrClear {
  465. PSEUDO_BIT_STRUCT ( struct QIB_7220_ErrClear_pb );
  466. };
  467. #define QIB_7220_HwErrMask_offset 0x00000098UL
  468. struct QIB_7220_HwErrMask_pb {
  469. pseudo_bit_t PCIeMemParityErrMask[8];
  470. pseudo_bit_t Reserved3[20];
  471. pseudo_bit_t SDmaMemReadErrMask[1];
  472. pseudo_bit_t PoisonedTLPMask[1];
  473. pseudo_bit_t PcieCplTimeoutMask[1];
  474. pseudo_bit_t PCIeBusParityErrMask[3];
  475. pseudo_bit_t Reserved2[2];
  476. pseudo_bit_t PCIEOct0_uC_MemoryParityErrMask[1];
  477. pseudo_bit_t PCIEOct1_uC_MemoryParityErrMask[1];
  478. pseudo_bit_t IB_uC_MemoryParityErrMask[1];
  479. pseudo_bit_t DDSRXEQMemoryParityErrMask[1];
  480. pseudo_bit_t TXEMemParityErrMask[4];
  481. pseudo_bit_t RXEMemParityErrMask[7];
  482. pseudo_bit_t Reserved1[3];
  483. pseudo_bit_t PowerOnBISTFailedMask[1];
  484. pseudo_bit_t Reserved[1];
  485. pseudo_bit_t PCIESerdesQ0PClkNotDetectMask[1];
  486. pseudo_bit_t PCIESerdesQ1PClkNotDetectMask[1];
  487. pseudo_bit_t PCIESerdesQ2PClkNotDetectMask[1];
  488. pseudo_bit_t PCIESerdesQ3PClkNotDetectMask[1];
  489. pseudo_bit_t IBSerdesPClkNotDetectMask[1];
  490. pseudo_bit_t Clk_uC_PLLNotLockedMask[1];
  491. pseudo_bit_t IBCBusToSPCParityErrMask[1];
  492. pseudo_bit_t IBCBusFromSPCParityErrMask[1];
  493. };
  494. struct QIB_7220_HwErrMask {
  495. PSEUDO_BIT_STRUCT ( struct QIB_7220_HwErrMask_pb );
  496. };
  497. #define QIB_7220_HwErrStatus_offset 0x000000a0UL
  498. struct QIB_7220_HwErrStatus_pb {
  499. pseudo_bit_t PCIeMemParity[8];
  500. pseudo_bit_t Reserved3[20];
  501. pseudo_bit_t SDmaMemReadErr[1];
  502. pseudo_bit_t PoisenedTLP[1];
  503. pseudo_bit_t PcieCplTimeout[1];
  504. pseudo_bit_t PCIeBusParity[3];
  505. pseudo_bit_t Reserved2[2];
  506. pseudo_bit_t PCIE_uC_Oct0MemoryParityErr[1];
  507. pseudo_bit_t PCIE_uC_Oct1MemoryParityErr[1];
  508. pseudo_bit_t IB_uC_MemoryParityErr[1];
  509. pseudo_bit_t DDSRXEQMemoryParityErr[1];
  510. pseudo_bit_t TXEMemParity[4];
  511. pseudo_bit_t RXEMemParity[7];
  512. pseudo_bit_t Reserved1[3];
  513. pseudo_bit_t PowerOnBISTFailed[1];
  514. pseudo_bit_t Reserved[1];
  515. pseudo_bit_t PCIESerdesQ0PClkNotDetect[1];
  516. pseudo_bit_t PCIESerdesQ1PClkNotDetect[1];
  517. pseudo_bit_t PCIESerdesQ2PClkNotDetect[1];
  518. pseudo_bit_t PCIESerdesQ3PClkNotDetect[1];
  519. pseudo_bit_t IBSerdesPClkNotDetect[1];
  520. pseudo_bit_t Clk_uC_PLLNotLocked[1];
  521. pseudo_bit_t IBCBusToSPCParityErr[1];
  522. pseudo_bit_t IBCBusFromSPCParityErr[1];
  523. };
  524. struct QIB_7220_HwErrStatus {
  525. PSEUDO_BIT_STRUCT ( struct QIB_7220_HwErrStatus_pb );
  526. };
  527. #define QIB_7220_HwErrClear_offset 0x000000a8UL
  528. struct QIB_7220_HwErrClear_pb {
  529. pseudo_bit_t PCIeMemParityClr[8];
  530. pseudo_bit_t Reserved3[20];
  531. pseudo_bit_t SDmaMemReadErrClear[1];
  532. pseudo_bit_t PoisonedTLPClear[1];
  533. pseudo_bit_t PcieCplTimeoutClear[1];
  534. pseudo_bit_t PCIeBusParityClr[3];
  535. pseudo_bit_t Reserved2[2];
  536. pseudo_bit_t PCIE_uC_Oct0MemoryParityErrClear[1];
  537. pseudo_bit_t PCIE_uC_Oct1MemoryParityErrClear[1];
  538. pseudo_bit_t IB_uC_MemoryParityErrClear[1];
  539. pseudo_bit_t DDSRXEQMemoryParityErrClear[1];
  540. pseudo_bit_t TXEMemParityClear[4];
  541. pseudo_bit_t RXEMemParityClear[7];
  542. pseudo_bit_t Reserved1[3];
  543. pseudo_bit_t PowerOnBISTFailedClear[1];
  544. pseudo_bit_t Reserved[1];
  545. pseudo_bit_t PCIESerdesQ0PClkNotDetectClear[1];
  546. pseudo_bit_t PCIESerdesQ1PClkNotDetectClear[1];
  547. pseudo_bit_t PCIESerdesQ2PClkNotDetectClear[1];
  548. pseudo_bit_t PCIESerdesQ3PClkNotDetectClear[1];
  549. pseudo_bit_t IBSerdesPClkNotDetectClear[1];
  550. pseudo_bit_t Clk_uC_PLLNotLockedClear[1];
  551. pseudo_bit_t IBCBusToSPCparityErrClear[1];
  552. pseudo_bit_t IBCBusFromSPCParityErrClear[1];
  553. };
  554. struct QIB_7220_HwErrClear {
  555. PSEUDO_BIT_STRUCT ( struct QIB_7220_HwErrClear_pb );
  556. };
  557. #define QIB_7220_HwDiagCtrl_offset 0x000000b0UL
  558. struct QIB_7220_HwDiagCtrl_pb {
  559. pseudo_bit_t forcePCIeMemParity[8];
  560. pseudo_bit_t Reserved2[23];
  561. pseudo_bit_t forcePCIeBusParity[4];
  562. pseudo_bit_t Reserved1[1];
  563. pseudo_bit_t ForcePCIE_uC_Oct0MemoryParityErr[1];
  564. pseudo_bit_t ForcePCIE_uC_Oct1MemoryParityErr[1];
  565. pseudo_bit_t ForceIB_uC_MemoryParityErr[1];
  566. pseudo_bit_t ForceDDSRXEQMemoryParityErr[1];
  567. pseudo_bit_t ForceTxMemparityErr[4];
  568. pseudo_bit_t ForceRxMemParityErr[7];
  569. pseudo_bit_t Reserved[9];
  570. pseudo_bit_t CounterDisable[1];
  571. pseudo_bit_t CounterWrEnable[1];
  572. pseudo_bit_t ForceIBCBusToSPCParityErr[1];
  573. pseudo_bit_t ForceIBCBusFromSPCParityErr[1];
  574. };
  575. struct QIB_7220_HwDiagCtrl {
  576. PSEUDO_BIT_STRUCT ( struct QIB_7220_HwDiagCtrl_pb );
  577. };
  578. #define QIB_7220_REG_0000B8_offset 0x000000b8UL
  579. #define QIB_7220_IBCStatus_offset 0x000000c0UL
  580. struct QIB_7220_IBCStatus_pb {
  581. pseudo_bit_t LinkTrainingState[5];
  582. pseudo_bit_t LinkState[3];
  583. pseudo_bit_t LinkSpeedActive[1];
  584. pseudo_bit_t LinkWidthActive[1];
  585. pseudo_bit_t DDS_RXEQ_FAIL[1];
  586. pseudo_bit_t IB_SERDES_TRIM_DONE[1];
  587. pseudo_bit_t IBRxLaneReversed[1];
  588. pseudo_bit_t IBTxLaneReversed[1];
  589. pseudo_bit_t Reserved[16];
  590. pseudo_bit_t TxReady[1];
  591. pseudo_bit_t TxCreditOk[1];
  592. pseudo_bit_t _unused_0[32];
  593. };
  594. struct QIB_7220_IBCStatus {
  595. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBCStatus_pb );
  596. };
  597. #define QIB_7220_IBCCtrl_offset 0x000000c8UL
  598. struct QIB_7220_IBCCtrl_pb {
  599. pseudo_bit_t FlowCtrlPeriod[8];
  600. pseudo_bit_t FlowCtrlWaterMark[8];
  601. pseudo_bit_t LinkInitCmd[3];
  602. pseudo_bit_t LinkCmd[2];
  603. pseudo_bit_t MaxPktLen[11];
  604. pseudo_bit_t PhyerrThreshold[4];
  605. pseudo_bit_t OverrunThreshold[4];
  606. pseudo_bit_t CreditScale[3];
  607. pseudo_bit_t Reserved[19];
  608. pseudo_bit_t LinkDownDefaultState[1];
  609. pseudo_bit_t Loopback[1];
  610. };
  611. struct QIB_7220_IBCCtrl {
  612. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBCCtrl_pb );
  613. };
  614. #define QIB_7220_EXTStatus_offset 0x000000d0UL
  615. struct QIB_7220_EXTStatus_pb {
  616. pseudo_bit_t Reserved2[14];
  617. pseudo_bit_t MemBISTEndTest[1];
  618. pseudo_bit_t MemBISTDisabled[1];
  619. pseudo_bit_t Reserved1[16];
  620. pseudo_bit_t Reserved[16];
  621. pseudo_bit_t GPIOIn[16];
  622. };
  623. struct QIB_7220_EXTStatus {
  624. PSEUDO_BIT_STRUCT ( struct QIB_7220_EXTStatus_pb );
  625. };
  626. #define QIB_7220_EXTCtrl_offset 0x000000d8UL
  627. struct QIB_7220_EXTCtrl_pb {
  628. pseudo_bit_t LEDGblErrRedOff[1];
  629. pseudo_bit_t LEDGblOkGreenOn[1];
  630. pseudo_bit_t LEDPriPortYellowOn[1];
  631. pseudo_bit_t LEDPriPortGreenOn[1];
  632. pseudo_bit_t Reserved[28];
  633. pseudo_bit_t GPIOInvert[16];
  634. pseudo_bit_t GPIOOe[16];
  635. };
  636. struct QIB_7220_EXTCtrl {
  637. PSEUDO_BIT_STRUCT ( struct QIB_7220_EXTCtrl_pb );
  638. };
  639. #define QIB_7220_GPIOOut_offset 0x000000e0UL
  640. #define QIB_7220_GPIOMask_offset 0x000000e8UL
  641. #define QIB_7220_GPIOStatus_offset 0x000000f0UL
  642. #define QIB_7220_GPIOClear_offset 0x000000f8UL
  643. #define QIB_7220_RcvCtrl_offset 0x00000100UL
  644. struct QIB_7220_RcvCtrl_pb {
  645. pseudo_bit_t PortEnable[17];
  646. pseudo_bit_t IntrAvail[17];
  647. pseudo_bit_t RcvPartitionKeyDisable[1];
  648. pseudo_bit_t TailUpd[1];
  649. pseudo_bit_t PortCfg[2];
  650. pseudo_bit_t RcvQPMapEnable[1];
  651. pseudo_bit_t Reserved[25];
  652. };
  653. struct QIB_7220_RcvCtrl {
  654. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvCtrl_pb );
  655. };
  656. #define QIB_7220_RcvBTHQP_offset 0x00000108UL
  657. struct QIB_7220_RcvBTHQP_pb {
  658. pseudo_bit_t RcvBTHQP[24];
  659. pseudo_bit_t Reserved[8];
  660. pseudo_bit_t _unused_0[32];
  661. };
  662. struct QIB_7220_RcvBTHQP {
  663. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvBTHQP_pb );
  664. };
  665. #define QIB_7220_RcvHdrSize_offset 0x00000110UL
  666. #define QIB_7220_RcvHdrCnt_offset 0x00000118UL
  667. #define QIB_7220_RcvHdrEntSize_offset 0x00000120UL
  668. #define QIB_7220_RcvTIDBase_offset 0x00000128UL
  669. #define QIB_7220_RcvTIDCnt_offset 0x00000130UL
  670. #define QIB_7220_RcvEgrBase_offset 0x00000138UL
  671. #define QIB_7220_RcvEgrCnt_offset 0x00000140UL
  672. #define QIB_7220_RcvBufBase_offset 0x00000148UL
  673. #define QIB_7220_RcvBufSize_offset 0x00000150UL
  674. #define QIB_7220_RxIntMemBase_offset 0x00000158UL
  675. #define QIB_7220_RxIntMemSize_offset 0x00000160UL
  676. #define QIB_7220_RcvPartitionKey_offset 0x00000168UL
  677. #define QIB_7220_RcvQPMulticastPort_offset 0x00000170UL
  678. struct QIB_7220_RcvQPMulticastPort_pb {
  679. pseudo_bit_t RcvQpMcPort[5];
  680. pseudo_bit_t Reserved[59];
  681. };
  682. struct QIB_7220_RcvQPMulticastPort {
  683. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvQPMulticastPort_pb );
  684. };
  685. #define QIB_7220_RcvPktLEDCnt_offset 0x00000178UL
  686. struct QIB_7220_RcvPktLEDCnt_pb {
  687. pseudo_bit_t OFFperiod[32];
  688. pseudo_bit_t ONperiod[32];
  689. };
  690. struct QIB_7220_RcvPktLEDCnt {
  691. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvPktLEDCnt_pb );
  692. };
  693. #define QIB_7220_IBCDDRCtrl_offset 0x00000180UL
  694. struct QIB_7220_IBCDDRCtrl_pb {
  695. pseudo_bit_t IB_ENHANCED_MODE[1];
  696. pseudo_bit_t SD_SPEED[1];
  697. pseudo_bit_t SD_SPEED_SDR[1];
  698. pseudo_bit_t SD_SPEED_DDR[1];
  699. pseudo_bit_t SD_SPEED_QDR[1];
  700. pseudo_bit_t IB_NUM_CHANNELS[2];
  701. pseudo_bit_t IB_POLARITY_REV_SUPP[1];
  702. pseudo_bit_t IB_LANE_REV_SUPPORTED[1];
  703. pseudo_bit_t SD_RX_EQUAL_ENABLE[1];
  704. pseudo_bit_t SD_ADD_ENB[1];
  705. pseudo_bit_t SD_DDSV[1];
  706. pseudo_bit_t SD_DDS[4];
  707. pseudo_bit_t HRTBT_ENB[1];
  708. pseudo_bit_t HRTBT_AUTO[1];
  709. pseudo_bit_t HRTBT_PORT[8];
  710. pseudo_bit_t HRTBT_REQ[1];
  711. pseudo_bit_t Reserved[5];
  712. pseudo_bit_t IB_DLID[16];
  713. pseudo_bit_t IB_DLID_MASK[16];
  714. };
  715. struct QIB_7220_IBCDDRCtrl {
  716. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBCDDRCtrl_pb );
  717. };
  718. #define QIB_7220_HRTBT_GUID_offset 0x00000188UL
  719. #define QIB_7220_IB_SDTEST_IF_TX_offset 0x00000190UL
  720. struct QIB_7220_IB_SDTEST_IF_TX_pb {
  721. pseudo_bit_t TS_T_TX_VALID[1];
  722. pseudo_bit_t TS_3_TX_VALID[1];
  723. pseudo_bit_t Reserved1[9];
  724. pseudo_bit_t TS_TX_OPCODE[2];
  725. pseudo_bit_t TS_TX_SPEED[3];
  726. pseudo_bit_t Reserved[16];
  727. pseudo_bit_t TS_TX_TX_CFG[16];
  728. pseudo_bit_t TS_TX_RX_CFG[16];
  729. };
  730. struct QIB_7220_IB_SDTEST_IF_TX {
  731. PSEUDO_BIT_STRUCT ( struct QIB_7220_IB_SDTEST_IF_TX_pb );
  732. };
  733. #define QIB_7220_IB_SDTEST_IF_RX_offset 0x00000198UL
  734. struct QIB_7220_IB_SDTEST_IF_RX_pb {
  735. pseudo_bit_t TS_T_RX_VALID[1];
  736. pseudo_bit_t TS_3_RX_VALID[1];
  737. pseudo_bit_t Reserved[14];
  738. pseudo_bit_t TS_RX_A[8];
  739. pseudo_bit_t TS_RX_B[8];
  740. pseudo_bit_t TS_RX_TX_CFG[16];
  741. pseudo_bit_t TS_RX_RX_CFG[16];
  742. };
  743. struct QIB_7220_IB_SDTEST_IF_RX {
  744. PSEUDO_BIT_STRUCT ( struct QIB_7220_IB_SDTEST_IF_RX_pb );
  745. };
  746. #define QIB_7220_IBCDDRCtrl2_offset 0x000001a0UL
  747. struct QIB_7220_IBCDDRCtrl2_pb {
  748. pseudo_bit_t IB_FRONT_PORCH[5];
  749. pseudo_bit_t IB_BACK_PORCH[5];
  750. pseudo_bit_t _unused_0[54];
  751. };
  752. struct QIB_7220_IBCDDRCtrl2 {
  753. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBCDDRCtrl2_pb );
  754. };
  755. #define QIB_7220_IBCDDRStatus_offset 0x000001a8UL
  756. struct QIB_7220_IBCDDRStatus_pb {
  757. pseudo_bit_t LinkRoundTripLatency[26];
  758. pseudo_bit_t ReqDDSLocalFromRmt[4];
  759. pseudo_bit_t RxEqLocalDevice[2];
  760. pseudo_bit_t heartbeat_crosstalk[4];
  761. pseudo_bit_t heartbeat_timed_out[1];
  762. pseudo_bit_t _unused_0[27];
  763. };
  764. struct QIB_7220_IBCDDRStatus {
  765. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBCDDRStatus_pb );
  766. };
  767. #define QIB_7220_JIntReload_offset 0x000001b0UL
  768. struct QIB_7220_JIntReload_pb {
  769. pseudo_bit_t J_reload[16];
  770. pseudo_bit_t J_limit_reload[16];
  771. pseudo_bit_t _unused_0[32];
  772. };
  773. struct QIB_7220_JIntReload {
  774. PSEUDO_BIT_STRUCT ( struct QIB_7220_JIntReload_pb );
  775. };
  776. #define QIB_7220_IBNCModeCtrl_offset 0x000001b8UL
  777. struct QIB_7220_IBNCModeCtrl_pb {
  778. pseudo_bit_t TSMEnable_send_TS1[1];
  779. pseudo_bit_t TSMEnable_send_TS2[1];
  780. pseudo_bit_t TSMEnable_ignore_TSM_on_rx[1];
  781. pseudo_bit_t Reserved1[5];
  782. pseudo_bit_t TSMCode_TS1[9];
  783. pseudo_bit_t TSMCode_TS2[9];
  784. pseudo_bit_t Reserved[38];
  785. };
  786. struct QIB_7220_IBNCModeCtrl {
  787. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBNCModeCtrl_pb );
  788. };
  789. #define QIB_7220_SendCtrl_offset 0x000001c0UL
  790. struct QIB_7220_SendCtrl_pb {
  791. pseudo_bit_t Abort[1];
  792. pseudo_bit_t SendIntBufAvail[1];
  793. pseudo_bit_t SendBufAvailUpd[1];
  794. pseudo_bit_t SPioEnable[1];
  795. pseudo_bit_t SSpecialTriggerEn[1];
  796. pseudo_bit_t Reserved2[4];
  797. pseudo_bit_t SDmaIntEnable[1];
  798. pseudo_bit_t SDmaSingleDescriptor[1];
  799. pseudo_bit_t SDmaEnable[1];
  800. pseudo_bit_t SDmaHalt[1];
  801. pseudo_bit_t Reserved1[3];
  802. pseudo_bit_t DisarmPIOBuf[8];
  803. pseudo_bit_t AvailUpdThld[5];
  804. pseudo_bit_t Reserved[2];
  805. pseudo_bit_t Disarm[1];
  806. pseudo_bit_t _unused_0[32];
  807. };
  808. struct QIB_7220_SendCtrl {
  809. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendCtrl_pb );
  810. };
  811. #define QIB_7220_SendBufBase_offset 0x000001c8UL
  812. struct QIB_7220_SendBufBase_pb {
  813. pseudo_bit_t BaseAddr_SmallPIO[21];
  814. pseudo_bit_t Reserved1[11];
  815. pseudo_bit_t BaseAddr_LargePIO[21];
  816. pseudo_bit_t Reserved[11];
  817. };
  818. struct QIB_7220_SendBufBase {
  819. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufBase_pb );
  820. };
  821. #define QIB_7220_SendBufSize_offset 0x000001d0UL
  822. struct QIB_7220_SendBufSize_pb {
  823. pseudo_bit_t Size_SmallPIO[12];
  824. pseudo_bit_t Reserved1[20];
  825. pseudo_bit_t Size_LargePIO[13];
  826. pseudo_bit_t Reserved[19];
  827. };
  828. struct QIB_7220_SendBufSize {
  829. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufSize_pb );
  830. };
  831. #define QIB_7220_SendBufCnt_offset 0x000001d8UL
  832. struct QIB_7220_SendBufCnt_pb {
  833. pseudo_bit_t Num_SmallBuffers[9];
  834. pseudo_bit_t Reserved1[23];
  835. pseudo_bit_t Num_LargeBuffers[4];
  836. pseudo_bit_t Reserved[28];
  837. };
  838. struct QIB_7220_SendBufCnt {
  839. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufCnt_pb );
  840. };
  841. #define QIB_7220_SendBufAvailAddr_offset 0x000001e0UL
  842. struct QIB_7220_SendBufAvailAddr_pb {
  843. pseudo_bit_t Reserved[6];
  844. pseudo_bit_t SendBufAvailAddr[34];
  845. pseudo_bit_t _unused_0[24];
  846. };
  847. struct QIB_7220_SendBufAvailAddr {
  848. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufAvailAddr_pb );
  849. };
  850. #define QIB_7220_TxIntMemBase_offset 0x000001e8UL
  851. #define QIB_7220_TxIntMemSize_offset 0x000001f0UL
  852. #define QIB_7220_SendDmaBase_offset 0x000001f8UL
  853. struct QIB_7220_SendDmaBase_pb {
  854. pseudo_bit_t SendDmaBase[48];
  855. pseudo_bit_t Reserved[16];
  856. };
  857. struct QIB_7220_SendDmaBase {
  858. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaBase_pb );
  859. };
  860. #define QIB_7220_SendDmaLenGen_offset 0x00000200UL
  861. struct QIB_7220_SendDmaLenGen_pb {
  862. pseudo_bit_t Length[16];
  863. pseudo_bit_t Generation[3];
  864. pseudo_bit_t Reserved[45];
  865. };
  866. struct QIB_7220_SendDmaLenGen {
  867. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaLenGen_pb );
  868. };
  869. #define QIB_7220_SendDmaTail_offset 0x00000208UL
  870. struct QIB_7220_SendDmaTail_pb {
  871. pseudo_bit_t SendDmaTail[16];
  872. pseudo_bit_t Reserved[48];
  873. };
  874. struct QIB_7220_SendDmaTail {
  875. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaTail_pb );
  876. };
  877. #define QIB_7220_SendDmaHead_offset 0x00000210UL
  878. struct QIB_7220_SendDmaHead_pb {
  879. pseudo_bit_t SendDmaHead[16];
  880. pseudo_bit_t Reserved1[16];
  881. pseudo_bit_t InternalSendDmaHead[16];
  882. pseudo_bit_t Reserved[16];
  883. };
  884. struct QIB_7220_SendDmaHead {
  885. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaHead_pb );
  886. };
  887. #define QIB_7220_SendDmaHeadAddr_offset 0x00000218UL
  888. struct QIB_7220_SendDmaHeadAddr_pb {
  889. pseudo_bit_t SendDmaHeadAddr[48];
  890. pseudo_bit_t Reserved[16];
  891. };
  892. struct QIB_7220_SendDmaHeadAddr {
  893. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaHeadAddr_pb );
  894. };
  895. #define QIB_7220_SendDmaBufMask0_offset 0x00000220UL
  896. struct QIB_7220_SendDmaBufMask0_pb {
  897. pseudo_bit_t BufMask_63_0[0];
  898. pseudo_bit_t _unused_0[64];
  899. };
  900. struct QIB_7220_SendDmaBufMask0 {
  901. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaBufMask0_pb );
  902. };
  903. #define QIB_7220_SendDmaStatus_offset 0x00000238UL
  904. struct QIB_7220_SendDmaStatus_pb {
  905. pseudo_bit_t SplFifoDescIndex[16];
  906. pseudo_bit_t SplFifoBufNum[8];
  907. pseudo_bit_t SplFifoFull[1];
  908. pseudo_bit_t SplFifoEmpty[1];
  909. pseudo_bit_t SplFifoDisarmed[1];
  910. pseudo_bit_t SplFifoReadyToGo[1];
  911. pseudo_bit_t ScbFetchDescFlag[1];
  912. pseudo_bit_t ScbEntryValid[1];
  913. pseudo_bit_t ScbEmpty[1];
  914. pseudo_bit_t ScbFull[1];
  915. pseudo_bit_t RpyTag_7_0[8];
  916. pseudo_bit_t RpyLowAddr_6_0[7];
  917. pseudo_bit_t ScbDescIndex_13_0[14];
  918. pseudo_bit_t InternalSDmaEnable[1];
  919. pseudo_bit_t AbortInProg[1];
  920. pseudo_bit_t ScoreBoardDrainInProg[1];
  921. };
  922. struct QIB_7220_SendDmaStatus {
  923. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaStatus_pb );
  924. };
  925. #define QIB_7220_SendBufErr0_offset 0x00000240UL
  926. struct QIB_7220_SendBufErr0_pb {
  927. pseudo_bit_t SendBufErr_63_0[0];
  928. pseudo_bit_t _unused_0[64];
  929. };
  930. struct QIB_7220_SendBufErr0 {
  931. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufErr0_pb );
  932. };
  933. #define QIB_7220_REG_000258_offset 0x00000258UL
  934. #define QIB_7220_AvailUpdCount_offset 0x00000268UL
  935. struct QIB_7220_AvailUpdCount_pb {
  936. pseudo_bit_t AvailUpdCount[5];
  937. pseudo_bit_t _unused_0[59];
  938. };
  939. struct QIB_7220_AvailUpdCount {
  940. PSEUDO_BIT_STRUCT ( struct QIB_7220_AvailUpdCount_pb );
  941. };
  942. #define QIB_7220_RcvHdrAddr0_offset 0x00000270UL
  943. struct QIB_7220_RcvHdrAddr0_pb {
  944. pseudo_bit_t Reserved[2];
  945. pseudo_bit_t RcvHdrAddr0[38];
  946. pseudo_bit_t _unused_0[24];
  947. };
  948. struct QIB_7220_RcvHdrAddr0 {
  949. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrAddr0_pb );
  950. };
  951. #define QIB_7220_REG_0002F8_offset 0x000002f8UL
  952. #define QIB_7220_RcvHdrTailAddr0_offset 0x00000300UL
  953. struct QIB_7220_RcvHdrTailAddr0_pb {
  954. pseudo_bit_t Reserved[2];
  955. pseudo_bit_t RcvHdrTailAddr0[38];
  956. pseudo_bit_t _unused_0[24];
  957. };
  958. struct QIB_7220_RcvHdrTailAddr0 {
  959. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrTailAddr0_pb );
  960. };
  961. #define QIB_7220_REG_000388_offset 0x00000388UL
  962. #define QIB_7220_ibsd_epb_access_ctrl_offset 0x000003c0UL
  963. struct QIB_7220_ibsd_epb_access_ctrl_pb {
  964. pseudo_bit_t sw_ib_epb_req[1];
  965. pseudo_bit_t Reserved[7];
  966. pseudo_bit_t sw_ib_epb_req_granted[1];
  967. pseudo_bit_t _unused_0[55];
  968. };
  969. struct QIB_7220_ibsd_epb_access_ctrl {
  970. PSEUDO_BIT_STRUCT ( struct QIB_7220_ibsd_epb_access_ctrl_pb );
  971. };
  972. #define QIB_7220_ibsd_epb_transaction_reg_offset 0x000003c8UL
  973. struct QIB_7220_ibsd_epb_transaction_reg_pb {
  974. pseudo_bit_t ib_epb_data[8];
  975. pseudo_bit_t ib_epb_address[15];
  976. pseudo_bit_t Reserved2[1];
  977. pseudo_bit_t ib_epb_read_write[1];
  978. pseudo_bit_t ib_epb_cs[2];
  979. pseudo_bit_t Reserved1[1];
  980. pseudo_bit_t mem_data_parity[1];
  981. pseudo_bit_t Reserved[1];
  982. pseudo_bit_t ib_epb_req_error[1];
  983. pseudo_bit_t ib_epb_rdy[1];
  984. pseudo_bit_t _unused_0[32];
  985. };
  986. struct QIB_7220_ibsd_epb_transaction_reg {
  987. PSEUDO_BIT_STRUCT ( struct QIB_7220_ibsd_epb_transaction_reg_pb );
  988. };
  989. #define QIB_7220_REG_0003D0_offset 0x000003d0UL
  990. #define QIB_7220_XGXSCfg_offset 0x000003d8UL
  991. struct QIB_7220_XGXSCfg_pb {
  992. pseudo_bit_t tx_rx_reset[1];
  993. pseudo_bit_t Reserved2[1];
  994. pseudo_bit_t xcv_reset[1];
  995. pseudo_bit_t Reserved1[6];
  996. pseudo_bit_t link_sync_mask[10];
  997. pseudo_bit_t Reserved[44];
  998. pseudo_bit_t sel_link_down_for_fctrl_lane_sync_reset[1];
  999. };
  1000. struct QIB_7220_XGXSCfg {
  1001. PSEUDO_BIT_STRUCT ( struct QIB_7220_XGXSCfg_pb );
  1002. };
  1003. #define QIB_7220_IBSerDesCtrl_offset 0x000003e0UL
  1004. struct QIB_7220_IBSerDesCtrl_pb {
  1005. pseudo_bit_t ResetIB_uC_Core[1];
  1006. pseudo_bit_t Reserved2[7];
  1007. pseudo_bit_t NumSerDesRegsToWrForDDS[5];
  1008. pseudo_bit_t NumSerDesRegsToWrForRXEQ[5];
  1009. pseudo_bit_t Reserved1[14];
  1010. pseudo_bit_t TXINV[1];
  1011. pseudo_bit_t RXINV[1];
  1012. pseudo_bit_t RXIDLE[1];
  1013. pseudo_bit_t TWC[1];
  1014. pseudo_bit_t TXOBPD[1];
  1015. pseudo_bit_t PLLM[3];
  1016. pseudo_bit_t PLLN[2];
  1017. pseudo_bit_t CKSEL_uC[2];
  1018. pseudo_bit_t INT_uC[1];
  1019. pseudo_bit_t Reserved[19];
  1020. };
  1021. struct QIB_7220_IBSerDesCtrl {
  1022. PSEUDO_BIT_STRUCT ( struct QIB_7220_IBSerDesCtrl_pb );
  1023. };
  1024. #define QIB_7220_EEPCtlStat_offset 0x000003e8UL
  1025. struct QIB_7220_EEPCtlStat_pb {
  1026. pseudo_bit_t EPAccEn[2];
  1027. pseudo_bit_t EPReset[1];
  1028. pseudo_bit_t ByteProg[1];
  1029. pseudo_bit_t PageMode[1];
  1030. pseudo_bit_t LstDatWr[1];
  1031. pseudo_bit_t CmdWrErr[1];
  1032. pseudo_bit_t Reserved[24];
  1033. pseudo_bit_t CtlrStat[1];
  1034. pseudo_bit_t _unused_0[32];
  1035. };
  1036. struct QIB_7220_EEPCtlStat {
  1037. PSEUDO_BIT_STRUCT ( struct QIB_7220_EEPCtlStat_pb );
  1038. };
  1039. #define QIB_7220_EEPAddrCmd_offset 0x000003f0UL
  1040. struct QIB_7220_EEPAddrCmd_pb {
  1041. pseudo_bit_t EPAddr[24];
  1042. pseudo_bit_t EPCmd[8];
  1043. pseudo_bit_t _unused_0[32];
  1044. };
  1045. struct QIB_7220_EEPAddrCmd {
  1046. PSEUDO_BIT_STRUCT ( struct QIB_7220_EEPAddrCmd_pb );
  1047. };
  1048. #define QIB_7220_EEPData_offset 0x000003f8UL
  1049. #define QIB_7220_pciesd_epb_access_ctrl_offset 0x00000400UL
  1050. struct QIB_7220_pciesd_epb_access_ctrl_pb {
  1051. pseudo_bit_t sw_pcie_epb_req[1];
  1052. pseudo_bit_t sw_pcieepb_star_en[2];
  1053. pseudo_bit_t Reserved[5];
  1054. pseudo_bit_t sw_pcie_epb_req_granted[1];
  1055. pseudo_bit_t _unused_0[55];
  1056. };
  1057. struct QIB_7220_pciesd_epb_access_ctrl {
  1058. PSEUDO_BIT_STRUCT ( struct QIB_7220_pciesd_epb_access_ctrl_pb );
  1059. };
  1060. #define QIB_7220_pciesd_epb_transaction_reg_offset 0x00000408UL
  1061. struct QIB_7220_pciesd_epb_transaction_reg_pb {
  1062. pseudo_bit_t pcie_epb_data[8];
  1063. pseudo_bit_t pcie_epb_address[15];
  1064. pseudo_bit_t Reserved1[1];
  1065. pseudo_bit_t pcie_epb_read_write[1];
  1066. pseudo_bit_t pcie_epb_cs[3];
  1067. pseudo_bit_t mem_data_parity[1];
  1068. pseudo_bit_t Reserved[1];
  1069. pseudo_bit_t pcie_epb_req_error[1];
  1070. pseudo_bit_t pcie_epb_rdy[1];
  1071. pseudo_bit_t _unused_0[32];
  1072. };
  1073. struct QIB_7220_pciesd_epb_transaction_reg {
  1074. PSEUDO_BIT_STRUCT ( struct QIB_7220_pciesd_epb_transaction_reg_pb );
  1075. };
  1076. #define QIB_7220_efuse_control_reg_offset 0x00000410UL
  1077. struct QIB_7220_efuse_control_reg_pb {
  1078. pseudo_bit_t start_op[1];
  1079. pseudo_bit_t operation[1];
  1080. pseudo_bit_t read_valid[1];
  1081. pseudo_bit_t req_error[1];
  1082. pseudo_bit_t Reserved[27];
  1083. pseudo_bit_t rdy[1];
  1084. pseudo_bit_t _unused_0[32];
  1085. };
  1086. struct QIB_7220_efuse_control_reg {
  1087. PSEUDO_BIT_STRUCT ( struct QIB_7220_efuse_control_reg_pb );
  1088. };
  1089. #define QIB_7220_efuse_rddata0_reg_offset 0x00000418UL
  1090. #define QIB_7220_procmon_register_offset 0x00000438UL
  1091. struct QIB_7220_procmon_register_pb {
  1092. pseudo_bit_t interval_time[12];
  1093. pseudo_bit_t Reserved1[2];
  1094. pseudo_bit_t clear_counter[1];
  1095. pseudo_bit_t start_counter[1];
  1096. pseudo_bit_t procmon_count[9];
  1097. pseudo_bit_t Reserved[6];
  1098. pseudo_bit_t procmon_count_valid[1];
  1099. pseudo_bit_t _unused_0[32];
  1100. };
  1101. struct QIB_7220_procmon_register {
  1102. PSEUDO_BIT_STRUCT ( struct QIB_7220_procmon_register_pb );
  1103. };
  1104. #define QIB_7220_PcieRbufTestReg0_offset 0x00000440UL
  1105. #define QIB_7220_PcieRBufTestReg1_offset 0x00000448UL
  1106. #define QIB_7220_SPC_JTAG_ACCESS_REG_offset 0x00000460UL
  1107. struct QIB_7220_SPC_JTAG_ACCESS_REG_pb {
  1108. pseudo_bit_t rdy[1];
  1109. pseudo_bit_t tdo[1];
  1110. pseudo_bit_t tdi[1];
  1111. pseudo_bit_t opcode[2];
  1112. pseudo_bit_t bist_en[5];
  1113. pseudo_bit_t SPC_JTAG_ACCESS_EN[1];
  1114. pseudo_bit_t _unused_0[53];
  1115. };
  1116. struct QIB_7220_SPC_JTAG_ACCESS_REG {
  1117. PSEUDO_BIT_STRUCT ( struct QIB_7220_SPC_JTAG_ACCESS_REG_pb );
  1118. };
  1119. #define QIB_7220_LAControlReg_offset 0x00000468UL
  1120. struct QIB_7220_LAControlReg_pb {
  1121. pseudo_bit_t Finished[1];
  1122. pseudo_bit_t Address[8];
  1123. pseudo_bit_t Mode[2];
  1124. pseudo_bit_t Delay[20];
  1125. pseudo_bit_t Reserved[1];
  1126. pseudo_bit_t _unused_0[32];
  1127. };
  1128. struct QIB_7220_LAControlReg {
  1129. PSEUDO_BIT_STRUCT ( struct QIB_7220_LAControlReg_pb );
  1130. };
  1131. #define QIB_7220_GPIODebugSelReg_offset 0x00000470UL
  1132. struct QIB_7220_GPIODebugSelReg_pb {
  1133. pseudo_bit_t GPIOSourceSelDebug[16];
  1134. pseudo_bit_t SelPulse[16];
  1135. pseudo_bit_t _unused_0[32];
  1136. };
  1137. struct QIB_7220_GPIODebugSelReg {
  1138. PSEUDO_BIT_STRUCT ( struct QIB_7220_GPIODebugSelReg_pb );
  1139. };
  1140. #define QIB_7220_DebugPortValueReg_offset 0x00000478UL
  1141. #define QIB_7220_SendDmaBufUsed0_offset 0x00000480UL
  1142. struct QIB_7220_SendDmaBufUsed0_pb {
  1143. pseudo_bit_t BufUsed_63_0[0];
  1144. pseudo_bit_t _unused_0[64];
  1145. };
  1146. struct QIB_7220_SendDmaBufUsed0 {
  1147. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaBufUsed0_pb );
  1148. };
  1149. #define QIB_7220_SendDmaReqTagUsed_offset 0x00000498UL
  1150. struct QIB_7220_SendDmaReqTagUsed_pb {
  1151. pseudo_bit_t ReqTagUsed_7_0[8];
  1152. pseudo_bit_t _unused_0[8];
  1153. pseudo_bit_t Reserved[48];
  1154. };
  1155. struct QIB_7220_SendDmaReqTagUsed {
  1156. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendDmaReqTagUsed_pb );
  1157. };
  1158. #define QIB_7220_efuse_pgm_data0_offset 0x000004a0UL
  1159. #define QIB_7220_MEM_0004B0_offset 0x000004b0UL
  1160. #define QIB_7220_SerDes_DDSRXEQ0_offset 0x00000500UL
  1161. struct QIB_7220_SerDes_DDSRXEQ0_pb {
  1162. pseudo_bit_t element_num[4];
  1163. pseudo_bit_t reg_addr[6];
  1164. pseudo_bit_t _unused_0[54];
  1165. };
  1166. struct QIB_7220_SerDes_DDSRXEQ0 {
  1167. PSEUDO_BIT_STRUCT ( struct QIB_7220_SerDes_DDSRXEQ0_pb );
  1168. };
  1169. #define QIB_7220_MEM_0005F0_offset 0x000005f0UL
  1170. #define QIB_7220_LAMemory_offset 0x00000600UL
  1171. #define QIB_7220_MEM_0007F0_offset 0x000007f0UL
  1172. #define QIB_7220_SendBufAvail0_offset 0x00001000UL
  1173. struct QIB_7220_SendBufAvail0_pb {
  1174. pseudo_bit_t SendBuf_31_0[0];
  1175. pseudo_bit_t _unused_0[64];
  1176. };
  1177. struct QIB_7220_SendBufAvail0 {
  1178. PSEUDO_BIT_STRUCT ( struct QIB_7220_SendBufAvail0_pb );
  1179. };
  1180. #define QIB_7220_MEM_001028_offset 0x00001028UL
  1181. #define QIB_7220_LBIntCnt_offset 0x00013000UL
  1182. #define QIB_7220_LBFlowStallCnt_offset 0x00013008UL
  1183. #define QIB_7220_TxSDmaDescCnt_offset 0x00013010UL
  1184. #define QIB_7220_TxUnsupVLErrCnt_offset 0x00013018UL
  1185. #define QIB_7220_TxDataPktCnt_offset 0x00013020UL
  1186. #define QIB_7220_TxFlowPktCnt_offset 0x00013028UL
  1187. #define QIB_7220_TxDwordCnt_offset 0x00013030UL
  1188. #define QIB_7220_TxLenErrCnt_offset 0x00013038UL
  1189. #define QIB_7220_TxMaxMinLenErrCnt_offset 0x00013040UL
  1190. #define QIB_7220_TxUnderrunCnt_offset 0x00013048UL
  1191. #define QIB_7220_TxFlowStallCnt_offset 0x00013050UL
  1192. #define QIB_7220_TxDroppedPktCnt_offset 0x00013058UL
  1193. #define QIB_7220_RxDroppedPktCnt_offset 0x00013060UL
  1194. #define QIB_7220_RxDataPktCnt_offset 0x00013068UL
  1195. #define QIB_7220_RxFlowPktCnt_offset 0x00013070UL
  1196. #define QIB_7220_RxDwordCnt_offset 0x00013078UL
  1197. #define QIB_7220_RxLenErrCnt_offset 0x00013080UL
  1198. #define QIB_7220_RxMaxMinLenErrCnt_offset 0x00013088UL
  1199. #define QIB_7220_RxICRCErrCnt_offset 0x00013090UL
  1200. #define QIB_7220_RxVCRCErrCnt_offset 0x00013098UL
  1201. #define QIB_7220_RxFlowCtrlViolCnt_offset 0x000130a0UL
  1202. #define QIB_7220_RxVersionErrCnt_offset 0x000130a8UL
  1203. #define QIB_7220_RxLinkMalformCnt_offset 0x000130b0UL
  1204. #define QIB_7220_RxEBPCnt_offset 0x000130b8UL
  1205. #define QIB_7220_RxLPCRCErrCnt_offset 0x000130c0UL
  1206. #define QIB_7220_RxBufOvflCnt_offset 0x000130c8UL
  1207. #define QIB_7220_RxTIDFullErrCnt_offset 0x000130d0UL
  1208. #define QIB_7220_RxTIDValidErrCnt_offset 0x000130d8UL
  1209. #define QIB_7220_RxPKeyMismatchCnt_offset 0x000130e0UL
  1210. #define QIB_7220_RxP0HdrEgrOvflCnt_offset 0x000130e8UL
  1211. #define QIB_7220_IBStatusChangeCnt_offset 0x00013170UL
  1212. #define QIB_7220_IBLinkErrRecoveryCnt_offset 0x00013178UL
  1213. #define QIB_7220_IBLinkDownedCnt_offset 0x00013180UL
  1214. #define QIB_7220_IBSymbolErrCnt_offset 0x00013188UL
  1215. #define QIB_7220_RxVL15DroppedPktCnt_offset 0x00013190UL
  1216. #define QIB_7220_RxOtherLocalPhyErrCnt_offset 0x00013198UL
  1217. #define QIB_7220_PcieRetryBufDiagQwordCnt_offset 0x000131a0UL
  1218. #define QIB_7220_ExcessBufferOvflCnt_offset 0x000131a8UL
  1219. #define QIB_7220_LocalLinkIntegrityErrCnt_offset 0x000131b0UL
  1220. #define QIB_7220_RxVlErrCnt_offset 0x000131b8UL
  1221. #define QIB_7220_RxDlidFltrCnt_offset 0x000131c0UL
  1222. #define QIB_7220_CNT_0131C8_offset 0x000131c8UL
  1223. #define QIB_7220_PSStat_offset 0x00013200UL
  1224. #define QIB_7220_PSStart_offset 0x00013208UL
  1225. #define QIB_7220_PSInterval_offset 0x00013210UL
  1226. #define QIB_7220_PSRcvDataCount_offset 0x00013218UL
  1227. #define QIB_7220_PSRcvPktsCount_offset 0x00013220UL
  1228. #define QIB_7220_PSXmitDataCount_offset 0x00013228UL
  1229. #define QIB_7220_PSXmitPktsCount_offset 0x00013230UL
  1230. #define QIB_7220_PSXmitWaitCount_offset 0x00013238UL
  1231. #define QIB_7220_CNT_013240_offset 0x00013240UL
  1232. #define QIB_7220_RcvEgrArray_offset 0x00014000UL
  1233. #define QIB_7220_MEM_038000_offset 0x00038000UL
  1234. #define QIB_7220_RcvTIDArray0_offset 0x00053000UL
  1235. #define QIB_7220_PIOLaunchFIFO_offset 0x00064000UL
  1236. #define QIB_7220_MEM_064480_offset 0x00064480UL
  1237. #define QIB_7220_SendPIOpbcCache_offset 0x00064800UL
  1238. #define QIB_7220_MEM_064C80_offset 0x00064c80UL
  1239. #define QIB_7220_PreLaunchFIFO_offset 0x00065000UL
  1240. #define QIB_7220_MEM_065080_offset 0x00065080UL
  1241. #define QIB_7220_ScoreBoard_offset 0x00065400UL
  1242. #define QIB_7220_MEM_065440_offset 0x00065440UL
  1243. #define QIB_7220_DescriptorFIFO_offset 0x00065800UL
  1244. #define QIB_7220_MEM_065880_offset 0x00065880UL
  1245. #define QIB_7220_RcvBuf1_offset 0x00072000UL
  1246. #define QIB_7220_MEM_074800_offset 0x00074800UL
  1247. #define QIB_7220_RcvBuf2_offset 0x00075000UL
  1248. #define QIB_7220_MEM_076400_offset 0x00076400UL
  1249. #define QIB_7220_RcvFlags_offset 0x00077000UL
  1250. #define QIB_7220_MEM_078400_offset 0x00078400UL
  1251. #define QIB_7220_RcvLookupBuf1_offset 0x00079000UL
  1252. #define QIB_7220_MEM_07A400_offset 0x0007a400UL
  1253. #define QIB_7220_RcvDMADatBuf_offset 0x0007b000UL
  1254. #define QIB_7220_RcvDMAHdrBuf_offset 0x0007b800UL
  1255. #define QIB_7220_MiscRXEIntMem_offset 0x0007c000UL
  1256. #define QIB_7220_MEM_07D400_offset 0x0007d400UL
  1257. #define QIB_7220_PCIERcvBuf_offset 0x00080000UL
  1258. #define QIB_7220_PCIERetryBuf_offset 0x00084000UL
  1259. #define QIB_7220_PCIERcvBufRdToWrAddr_offset 0x00088000UL
  1260. #define QIB_7220_PCIECplBuf_offset 0x00090000UL
  1261. #define QIB_7220_IBSerDesMappTable_offset 0x00094000UL
  1262. #define QIB_7220_MEM_095000_offset 0x00095000UL
  1263. #define QIB_7220_SendBuf0_MA_offset 0x00100000UL
  1264. #define QIB_7220_MEM_1A0000_offset 0x001a0000UL
  1265. #define QIB_7220_RcvHdrTail0_offset 0x00200000UL
  1266. #define QIB_7220_RcvHdrHead0_offset 0x00200008UL
  1267. struct QIB_7220_RcvHdrHead0_pb {
  1268. pseudo_bit_t RcvHeadPointer[32];
  1269. pseudo_bit_t counter[16];
  1270. pseudo_bit_t Reserved[16];
  1271. };
  1272. struct QIB_7220_RcvHdrHead0 {
  1273. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead0_pb );
  1274. };
  1275. #define QIB_7220_RcvEgrIndexTail0_offset 0x00200010UL
  1276. #define QIB_7220_RcvEgrIndexHead0_offset 0x00200018UL
  1277. #define QIB_7220_MEM_200020_offset 0x00200020UL
  1278. #define QIB_7220_RcvHdrTail1_offset 0x00210000UL
  1279. #define QIB_7220_RcvHdrHead1_offset 0x00210008UL
  1280. struct QIB_7220_RcvHdrHead1_pb {
  1281. pseudo_bit_t RcvHeadPointer[32];
  1282. pseudo_bit_t counter[16];
  1283. pseudo_bit_t Reserved[16];
  1284. };
  1285. struct QIB_7220_RcvHdrHead1 {
  1286. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead1_pb );
  1287. };
  1288. #define QIB_7220_RcvEgrIndexTail1_offset 0x00210010UL
  1289. #define QIB_7220_RcvEgrIndexHead1_offset 0x00210018UL
  1290. #define QIB_7220_MEM_210020_offset 0x00210020UL
  1291. #define QIB_7220_RcvHdrTail2_offset 0x00220000UL
  1292. #define QIB_7220_RcvHdrHead2_offset 0x00220008UL
  1293. struct QIB_7220_RcvHdrHead2_pb {
  1294. pseudo_bit_t RcvHeadPointer[32];
  1295. pseudo_bit_t counter[16];
  1296. pseudo_bit_t Reserved[16];
  1297. };
  1298. struct QIB_7220_RcvHdrHead2 {
  1299. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead2_pb );
  1300. };
  1301. #define QIB_7220_RcvEgrIndexTail2_offset 0x00220010UL
  1302. #define QIB_7220_RcvEgrIndexHead2_offset 0x00220018UL
  1303. #define QIB_7220_MEM_220020_offset 0x00220020UL
  1304. #define QIB_7220_RcvHdrTail3_offset 0x00230000UL
  1305. #define QIB_7220_RcvHdrHead3_offset 0x00230008UL
  1306. struct QIB_7220_RcvHdrHead3_pb {
  1307. pseudo_bit_t RcvHeadPointer[32];
  1308. pseudo_bit_t counter[16];
  1309. pseudo_bit_t Reserved[16];
  1310. };
  1311. struct QIB_7220_RcvHdrHead3 {
  1312. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead3_pb );
  1313. };
  1314. #define QIB_7220_RcvEgrIndexTail3_offset 0x00230010UL
  1315. #define QIB_7220_RcvEgrIndexHead3_offset 0x00230018UL
  1316. #define QIB_7220_MEM_230020_offset 0x00230020UL
  1317. #define QIB_7220_RcvHdrTail4_offset 0x00240000UL
  1318. #define QIB_7220_RcvHdrHead4_offset 0x00240008UL
  1319. struct QIB_7220_RcvHdrHead4_pb {
  1320. pseudo_bit_t RcvHeadPointer[32];
  1321. pseudo_bit_t counter[16];
  1322. pseudo_bit_t Reserved[16];
  1323. };
  1324. struct QIB_7220_RcvHdrHead4 {
  1325. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead4_pb );
  1326. };
  1327. #define QIB_7220_RcvEgrIndexTail4_offset 0x00240010UL
  1328. #define QIB_7220_RcvEgrIndexHead4_offset 0x00240018UL
  1329. #define QIB_7220_MEM_240020_offset 0x00240020UL
  1330. #define QIB_7220_RcvHdrTail5_offset 0x00250000UL
  1331. #define QIB_7220_RcvHdrHead5_offset 0x00250008UL
  1332. struct QIB_7220_RcvHdrHead5_pb {
  1333. pseudo_bit_t RcvHeadPointer[32];
  1334. pseudo_bit_t counter[16];
  1335. pseudo_bit_t Reserved[16];
  1336. };
  1337. struct QIB_7220_RcvHdrHead5 {
  1338. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead5_pb );
  1339. };
  1340. #define QIB_7220_RcvEgrIndexTail5_offset 0x00250010UL
  1341. #define QIB_7220_RcvEgrIndexHead5_offset 0x00250018UL
  1342. #define QIB_7220_MEM_250020_offset 0x00250020UL
  1343. #define QIB_7220_RcvHdrTail6_offset 0x00260000UL
  1344. #define QIB_7220_RcvHdrHead6_offset 0x00260008UL
  1345. struct QIB_7220_RcvHdrHead6_pb {
  1346. pseudo_bit_t RcvHeadPointer[32];
  1347. pseudo_bit_t counter[16];
  1348. pseudo_bit_t Reserved[16];
  1349. };
  1350. struct QIB_7220_RcvHdrHead6 {
  1351. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead6_pb );
  1352. };
  1353. #define QIB_7220_RcvEgrIndexTail6_offset 0x00260010UL
  1354. #define QIB_7220_RcvEgrIndexHead6_offset 0x00260018UL
  1355. #define QIB_7220_MEM_260020_offset 0x00260020UL
  1356. #define QIB_7220_RcvHdrTail7_offset 0x00270000UL
  1357. #define QIB_7220_RcvHdrHead7_offset 0x00270008UL
  1358. struct QIB_7220_RcvHdrHead7_pb {
  1359. pseudo_bit_t RcvHeadPointer[32];
  1360. pseudo_bit_t counter[16];
  1361. pseudo_bit_t Reserved[16];
  1362. };
  1363. struct QIB_7220_RcvHdrHead7 {
  1364. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead7_pb );
  1365. };
  1366. #define QIB_7220_RcvEgrIndexTail7_offset 0x00270010UL
  1367. #define QIB_7220_RcvEgrIndexHead7_offset 0x00270018UL
  1368. #define QIB_7220_MEM_270020_offset 0x00270020UL
  1369. #define QIB_7220_RcvHdrTail8_offset 0x00280000UL
  1370. #define QIB_7220_RcvHdrHead8_offset 0x00280008UL
  1371. struct QIB_7220_RcvHdrHead8_pb {
  1372. pseudo_bit_t RcvHeadPointer[32];
  1373. pseudo_bit_t counter[16];
  1374. pseudo_bit_t Reserved[16];
  1375. };
  1376. struct QIB_7220_RcvHdrHead8 {
  1377. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead8_pb );
  1378. };
  1379. #define QIB_7220_RcvEgrIndexTail8_offset 0x00280010UL
  1380. #define QIB_7220_RcvEgrIndexHead8_offset 0x00280018UL
  1381. #define QIB_7220_MEM_280020_offset 0x00280020UL
  1382. #define QIB_7220_RcvHdrTail9_offset 0x00290000UL
  1383. #define QIB_7220_RcvHdrHead9_offset 0x00290008UL
  1384. struct QIB_7220_RcvHdrHead9_pb {
  1385. pseudo_bit_t RcvHeadPointer[32];
  1386. pseudo_bit_t counter[16];
  1387. pseudo_bit_t Reserved[16];
  1388. };
  1389. struct QIB_7220_RcvHdrHead9 {
  1390. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead9_pb );
  1391. };
  1392. #define QIB_7220_RcvEgrIndexTail9_offset 0x00290010UL
  1393. #define QIB_7220_RcvEgrIndexHead9_offset 0x00290018UL
  1394. #define QIB_7220_MEM_290020_offset 0x00290020UL
  1395. #define QIB_7220_RcvHdrTail10_offset 0x002a0000UL
  1396. #define QIB_7220_RcvHdrHead10_offset 0x002a0008UL
  1397. struct QIB_7220_RcvHdrHead10_pb {
  1398. pseudo_bit_t RcvHeadPointer[32];
  1399. pseudo_bit_t counter[16];
  1400. pseudo_bit_t Reserved[16];
  1401. };
  1402. struct QIB_7220_RcvHdrHead10 {
  1403. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead10_pb );
  1404. };
  1405. #define QIB_7220_RcvEgrIndexTail10_offset 0x002a0010UL
  1406. #define QIB_7220_RcvEgrIndexHead10_offset 0x002a0018UL
  1407. #define QIB_7220_MEM_2A0020_offset 0x002a0020UL
  1408. #define QIB_7220_RcvHdrTail11_offset 0x002b0000UL
  1409. #define QIB_7220_RcvHdrHead11_offset 0x002b0008UL
  1410. struct QIB_7220_RcvHdrHead11_pb {
  1411. pseudo_bit_t RcvHeadPointer[32];
  1412. pseudo_bit_t counter[16];
  1413. pseudo_bit_t Reserved[16];
  1414. };
  1415. struct QIB_7220_RcvHdrHead11 {
  1416. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead11_pb );
  1417. };
  1418. #define QIB_7220_RcvEgrIndexTail11_offset 0x002b0010UL
  1419. #define QIB_7220_RcvEgrIndexHead11_offset 0x002b0018UL
  1420. #define QIB_7220_MEM_2B0020_offset 0x002b0020UL
  1421. #define QIB_7220_RcvHdrTail12_offset 0x002c0000UL
  1422. #define QIB_7220_RcvHdrHead12_offset 0x002c0008UL
  1423. struct QIB_7220_RcvHdrHead12_pb {
  1424. pseudo_bit_t RcvHeadPointer[32];
  1425. pseudo_bit_t counter[16];
  1426. pseudo_bit_t Reserved[16];
  1427. };
  1428. struct QIB_7220_RcvHdrHead12 {
  1429. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead12_pb );
  1430. };
  1431. #define QIB_7220_RcvEgrIndexTail12_offset 0x002c0010UL
  1432. #define QIB_7220_RcvEgrIndexHead12_offset 0x002c0018UL
  1433. #define QIB_7220_MEM_2C0020_offset 0x002c0020UL
  1434. #define QIB_7220_RcvHdrTail13_offset 0x002d0000UL
  1435. #define QIB_7220_RcvHdrHead13_offset 0x002d0008UL
  1436. struct QIB_7220_RcvHdrHead13_pb {
  1437. pseudo_bit_t RcvHeadPointer[32];
  1438. pseudo_bit_t counter[16];
  1439. pseudo_bit_t Reserved[16];
  1440. };
  1441. struct QIB_7220_RcvHdrHead13 {
  1442. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead13_pb );
  1443. };
  1444. #define QIB_7220_RcvEgrIndexTail13_offset 0x002d0010UL
  1445. #define QIB_7220_RcvEgrIndexHead13_offset 0x002d0018UL
  1446. #define QIB_7220_MEM_2D0020_offset 0x002d0020UL
  1447. #define QIB_7220_RcvHdrTail14_offset 0x002e0000UL
  1448. #define QIB_7220_RcvHdrHead14_offset 0x002e0008UL
  1449. struct QIB_7220_RcvHdrHead14_pb {
  1450. pseudo_bit_t RcvHeadPointer[32];
  1451. pseudo_bit_t counter[16];
  1452. pseudo_bit_t Reserved[16];
  1453. };
  1454. struct QIB_7220_RcvHdrHead14 {
  1455. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead14_pb );
  1456. };
  1457. #define QIB_7220_RcvEgrIndexTail14_offset 0x002e0010UL
  1458. #define QIB_7220_RcvEgrIndexHead14_offset 0x002e0018UL
  1459. #define QIB_7220_MEM_2E0020_offset 0x002e0020UL
  1460. #define QIB_7220_RcvHdrTail15_offset 0x002f0000UL
  1461. #define QIB_7220_RcvHdrHead15_offset 0x002f0008UL
  1462. struct QIB_7220_RcvHdrHead15_pb {
  1463. pseudo_bit_t RcvHeadPointer[32];
  1464. pseudo_bit_t counter[16];
  1465. pseudo_bit_t Reserved[16];
  1466. };
  1467. struct QIB_7220_RcvHdrHead15 {
  1468. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead15_pb );
  1469. };
  1470. #define QIB_7220_RcvEgrIndexTail15_offset 0x002f0010UL
  1471. #define QIB_7220_RcvEgrIndexHead15_offset 0x002f0018UL
  1472. #define QIB_7220_MEM_2F0020_offset 0x002f0020UL
  1473. #define QIB_7220_RcvHdrTail16_offset 0x00300000UL
  1474. #define QIB_7220_RcvHdrHead16_offset 0x00300008UL
  1475. struct QIB_7220_RcvHdrHead16_pb {
  1476. pseudo_bit_t RcvHeadPointer[32];
  1477. pseudo_bit_t counter[16];
  1478. pseudo_bit_t Reserved[16];
  1479. };
  1480. struct QIB_7220_RcvHdrHead16 {
  1481. PSEUDO_BIT_STRUCT ( struct QIB_7220_RcvHdrHead16_pb );
  1482. };
  1483. #define QIB_7220_RcvEgrIndexTail16_offset 0x00300010UL
  1484. #define QIB_7220_RcvEgrIndexHead16_offset 0x00300018UL
  1485. #define QIB_7220_MEM_300020_offset 0x00300020UL