cvmx-pcieep-defs.h 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365
  1. /***********************license start***************
  2. * Author: Cavium Networks
  3. *
  4. * Contact: support@caviumnetworks.com
  5. * This file is part of the OCTEON SDK
  6. *
  7. * Copyright (c) 2003-2008 Cavium Networks
  8. *
  9. * This file is free software; you can redistribute it and/or modify
  10. * it under the terms of the GNU General Public License, Version 2, as
  11. * published by the Free Software Foundation.
  12. *
  13. * This file is distributed in the hope that it will be useful, but
  14. * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
  15. * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
  16. * NONINFRINGEMENT. See the GNU General Public License for more
  17. * details.
  18. *
  19. * You should have received a copy of the GNU General Public License
  20. * along with this file; if not, write to the Free Software
  21. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  22. * or visit http://www.gnu.org/licenses/.
  23. *
  24. * This file may also be available under a different license from Cavium.
  25. * Contact Cavium Networks for more information
  26. ***********************license end**************************************/
  27. #ifndef __CVMX_PCIEEP_DEFS_H__
  28. #define __CVMX_PCIEEP_DEFS_H__
  29. #define CVMX_PCIEEP_CFG000 \
  30. (0x0000000000000000ull)
  31. #define CVMX_PCIEEP_CFG001 \
  32. (0x0000000000000004ull)
  33. #define CVMX_PCIEEP_CFG002 \
  34. (0x0000000000000008ull)
  35. #define CVMX_PCIEEP_CFG003 \
  36. (0x000000000000000Cull)
  37. #define CVMX_PCIEEP_CFG004 \
  38. (0x0000000000000010ull)
  39. #define CVMX_PCIEEP_CFG004_MASK \
  40. (0x0000000080000010ull)
  41. #define CVMX_PCIEEP_CFG005 \
  42. (0x0000000000000014ull)
  43. #define CVMX_PCIEEP_CFG005_MASK \
  44. (0x0000000080000014ull)
  45. #define CVMX_PCIEEP_CFG006 \
  46. (0x0000000000000018ull)
  47. #define CVMX_PCIEEP_CFG006_MASK \
  48. (0x0000000080000018ull)
  49. #define CVMX_PCIEEP_CFG007 \
  50. (0x000000000000001Cull)
  51. #define CVMX_PCIEEP_CFG007_MASK \
  52. (0x000000008000001Cull)
  53. #define CVMX_PCIEEP_CFG008 \
  54. (0x0000000000000020ull)
  55. #define CVMX_PCIEEP_CFG008_MASK \
  56. (0x0000000080000020ull)
  57. #define CVMX_PCIEEP_CFG009 \
  58. (0x0000000000000024ull)
  59. #define CVMX_PCIEEP_CFG009_MASK \
  60. (0x0000000080000024ull)
  61. #define CVMX_PCIEEP_CFG010 \
  62. (0x0000000000000028ull)
  63. #define CVMX_PCIEEP_CFG011 \
  64. (0x000000000000002Cull)
  65. #define CVMX_PCIEEP_CFG012 \
  66. (0x0000000000000030ull)
  67. #define CVMX_PCIEEP_CFG012_MASK \
  68. (0x0000000080000030ull)
  69. #define CVMX_PCIEEP_CFG013 \
  70. (0x0000000000000034ull)
  71. #define CVMX_PCIEEP_CFG015 \
  72. (0x000000000000003Cull)
  73. #define CVMX_PCIEEP_CFG016 \
  74. (0x0000000000000040ull)
  75. #define CVMX_PCIEEP_CFG017 \
  76. (0x0000000000000044ull)
  77. #define CVMX_PCIEEP_CFG020 \
  78. (0x0000000000000050ull)
  79. #define CVMX_PCIEEP_CFG021 \
  80. (0x0000000000000054ull)
  81. #define CVMX_PCIEEP_CFG022 \
  82. (0x0000000000000058ull)
  83. #define CVMX_PCIEEP_CFG023 \
  84. (0x000000000000005Cull)
  85. #define CVMX_PCIEEP_CFG028 \
  86. (0x0000000000000070ull)
  87. #define CVMX_PCIEEP_CFG029 \
  88. (0x0000000000000074ull)
  89. #define CVMX_PCIEEP_CFG030 \
  90. (0x0000000000000078ull)
  91. #define CVMX_PCIEEP_CFG031 \
  92. (0x000000000000007Cull)
  93. #define CVMX_PCIEEP_CFG032 \
  94. (0x0000000000000080ull)
  95. #define CVMX_PCIEEP_CFG033 \
  96. (0x0000000000000084ull)
  97. #define CVMX_PCIEEP_CFG034 \
  98. (0x0000000000000088ull)
  99. #define CVMX_PCIEEP_CFG037 \
  100. (0x0000000000000094ull)
  101. #define CVMX_PCIEEP_CFG038 \
  102. (0x0000000000000098ull)
  103. #define CVMX_PCIEEP_CFG039 \
  104. (0x000000000000009Cull)
  105. #define CVMX_PCIEEP_CFG040 \
  106. (0x00000000000000A0ull)
  107. #define CVMX_PCIEEP_CFG041 \
  108. (0x00000000000000A4ull)
  109. #define CVMX_PCIEEP_CFG042 \
  110. (0x00000000000000A8ull)
  111. #define CVMX_PCIEEP_CFG064 \
  112. (0x0000000000000100ull)
  113. #define CVMX_PCIEEP_CFG065 \
  114. (0x0000000000000104ull)
  115. #define CVMX_PCIEEP_CFG066 \
  116. (0x0000000000000108ull)
  117. #define CVMX_PCIEEP_CFG067 \
  118. (0x000000000000010Cull)
  119. #define CVMX_PCIEEP_CFG068 \
  120. (0x0000000000000110ull)
  121. #define CVMX_PCIEEP_CFG069 \
  122. (0x0000000000000114ull)
  123. #define CVMX_PCIEEP_CFG070 \
  124. (0x0000000000000118ull)
  125. #define CVMX_PCIEEP_CFG071 \
  126. (0x000000000000011Cull)
  127. #define CVMX_PCIEEP_CFG072 \
  128. (0x0000000000000120ull)
  129. #define CVMX_PCIEEP_CFG073 \
  130. (0x0000000000000124ull)
  131. #define CVMX_PCIEEP_CFG074 \
  132. (0x0000000000000128ull)
  133. #define CVMX_PCIEEP_CFG448 \
  134. (0x0000000000000700ull)
  135. #define CVMX_PCIEEP_CFG449 \
  136. (0x0000000000000704ull)
  137. #define CVMX_PCIEEP_CFG450 \
  138. (0x0000000000000708ull)
  139. #define CVMX_PCIEEP_CFG451 \
  140. (0x000000000000070Cull)
  141. #define CVMX_PCIEEP_CFG452 \
  142. (0x0000000000000710ull)
  143. #define CVMX_PCIEEP_CFG453 \
  144. (0x0000000000000714ull)
  145. #define CVMX_PCIEEP_CFG454 \
  146. (0x0000000000000718ull)
  147. #define CVMX_PCIEEP_CFG455 \
  148. (0x000000000000071Cull)
  149. #define CVMX_PCIEEP_CFG456 \
  150. (0x0000000000000720ull)
  151. #define CVMX_PCIEEP_CFG458 \
  152. (0x0000000000000728ull)
  153. #define CVMX_PCIEEP_CFG459 \
  154. (0x000000000000072Cull)
  155. #define CVMX_PCIEEP_CFG460 \
  156. (0x0000000000000730ull)
  157. #define CVMX_PCIEEP_CFG461 \
  158. (0x0000000000000734ull)
  159. #define CVMX_PCIEEP_CFG462 \
  160. (0x0000000000000738ull)
  161. #define CVMX_PCIEEP_CFG463 \
  162. (0x000000000000073Cull)
  163. #define CVMX_PCIEEP_CFG464 \
  164. (0x0000000000000740ull)
  165. #define CVMX_PCIEEP_CFG465 \
  166. (0x0000000000000744ull)
  167. #define CVMX_PCIEEP_CFG466 \
  168. (0x0000000000000748ull)
  169. #define CVMX_PCIEEP_CFG467 \
  170. (0x000000000000074Cull)
  171. #define CVMX_PCIEEP_CFG468 \
  172. (0x0000000000000750ull)
  173. #define CVMX_PCIEEP_CFG490 \
  174. (0x00000000000007A8ull)
  175. #define CVMX_PCIEEP_CFG491 \
  176. (0x00000000000007ACull)
  177. #define CVMX_PCIEEP_CFG492 \
  178. (0x00000000000007B0ull)
  179. #define CVMX_PCIEEP_CFG516 \
  180. (0x0000000000000810ull)
  181. #define CVMX_PCIEEP_CFG517 \
  182. (0x0000000000000814ull)
  183. union cvmx_pcieep_cfg000 {
  184. uint32_t u32;
  185. struct cvmx_pcieep_cfg000_s {
  186. uint32_t devid:16;
  187. uint32_t vendid:16;
  188. } s;
  189. struct cvmx_pcieep_cfg000_s cn52xx;
  190. struct cvmx_pcieep_cfg000_s cn52xxp1;
  191. struct cvmx_pcieep_cfg000_s cn56xx;
  192. struct cvmx_pcieep_cfg000_s cn56xxp1;
  193. };
  194. union cvmx_pcieep_cfg001 {
  195. uint32_t u32;
  196. struct cvmx_pcieep_cfg001_s {
  197. uint32_t dpe:1;
  198. uint32_t sse:1;
  199. uint32_t rma:1;
  200. uint32_t rta:1;
  201. uint32_t sta:1;
  202. uint32_t devt:2;
  203. uint32_t mdpe:1;
  204. uint32_t fbb:1;
  205. uint32_t reserved_22_22:1;
  206. uint32_t m66:1;
  207. uint32_t cl:1;
  208. uint32_t i_stat:1;
  209. uint32_t reserved_11_18:8;
  210. uint32_t i_dis:1;
  211. uint32_t fbbe:1;
  212. uint32_t see:1;
  213. uint32_t ids_wcc:1;
  214. uint32_t per:1;
  215. uint32_t vps:1;
  216. uint32_t mwice:1;
  217. uint32_t scse:1;
  218. uint32_t me:1;
  219. uint32_t msae:1;
  220. uint32_t isae:1;
  221. } s;
  222. struct cvmx_pcieep_cfg001_s cn52xx;
  223. struct cvmx_pcieep_cfg001_s cn52xxp1;
  224. struct cvmx_pcieep_cfg001_s cn56xx;
  225. struct cvmx_pcieep_cfg001_s cn56xxp1;
  226. };
  227. union cvmx_pcieep_cfg002 {
  228. uint32_t u32;
  229. struct cvmx_pcieep_cfg002_s {
  230. uint32_t bcc:8;
  231. uint32_t sc:8;
  232. uint32_t pi:8;
  233. uint32_t rid:8;
  234. } s;
  235. struct cvmx_pcieep_cfg002_s cn52xx;
  236. struct cvmx_pcieep_cfg002_s cn52xxp1;
  237. struct cvmx_pcieep_cfg002_s cn56xx;
  238. struct cvmx_pcieep_cfg002_s cn56xxp1;
  239. };
  240. union cvmx_pcieep_cfg003 {
  241. uint32_t u32;
  242. struct cvmx_pcieep_cfg003_s {
  243. uint32_t bist:8;
  244. uint32_t mfd:1;
  245. uint32_t chf:7;
  246. uint32_t lt:8;
  247. uint32_t cls:8;
  248. } s;
  249. struct cvmx_pcieep_cfg003_s cn52xx;
  250. struct cvmx_pcieep_cfg003_s cn52xxp1;
  251. struct cvmx_pcieep_cfg003_s cn56xx;
  252. struct cvmx_pcieep_cfg003_s cn56xxp1;
  253. };
  254. union cvmx_pcieep_cfg004 {
  255. uint32_t u32;
  256. struct cvmx_pcieep_cfg004_s {
  257. uint32_t lbab:18;
  258. uint32_t reserved_4_13:10;
  259. uint32_t pf:1;
  260. uint32_t typ:2;
  261. uint32_t mspc:1;
  262. } s;
  263. struct cvmx_pcieep_cfg004_s cn52xx;
  264. struct cvmx_pcieep_cfg004_s cn52xxp1;
  265. struct cvmx_pcieep_cfg004_s cn56xx;
  266. struct cvmx_pcieep_cfg004_s cn56xxp1;
  267. };
  268. union cvmx_pcieep_cfg004_mask {
  269. uint32_t u32;
  270. struct cvmx_pcieep_cfg004_mask_s {
  271. uint32_t lmask:31;
  272. uint32_t enb:1;
  273. } s;
  274. struct cvmx_pcieep_cfg004_mask_s cn52xx;
  275. struct cvmx_pcieep_cfg004_mask_s cn52xxp1;
  276. struct cvmx_pcieep_cfg004_mask_s cn56xx;
  277. struct cvmx_pcieep_cfg004_mask_s cn56xxp1;
  278. };
  279. union cvmx_pcieep_cfg005 {
  280. uint32_t u32;
  281. struct cvmx_pcieep_cfg005_s {
  282. uint32_t ubab:32;
  283. } s;
  284. struct cvmx_pcieep_cfg005_s cn52xx;
  285. struct cvmx_pcieep_cfg005_s cn52xxp1;
  286. struct cvmx_pcieep_cfg005_s cn56xx;
  287. struct cvmx_pcieep_cfg005_s cn56xxp1;
  288. };
  289. union cvmx_pcieep_cfg005_mask {
  290. uint32_t u32;
  291. struct cvmx_pcieep_cfg005_mask_s {
  292. uint32_t umask:32;
  293. } s;
  294. struct cvmx_pcieep_cfg005_mask_s cn52xx;
  295. struct cvmx_pcieep_cfg005_mask_s cn52xxp1;
  296. struct cvmx_pcieep_cfg005_mask_s cn56xx;
  297. struct cvmx_pcieep_cfg005_mask_s cn56xxp1;
  298. };
  299. union cvmx_pcieep_cfg006 {
  300. uint32_t u32;
  301. struct cvmx_pcieep_cfg006_s {
  302. uint32_t lbab:6;
  303. uint32_t reserved_4_25:22;
  304. uint32_t pf:1;
  305. uint32_t typ:2;
  306. uint32_t mspc:1;
  307. } s;
  308. struct cvmx_pcieep_cfg006_s cn52xx;
  309. struct cvmx_pcieep_cfg006_s cn52xxp1;
  310. struct cvmx_pcieep_cfg006_s cn56xx;
  311. struct cvmx_pcieep_cfg006_s cn56xxp1;
  312. };
  313. union cvmx_pcieep_cfg006_mask {
  314. uint32_t u32;
  315. struct cvmx_pcieep_cfg006_mask_s {
  316. uint32_t lmask:31;
  317. uint32_t enb:1;
  318. } s;
  319. struct cvmx_pcieep_cfg006_mask_s cn52xx;
  320. struct cvmx_pcieep_cfg006_mask_s cn52xxp1;
  321. struct cvmx_pcieep_cfg006_mask_s cn56xx;
  322. struct cvmx_pcieep_cfg006_mask_s cn56xxp1;
  323. };
  324. union cvmx_pcieep_cfg007 {
  325. uint32_t u32;
  326. struct cvmx_pcieep_cfg007_s {
  327. uint32_t ubab:32;
  328. } s;
  329. struct cvmx_pcieep_cfg007_s cn52xx;
  330. struct cvmx_pcieep_cfg007_s cn52xxp1;
  331. struct cvmx_pcieep_cfg007_s cn56xx;
  332. struct cvmx_pcieep_cfg007_s cn56xxp1;
  333. };
  334. union cvmx_pcieep_cfg007_mask {
  335. uint32_t u32;
  336. struct cvmx_pcieep_cfg007_mask_s {
  337. uint32_t umask:32;
  338. } s;
  339. struct cvmx_pcieep_cfg007_mask_s cn52xx;
  340. struct cvmx_pcieep_cfg007_mask_s cn52xxp1;
  341. struct cvmx_pcieep_cfg007_mask_s cn56xx;
  342. struct cvmx_pcieep_cfg007_mask_s cn56xxp1;
  343. };
  344. union cvmx_pcieep_cfg008 {
  345. uint32_t u32;
  346. struct cvmx_pcieep_cfg008_s {
  347. uint32_t reserved_4_31:28;
  348. uint32_t pf:1;
  349. uint32_t typ:2;
  350. uint32_t mspc:1;
  351. } s;
  352. struct cvmx_pcieep_cfg008_s cn52xx;
  353. struct cvmx_pcieep_cfg008_s cn52xxp1;
  354. struct cvmx_pcieep_cfg008_s cn56xx;
  355. struct cvmx_pcieep_cfg008_s cn56xxp1;
  356. };
  357. union cvmx_pcieep_cfg008_mask {
  358. uint32_t u32;
  359. struct cvmx_pcieep_cfg008_mask_s {
  360. uint32_t lmask:31;
  361. uint32_t enb:1;
  362. } s;
  363. struct cvmx_pcieep_cfg008_mask_s cn52xx;
  364. struct cvmx_pcieep_cfg008_mask_s cn52xxp1;
  365. struct cvmx_pcieep_cfg008_mask_s cn56xx;
  366. struct cvmx_pcieep_cfg008_mask_s cn56xxp1;
  367. };
  368. union cvmx_pcieep_cfg009 {
  369. uint32_t u32;
  370. struct cvmx_pcieep_cfg009_s {
  371. uint32_t ubab:25;
  372. uint32_t reserved_0_6:7;
  373. } s;
  374. struct cvmx_pcieep_cfg009_s cn52xx;
  375. struct cvmx_pcieep_cfg009_s cn52xxp1;
  376. struct cvmx_pcieep_cfg009_s cn56xx;
  377. struct cvmx_pcieep_cfg009_s cn56xxp1;
  378. };
  379. union cvmx_pcieep_cfg009_mask {
  380. uint32_t u32;
  381. struct cvmx_pcieep_cfg009_mask_s {
  382. uint32_t umask:32;
  383. } s;
  384. struct cvmx_pcieep_cfg009_mask_s cn52xx;
  385. struct cvmx_pcieep_cfg009_mask_s cn52xxp1;
  386. struct cvmx_pcieep_cfg009_mask_s cn56xx;
  387. struct cvmx_pcieep_cfg009_mask_s cn56xxp1;
  388. };
  389. union cvmx_pcieep_cfg010 {
  390. uint32_t u32;
  391. struct cvmx_pcieep_cfg010_s {
  392. uint32_t cisp:32;
  393. } s;
  394. struct cvmx_pcieep_cfg010_s cn52xx;
  395. struct cvmx_pcieep_cfg010_s cn52xxp1;
  396. struct cvmx_pcieep_cfg010_s cn56xx;
  397. struct cvmx_pcieep_cfg010_s cn56xxp1;
  398. };
  399. union cvmx_pcieep_cfg011 {
  400. uint32_t u32;
  401. struct cvmx_pcieep_cfg011_s {
  402. uint32_t ssid:16;
  403. uint32_t ssvid:16;
  404. } s;
  405. struct cvmx_pcieep_cfg011_s cn52xx;
  406. struct cvmx_pcieep_cfg011_s cn52xxp1;
  407. struct cvmx_pcieep_cfg011_s cn56xx;
  408. struct cvmx_pcieep_cfg011_s cn56xxp1;
  409. };
  410. union cvmx_pcieep_cfg012 {
  411. uint32_t u32;
  412. struct cvmx_pcieep_cfg012_s {
  413. uint32_t eraddr:16;
  414. uint32_t reserved_1_15:15;
  415. uint32_t er_en:1;
  416. } s;
  417. struct cvmx_pcieep_cfg012_s cn52xx;
  418. struct cvmx_pcieep_cfg012_s cn52xxp1;
  419. struct cvmx_pcieep_cfg012_s cn56xx;
  420. struct cvmx_pcieep_cfg012_s cn56xxp1;
  421. };
  422. union cvmx_pcieep_cfg012_mask {
  423. uint32_t u32;
  424. struct cvmx_pcieep_cfg012_mask_s {
  425. uint32_t mask:31;
  426. uint32_t enb:1;
  427. } s;
  428. struct cvmx_pcieep_cfg012_mask_s cn52xx;
  429. struct cvmx_pcieep_cfg012_mask_s cn52xxp1;
  430. struct cvmx_pcieep_cfg012_mask_s cn56xx;
  431. struct cvmx_pcieep_cfg012_mask_s cn56xxp1;
  432. };
  433. union cvmx_pcieep_cfg013 {
  434. uint32_t u32;
  435. struct cvmx_pcieep_cfg013_s {
  436. uint32_t reserved_8_31:24;
  437. uint32_t cp:8;
  438. } s;
  439. struct cvmx_pcieep_cfg013_s cn52xx;
  440. struct cvmx_pcieep_cfg013_s cn52xxp1;
  441. struct cvmx_pcieep_cfg013_s cn56xx;
  442. struct cvmx_pcieep_cfg013_s cn56xxp1;
  443. };
  444. union cvmx_pcieep_cfg015 {
  445. uint32_t u32;
  446. struct cvmx_pcieep_cfg015_s {
  447. uint32_t ml:8;
  448. uint32_t mg:8;
  449. uint32_t inta:8;
  450. uint32_t il:8;
  451. } s;
  452. struct cvmx_pcieep_cfg015_s cn52xx;
  453. struct cvmx_pcieep_cfg015_s cn52xxp1;
  454. struct cvmx_pcieep_cfg015_s cn56xx;
  455. struct cvmx_pcieep_cfg015_s cn56xxp1;
  456. };
  457. union cvmx_pcieep_cfg016 {
  458. uint32_t u32;
  459. struct cvmx_pcieep_cfg016_s {
  460. uint32_t pmes:5;
  461. uint32_t d2s:1;
  462. uint32_t d1s:1;
  463. uint32_t auxc:3;
  464. uint32_t dsi:1;
  465. uint32_t reserved_20_20:1;
  466. uint32_t pme_clock:1;
  467. uint32_t pmsv:3;
  468. uint32_t ncp:8;
  469. uint32_t pmcid:8;
  470. } s;
  471. struct cvmx_pcieep_cfg016_s cn52xx;
  472. struct cvmx_pcieep_cfg016_s cn52xxp1;
  473. struct cvmx_pcieep_cfg016_s cn56xx;
  474. struct cvmx_pcieep_cfg016_s cn56xxp1;
  475. };
  476. union cvmx_pcieep_cfg017 {
  477. uint32_t u32;
  478. struct cvmx_pcieep_cfg017_s {
  479. uint32_t pmdia:8;
  480. uint32_t bpccee:1;
  481. uint32_t bd3h:1;
  482. uint32_t reserved_16_21:6;
  483. uint32_t pmess:1;
  484. uint32_t pmedsia:2;
  485. uint32_t pmds:4;
  486. uint32_t pmeens:1;
  487. uint32_t reserved_4_7:4;
  488. uint32_t nsr:1;
  489. uint32_t reserved_2_2:1;
  490. uint32_t ps:2;
  491. } s;
  492. struct cvmx_pcieep_cfg017_s cn52xx;
  493. struct cvmx_pcieep_cfg017_s cn52xxp1;
  494. struct cvmx_pcieep_cfg017_s cn56xx;
  495. struct cvmx_pcieep_cfg017_s cn56xxp1;
  496. };
  497. union cvmx_pcieep_cfg020 {
  498. uint32_t u32;
  499. struct cvmx_pcieep_cfg020_s {
  500. uint32_t reserved_24_31:8;
  501. uint32_t m64:1;
  502. uint32_t mme:3;
  503. uint32_t mmc:3;
  504. uint32_t msien:1;
  505. uint32_t ncp:8;
  506. uint32_t msicid:8;
  507. } s;
  508. struct cvmx_pcieep_cfg020_s cn52xx;
  509. struct cvmx_pcieep_cfg020_s cn52xxp1;
  510. struct cvmx_pcieep_cfg020_s cn56xx;
  511. struct cvmx_pcieep_cfg020_s cn56xxp1;
  512. };
  513. union cvmx_pcieep_cfg021 {
  514. uint32_t u32;
  515. struct cvmx_pcieep_cfg021_s {
  516. uint32_t lmsi:30;
  517. uint32_t reserved_0_1:2;
  518. } s;
  519. struct cvmx_pcieep_cfg021_s cn52xx;
  520. struct cvmx_pcieep_cfg021_s cn52xxp1;
  521. struct cvmx_pcieep_cfg021_s cn56xx;
  522. struct cvmx_pcieep_cfg021_s cn56xxp1;
  523. };
  524. union cvmx_pcieep_cfg022 {
  525. uint32_t u32;
  526. struct cvmx_pcieep_cfg022_s {
  527. uint32_t umsi:32;
  528. } s;
  529. struct cvmx_pcieep_cfg022_s cn52xx;
  530. struct cvmx_pcieep_cfg022_s cn52xxp1;
  531. struct cvmx_pcieep_cfg022_s cn56xx;
  532. struct cvmx_pcieep_cfg022_s cn56xxp1;
  533. };
  534. union cvmx_pcieep_cfg023 {
  535. uint32_t u32;
  536. struct cvmx_pcieep_cfg023_s {
  537. uint32_t reserved_16_31:16;
  538. uint32_t msimd:16;
  539. } s;
  540. struct cvmx_pcieep_cfg023_s cn52xx;
  541. struct cvmx_pcieep_cfg023_s cn52xxp1;
  542. struct cvmx_pcieep_cfg023_s cn56xx;
  543. struct cvmx_pcieep_cfg023_s cn56xxp1;
  544. };
  545. union cvmx_pcieep_cfg028 {
  546. uint32_t u32;
  547. struct cvmx_pcieep_cfg028_s {
  548. uint32_t reserved_30_31:2;
  549. uint32_t imn:5;
  550. uint32_t si:1;
  551. uint32_t dpt:4;
  552. uint32_t pciecv:4;
  553. uint32_t ncp:8;
  554. uint32_t pcieid:8;
  555. } s;
  556. struct cvmx_pcieep_cfg028_s cn52xx;
  557. struct cvmx_pcieep_cfg028_s cn52xxp1;
  558. struct cvmx_pcieep_cfg028_s cn56xx;
  559. struct cvmx_pcieep_cfg028_s cn56xxp1;
  560. };
  561. union cvmx_pcieep_cfg029 {
  562. uint32_t u32;
  563. struct cvmx_pcieep_cfg029_s {
  564. uint32_t reserved_28_31:4;
  565. uint32_t cspls:2;
  566. uint32_t csplv:8;
  567. uint32_t reserved_16_17:2;
  568. uint32_t rber:1;
  569. uint32_t reserved_12_14:3;
  570. uint32_t el1al:3;
  571. uint32_t el0al:3;
  572. uint32_t etfs:1;
  573. uint32_t pfs:2;
  574. uint32_t mpss:3;
  575. } s;
  576. struct cvmx_pcieep_cfg029_s cn52xx;
  577. struct cvmx_pcieep_cfg029_s cn52xxp1;
  578. struct cvmx_pcieep_cfg029_s cn56xx;
  579. struct cvmx_pcieep_cfg029_s cn56xxp1;
  580. };
  581. union cvmx_pcieep_cfg030 {
  582. uint32_t u32;
  583. struct cvmx_pcieep_cfg030_s {
  584. uint32_t reserved_22_31:10;
  585. uint32_t tp:1;
  586. uint32_t ap_d:1;
  587. uint32_t ur_d:1;
  588. uint32_t fe_d:1;
  589. uint32_t nfe_d:1;
  590. uint32_t ce_d:1;
  591. uint32_t reserved_15_15:1;
  592. uint32_t mrrs:3;
  593. uint32_t ns_en:1;
  594. uint32_t ap_en:1;
  595. uint32_t pf_en:1;
  596. uint32_t etf_en:1;
  597. uint32_t mps:3;
  598. uint32_t ro_en:1;
  599. uint32_t ur_en:1;
  600. uint32_t fe_en:1;
  601. uint32_t nfe_en:1;
  602. uint32_t ce_en:1;
  603. } s;
  604. struct cvmx_pcieep_cfg030_s cn52xx;
  605. struct cvmx_pcieep_cfg030_s cn52xxp1;
  606. struct cvmx_pcieep_cfg030_s cn56xx;
  607. struct cvmx_pcieep_cfg030_s cn56xxp1;
  608. };
  609. union cvmx_pcieep_cfg031 {
  610. uint32_t u32;
  611. struct cvmx_pcieep_cfg031_s {
  612. uint32_t pnum:8;
  613. uint32_t reserved_22_23:2;
  614. uint32_t lbnc:1;
  615. uint32_t dllarc:1;
  616. uint32_t sderc:1;
  617. uint32_t cpm:1;
  618. uint32_t l1el:3;
  619. uint32_t l0el:3;
  620. uint32_t aslpms:2;
  621. uint32_t mlw:6;
  622. uint32_t mls:4;
  623. } s;
  624. struct cvmx_pcieep_cfg031_s cn52xx;
  625. struct cvmx_pcieep_cfg031_s cn52xxp1;
  626. struct cvmx_pcieep_cfg031_s cn56xx;
  627. struct cvmx_pcieep_cfg031_s cn56xxp1;
  628. };
  629. union cvmx_pcieep_cfg032 {
  630. uint32_t u32;
  631. struct cvmx_pcieep_cfg032_s {
  632. uint32_t reserved_30_31:2;
  633. uint32_t dlla:1;
  634. uint32_t scc:1;
  635. uint32_t lt:1;
  636. uint32_t reserved_26_26:1;
  637. uint32_t nlw:6;
  638. uint32_t ls:4;
  639. uint32_t reserved_10_15:6;
  640. uint32_t hawd:1;
  641. uint32_t ecpm:1;
  642. uint32_t es:1;
  643. uint32_t ccc:1;
  644. uint32_t rl:1;
  645. uint32_t ld:1;
  646. uint32_t rcb:1;
  647. uint32_t reserved_2_2:1;
  648. uint32_t aslpc:2;
  649. } s;
  650. struct cvmx_pcieep_cfg032_s cn52xx;
  651. struct cvmx_pcieep_cfg032_s cn52xxp1;
  652. struct cvmx_pcieep_cfg032_s cn56xx;
  653. struct cvmx_pcieep_cfg032_s cn56xxp1;
  654. };
  655. union cvmx_pcieep_cfg033 {
  656. uint32_t u32;
  657. struct cvmx_pcieep_cfg033_s {
  658. uint32_t ps_num:13;
  659. uint32_t nccs:1;
  660. uint32_t emip:1;
  661. uint32_t sp_ls:2;
  662. uint32_t sp_lv:8;
  663. uint32_t hp_c:1;
  664. uint32_t hp_s:1;
  665. uint32_t pip:1;
  666. uint32_t aip:1;
  667. uint32_t mrlsp:1;
  668. uint32_t pcp:1;
  669. uint32_t abp:1;
  670. } s;
  671. struct cvmx_pcieep_cfg033_s cn52xx;
  672. struct cvmx_pcieep_cfg033_s cn52xxp1;
  673. struct cvmx_pcieep_cfg033_s cn56xx;
  674. struct cvmx_pcieep_cfg033_s cn56xxp1;
  675. };
  676. union cvmx_pcieep_cfg034 {
  677. uint32_t u32;
  678. struct cvmx_pcieep_cfg034_s {
  679. uint32_t reserved_25_31:7;
  680. uint32_t dlls_c:1;
  681. uint32_t emis:1;
  682. uint32_t pds:1;
  683. uint32_t mrlss:1;
  684. uint32_t ccint_d:1;
  685. uint32_t pd_c:1;
  686. uint32_t mrls_c:1;
  687. uint32_t pf_d:1;
  688. uint32_t abp_d:1;
  689. uint32_t reserved_13_15:3;
  690. uint32_t dlls_en:1;
  691. uint32_t emic:1;
  692. uint32_t pcc:1;
  693. uint32_t pic:2;
  694. uint32_t aic:2;
  695. uint32_t hpint_en:1;
  696. uint32_t ccint_en:1;
  697. uint32_t pd_en:1;
  698. uint32_t mrls_en:1;
  699. uint32_t pf_en:1;
  700. uint32_t abp_en:1;
  701. } s;
  702. struct cvmx_pcieep_cfg034_s cn52xx;
  703. struct cvmx_pcieep_cfg034_s cn52xxp1;
  704. struct cvmx_pcieep_cfg034_s cn56xx;
  705. struct cvmx_pcieep_cfg034_s cn56xxp1;
  706. };
  707. union cvmx_pcieep_cfg037 {
  708. uint32_t u32;
  709. struct cvmx_pcieep_cfg037_s {
  710. uint32_t reserved_5_31:27;
  711. uint32_t ctds:1;
  712. uint32_t ctrs:4;
  713. } s;
  714. struct cvmx_pcieep_cfg037_s cn52xx;
  715. struct cvmx_pcieep_cfg037_s cn52xxp1;
  716. struct cvmx_pcieep_cfg037_s cn56xx;
  717. struct cvmx_pcieep_cfg037_s cn56xxp1;
  718. };
  719. union cvmx_pcieep_cfg038 {
  720. uint32_t u32;
  721. struct cvmx_pcieep_cfg038_s {
  722. uint32_t reserved_5_31:27;
  723. uint32_t ctd:1;
  724. uint32_t ctv:4;
  725. } s;
  726. struct cvmx_pcieep_cfg038_s cn52xx;
  727. struct cvmx_pcieep_cfg038_s cn52xxp1;
  728. struct cvmx_pcieep_cfg038_s cn56xx;
  729. struct cvmx_pcieep_cfg038_s cn56xxp1;
  730. };
  731. union cvmx_pcieep_cfg039 {
  732. uint32_t u32;
  733. struct cvmx_pcieep_cfg039_s {
  734. uint32_t reserved_0_31:32;
  735. } s;
  736. struct cvmx_pcieep_cfg039_s cn52xx;
  737. struct cvmx_pcieep_cfg039_s cn52xxp1;
  738. struct cvmx_pcieep_cfg039_s cn56xx;
  739. struct cvmx_pcieep_cfg039_s cn56xxp1;
  740. };
  741. union cvmx_pcieep_cfg040 {
  742. uint32_t u32;
  743. struct cvmx_pcieep_cfg040_s {
  744. uint32_t reserved_0_31:32;
  745. } s;
  746. struct cvmx_pcieep_cfg040_s cn52xx;
  747. struct cvmx_pcieep_cfg040_s cn52xxp1;
  748. struct cvmx_pcieep_cfg040_s cn56xx;
  749. struct cvmx_pcieep_cfg040_s cn56xxp1;
  750. };
  751. union cvmx_pcieep_cfg041 {
  752. uint32_t u32;
  753. struct cvmx_pcieep_cfg041_s {
  754. uint32_t reserved_0_31:32;
  755. } s;
  756. struct cvmx_pcieep_cfg041_s cn52xx;
  757. struct cvmx_pcieep_cfg041_s cn52xxp1;
  758. struct cvmx_pcieep_cfg041_s cn56xx;
  759. struct cvmx_pcieep_cfg041_s cn56xxp1;
  760. };
  761. union cvmx_pcieep_cfg042 {
  762. uint32_t u32;
  763. struct cvmx_pcieep_cfg042_s {
  764. uint32_t reserved_0_31:32;
  765. } s;
  766. struct cvmx_pcieep_cfg042_s cn52xx;
  767. struct cvmx_pcieep_cfg042_s cn52xxp1;
  768. struct cvmx_pcieep_cfg042_s cn56xx;
  769. struct cvmx_pcieep_cfg042_s cn56xxp1;
  770. };
  771. union cvmx_pcieep_cfg064 {
  772. uint32_t u32;
  773. struct cvmx_pcieep_cfg064_s {
  774. uint32_t nco:12;
  775. uint32_t cv:4;
  776. uint32_t pcieec:16;
  777. } s;
  778. struct cvmx_pcieep_cfg064_s cn52xx;
  779. struct cvmx_pcieep_cfg064_s cn52xxp1;
  780. struct cvmx_pcieep_cfg064_s cn56xx;
  781. struct cvmx_pcieep_cfg064_s cn56xxp1;
  782. };
  783. union cvmx_pcieep_cfg065 {
  784. uint32_t u32;
  785. struct cvmx_pcieep_cfg065_s {
  786. uint32_t reserved_21_31:11;
  787. uint32_t ures:1;
  788. uint32_t ecrces:1;
  789. uint32_t mtlps:1;
  790. uint32_t ros:1;
  791. uint32_t ucs:1;
  792. uint32_t cas:1;
  793. uint32_t cts:1;
  794. uint32_t fcpes:1;
  795. uint32_t ptlps:1;
  796. uint32_t reserved_6_11:6;
  797. uint32_t sdes:1;
  798. uint32_t dlpes:1;
  799. uint32_t reserved_0_3:4;
  800. } s;
  801. struct cvmx_pcieep_cfg065_s cn52xx;
  802. struct cvmx_pcieep_cfg065_s cn52xxp1;
  803. struct cvmx_pcieep_cfg065_s cn56xx;
  804. struct cvmx_pcieep_cfg065_s cn56xxp1;
  805. };
  806. union cvmx_pcieep_cfg066 {
  807. uint32_t u32;
  808. struct cvmx_pcieep_cfg066_s {
  809. uint32_t reserved_21_31:11;
  810. uint32_t urem:1;
  811. uint32_t ecrcem:1;
  812. uint32_t mtlpm:1;
  813. uint32_t rom:1;
  814. uint32_t ucm:1;
  815. uint32_t cam:1;
  816. uint32_t ctm:1;
  817. uint32_t fcpem:1;
  818. uint32_t ptlpm:1;
  819. uint32_t reserved_6_11:6;
  820. uint32_t sdem:1;
  821. uint32_t dlpem:1;
  822. uint32_t reserved_0_3:4;
  823. } s;
  824. struct cvmx_pcieep_cfg066_s cn52xx;
  825. struct cvmx_pcieep_cfg066_s cn52xxp1;
  826. struct cvmx_pcieep_cfg066_s cn56xx;
  827. struct cvmx_pcieep_cfg066_s cn56xxp1;
  828. };
  829. union cvmx_pcieep_cfg067 {
  830. uint32_t u32;
  831. struct cvmx_pcieep_cfg067_s {
  832. uint32_t reserved_21_31:11;
  833. uint32_t ures:1;
  834. uint32_t ecrces:1;
  835. uint32_t mtlps:1;
  836. uint32_t ros:1;
  837. uint32_t ucs:1;
  838. uint32_t cas:1;
  839. uint32_t cts:1;
  840. uint32_t fcpes:1;
  841. uint32_t ptlps:1;
  842. uint32_t reserved_6_11:6;
  843. uint32_t sdes:1;
  844. uint32_t dlpes:1;
  845. uint32_t reserved_0_3:4;
  846. } s;
  847. struct cvmx_pcieep_cfg067_s cn52xx;
  848. struct cvmx_pcieep_cfg067_s cn52xxp1;
  849. struct cvmx_pcieep_cfg067_s cn56xx;
  850. struct cvmx_pcieep_cfg067_s cn56xxp1;
  851. };
  852. union cvmx_pcieep_cfg068 {
  853. uint32_t u32;
  854. struct cvmx_pcieep_cfg068_s {
  855. uint32_t reserved_14_31:18;
  856. uint32_t anfes:1;
  857. uint32_t rtts:1;
  858. uint32_t reserved_9_11:3;
  859. uint32_t rnrs:1;
  860. uint32_t bdllps:1;
  861. uint32_t btlps:1;
  862. uint32_t reserved_1_5:5;
  863. uint32_t res:1;
  864. } s;
  865. struct cvmx_pcieep_cfg068_s cn52xx;
  866. struct cvmx_pcieep_cfg068_s cn52xxp1;
  867. struct cvmx_pcieep_cfg068_s cn56xx;
  868. struct cvmx_pcieep_cfg068_s cn56xxp1;
  869. };
  870. union cvmx_pcieep_cfg069 {
  871. uint32_t u32;
  872. struct cvmx_pcieep_cfg069_s {
  873. uint32_t reserved_14_31:18;
  874. uint32_t anfem:1;
  875. uint32_t rttm:1;
  876. uint32_t reserved_9_11:3;
  877. uint32_t rnrm:1;
  878. uint32_t bdllpm:1;
  879. uint32_t btlpm:1;
  880. uint32_t reserved_1_5:5;
  881. uint32_t rem:1;
  882. } s;
  883. struct cvmx_pcieep_cfg069_s cn52xx;
  884. struct cvmx_pcieep_cfg069_s cn52xxp1;
  885. struct cvmx_pcieep_cfg069_s cn56xx;
  886. struct cvmx_pcieep_cfg069_s cn56xxp1;
  887. };
  888. union cvmx_pcieep_cfg070 {
  889. uint32_t u32;
  890. struct cvmx_pcieep_cfg070_s {
  891. uint32_t reserved_9_31:23;
  892. uint32_t ce:1;
  893. uint32_t cc:1;
  894. uint32_t ge:1;
  895. uint32_t gc:1;
  896. uint32_t fep:5;
  897. } s;
  898. struct cvmx_pcieep_cfg070_s cn52xx;
  899. struct cvmx_pcieep_cfg070_s cn52xxp1;
  900. struct cvmx_pcieep_cfg070_s cn56xx;
  901. struct cvmx_pcieep_cfg070_s cn56xxp1;
  902. };
  903. union cvmx_pcieep_cfg071 {
  904. uint32_t u32;
  905. struct cvmx_pcieep_cfg071_s {
  906. uint32_t dword1:32;
  907. } s;
  908. struct cvmx_pcieep_cfg071_s cn52xx;
  909. struct cvmx_pcieep_cfg071_s cn52xxp1;
  910. struct cvmx_pcieep_cfg071_s cn56xx;
  911. struct cvmx_pcieep_cfg071_s cn56xxp1;
  912. };
  913. union cvmx_pcieep_cfg072 {
  914. uint32_t u32;
  915. struct cvmx_pcieep_cfg072_s {
  916. uint32_t dword2:32;
  917. } s;
  918. struct cvmx_pcieep_cfg072_s cn52xx;
  919. struct cvmx_pcieep_cfg072_s cn52xxp1;
  920. struct cvmx_pcieep_cfg072_s cn56xx;
  921. struct cvmx_pcieep_cfg072_s cn56xxp1;
  922. };
  923. union cvmx_pcieep_cfg073 {
  924. uint32_t u32;
  925. struct cvmx_pcieep_cfg073_s {
  926. uint32_t dword3:32;
  927. } s;
  928. struct cvmx_pcieep_cfg073_s cn52xx;
  929. struct cvmx_pcieep_cfg073_s cn52xxp1;
  930. struct cvmx_pcieep_cfg073_s cn56xx;
  931. struct cvmx_pcieep_cfg073_s cn56xxp1;
  932. };
  933. union cvmx_pcieep_cfg074 {
  934. uint32_t u32;
  935. struct cvmx_pcieep_cfg074_s {
  936. uint32_t dword4:32;
  937. } s;
  938. struct cvmx_pcieep_cfg074_s cn52xx;
  939. struct cvmx_pcieep_cfg074_s cn52xxp1;
  940. struct cvmx_pcieep_cfg074_s cn56xx;
  941. struct cvmx_pcieep_cfg074_s cn56xxp1;
  942. };
  943. union cvmx_pcieep_cfg448 {
  944. uint32_t u32;
  945. struct cvmx_pcieep_cfg448_s {
  946. uint32_t rtl:16;
  947. uint32_t rtltl:16;
  948. } s;
  949. struct cvmx_pcieep_cfg448_s cn52xx;
  950. struct cvmx_pcieep_cfg448_s cn52xxp1;
  951. struct cvmx_pcieep_cfg448_s cn56xx;
  952. struct cvmx_pcieep_cfg448_s cn56xxp1;
  953. };
  954. union cvmx_pcieep_cfg449 {
  955. uint32_t u32;
  956. struct cvmx_pcieep_cfg449_s {
  957. uint32_t omr:32;
  958. } s;
  959. struct cvmx_pcieep_cfg449_s cn52xx;
  960. struct cvmx_pcieep_cfg449_s cn52xxp1;
  961. struct cvmx_pcieep_cfg449_s cn56xx;
  962. struct cvmx_pcieep_cfg449_s cn56xxp1;
  963. };
  964. union cvmx_pcieep_cfg450 {
  965. uint32_t u32;
  966. struct cvmx_pcieep_cfg450_s {
  967. uint32_t lpec:8;
  968. uint32_t reserved_22_23:2;
  969. uint32_t link_state:6;
  970. uint32_t force_link:1;
  971. uint32_t reserved_8_14:7;
  972. uint32_t link_num:8;
  973. } s;
  974. struct cvmx_pcieep_cfg450_s cn52xx;
  975. struct cvmx_pcieep_cfg450_s cn52xxp1;
  976. struct cvmx_pcieep_cfg450_s cn56xx;
  977. struct cvmx_pcieep_cfg450_s cn56xxp1;
  978. };
  979. union cvmx_pcieep_cfg451 {
  980. uint32_t u32;
  981. struct cvmx_pcieep_cfg451_s {
  982. uint32_t reserved_30_31:2;
  983. uint32_t l1el:3;
  984. uint32_t l0el:3;
  985. uint32_t n_fts_cc:8;
  986. uint32_t n_fts:8;
  987. uint32_t ack_freq:8;
  988. } s;
  989. struct cvmx_pcieep_cfg451_s cn52xx;
  990. struct cvmx_pcieep_cfg451_s cn52xxp1;
  991. struct cvmx_pcieep_cfg451_s cn56xx;
  992. struct cvmx_pcieep_cfg451_s cn56xxp1;
  993. };
  994. union cvmx_pcieep_cfg452 {
  995. uint32_t u32;
  996. struct cvmx_pcieep_cfg452_s {
  997. uint32_t reserved_26_31:6;
  998. uint32_t eccrc:1;
  999. uint32_t reserved_22_24:3;
  1000. uint32_t lme:6;
  1001. uint32_t reserved_8_15:8;
  1002. uint32_t flm:1;
  1003. uint32_t reserved_6_6:1;
  1004. uint32_t dllle:1;
  1005. uint32_t reserved_4_4:1;
  1006. uint32_t ra:1;
  1007. uint32_t le:1;
  1008. uint32_t sd:1;
  1009. uint32_t omr:1;
  1010. } s;
  1011. struct cvmx_pcieep_cfg452_s cn52xx;
  1012. struct cvmx_pcieep_cfg452_s cn52xxp1;
  1013. struct cvmx_pcieep_cfg452_s cn56xx;
  1014. struct cvmx_pcieep_cfg452_s cn56xxp1;
  1015. };
  1016. union cvmx_pcieep_cfg453 {
  1017. uint32_t u32;
  1018. struct cvmx_pcieep_cfg453_s {
  1019. uint32_t dlld:1;
  1020. uint32_t reserved_26_30:5;
  1021. uint32_t ack_nak:1;
  1022. uint32_t fcd:1;
  1023. uint32_t ilst:24;
  1024. } s;
  1025. struct cvmx_pcieep_cfg453_s cn52xx;
  1026. struct cvmx_pcieep_cfg453_s cn52xxp1;
  1027. struct cvmx_pcieep_cfg453_s cn56xx;
  1028. struct cvmx_pcieep_cfg453_s cn56xxp1;
  1029. };
  1030. union cvmx_pcieep_cfg454 {
  1031. uint32_t u32;
  1032. struct cvmx_pcieep_cfg454_s {
  1033. uint32_t reserved_29_31:3;
  1034. uint32_t tmfcwt:5;
  1035. uint32_t tmanlt:5;
  1036. uint32_t tmrt:5;
  1037. uint32_t reserved_11_13:3;
  1038. uint32_t nskps:3;
  1039. uint32_t reserved_4_7:4;
  1040. uint32_t ntss:4;
  1041. } s;
  1042. struct cvmx_pcieep_cfg454_s cn52xx;
  1043. struct cvmx_pcieep_cfg454_s cn52xxp1;
  1044. struct cvmx_pcieep_cfg454_s cn56xx;
  1045. struct cvmx_pcieep_cfg454_s cn56xxp1;
  1046. };
  1047. union cvmx_pcieep_cfg455 {
  1048. uint32_t u32;
  1049. struct cvmx_pcieep_cfg455_s {
  1050. uint32_t m_cfg0_filt:1;
  1051. uint32_t m_io_filt:1;
  1052. uint32_t msg_ctrl:1;
  1053. uint32_t m_cpl_ecrc_filt:1;
  1054. uint32_t m_ecrc_filt:1;
  1055. uint32_t m_cpl_len_err:1;
  1056. uint32_t m_cpl_attr_err:1;
  1057. uint32_t m_cpl_tc_err:1;
  1058. uint32_t m_cpl_fun_err:1;
  1059. uint32_t m_cpl_rid_err:1;
  1060. uint32_t m_cpl_tag_err:1;
  1061. uint32_t m_lk_filt:1;
  1062. uint32_t m_cfg1_filt:1;
  1063. uint32_t m_bar_match:1;
  1064. uint32_t m_pois_filt:1;
  1065. uint32_t m_fun:1;
  1066. uint32_t dfcwt:1;
  1067. uint32_t reserved_11_14:4;
  1068. uint32_t skpiv:11;
  1069. } s;
  1070. struct cvmx_pcieep_cfg455_s cn52xx;
  1071. struct cvmx_pcieep_cfg455_s cn52xxp1;
  1072. struct cvmx_pcieep_cfg455_s cn56xx;
  1073. struct cvmx_pcieep_cfg455_s cn56xxp1;
  1074. };
  1075. union cvmx_pcieep_cfg456 {
  1076. uint32_t u32;
  1077. struct cvmx_pcieep_cfg456_s {
  1078. uint32_t reserved_2_31:30;
  1079. uint32_t m_vend1_drp:1;
  1080. uint32_t m_vend0_drp:1;
  1081. } s;
  1082. struct cvmx_pcieep_cfg456_s cn52xx;
  1083. struct cvmx_pcieep_cfg456_s cn52xxp1;
  1084. struct cvmx_pcieep_cfg456_s cn56xx;
  1085. struct cvmx_pcieep_cfg456_s cn56xxp1;
  1086. };
  1087. union cvmx_pcieep_cfg458 {
  1088. uint32_t u32;
  1089. struct cvmx_pcieep_cfg458_s {
  1090. uint32_t dbg_info_l32:32;
  1091. } s;
  1092. struct cvmx_pcieep_cfg458_s cn52xx;
  1093. struct cvmx_pcieep_cfg458_s cn52xxp1;
  1094. struct cvmx_pcieep_cfg458_s cn56xx;
  1095. struct cvmx_pcieep_cfg458_s cn56xxp1;
  1096. };
  1097. union cvmx_pcieep_cfg459 {
  1098. uint32_t u32;
  1099. struct cvmx_pcieep_cfg459_s {
  1100. uint32_t dbg_info_u32:32;
  1101. } s;
  1102. struct cvmx_pcieep_cfg459_s cn52xx;
  1103. struct cvmx_pcieep_cfg459_s cn52xxp1;
  1104. struct cvmx_pcieep_cfg459_s cn56xx;
  1105. struct cvmx_pcieep_cfg459_s cn56xxp1;
  1106. };
  1107. union cvmx_pcieep_cfg460 {
  1108. uint32_t u32;
  1109. struct cvmx_pcieep_cfg460_s {
  1110. uint32_t reserved_20_31:12;
  1111. uint32_t tphfcc:8;
  1112. uint32_t tpdfcc:12;
  1113. } s;
  1114. struct cvmx_pcieep_cfg460_s cn52xx;
  1115. struct cvmx_pcieep_cfg460_s cn52xxp1;
  1116. struct cvmx_pcieep_cfg460_s cn56xx;
  1117. struct cvmx_pcieep_cfg460_s cn56xxp1;
  1118. };
  1119. union cvmx_pcieep_cfg461 {
  1120. uint32_t u32;
  1121. struct cvmx_pcieep_cfg461_s {
  1122. uint32_t reserved_20_31:12;
  1123. uint32_t tchfcc:8;
  1124. uint32_t tcdfcc:12;
  1125. } s;
  1126. struct cvmx_pcieep_cfg461_s cn52xx;
  1127. struct cvmx_pcieep_cfg461_s cn52xxp1;
  1128. struct cvmx_pcieep_cfg461_s cn56xx;
  1129. struct cvmx_pcieep_cfg461_s cn56xxp1;
  1130. };
  1131. union cvmx_pcieep_cfg462 {
  1132. uint32_t u32;
  1133. struct cvmx_pcieep_cfg462_s {
  1134. uint32_t reserved_20_31:12;
  1135. uint32_t tchfcc:8;
  1136. uint32_t tcdfcc:12;
  1137. } s;
  1138. struct cvmx_pcieep_cfg462_s cn52xx;
  1139. struct cvmx_pcieep_cfg462_s cn52xxp1;
  1140. struct cvmx_pcieep_cfg462_s cn56xx;
  1141. struct cvmx_pcieep_cfg462_s cn56xxp1;
  1142. };
  1143. union cvmx_pcieep_cfg463 {
  1144. uint32_t u32;
  1145. struct cvmx_pcieep_cfg463_s {
  1146. uint32_t reserved_3_31:29;
  1147. uint32_t rqne:1;
  1148. uint32_t trbne:1;
  1149. uint32_t rtlpfccnr:1;
  1150. } s;
  1151. struct cvmx_pcieep_cfg463_s cn52xx;
  1152. struct cvmx_pcieep_cfg463_s cn52xxp1;
  1153. struct cvmx_pcieep_cfg463_s cn56xx;
  1154. struct cvmx_pcieep_cfg463_s cn56xxp1;
  1155. };
  1156. union cvmx_pcieep_cfg464 {
  1157. uint32_t u32;
  1158. struct cvmx_pcieep_cfg464_s {
  1159. uint32_t wrr_vc3:8;
  1160. uint32_t wrr_vc2:8;
  1161. uint32_t wrr_vc1:8;
  1162. uint32_t wrr_vc0:8;
  1163. } s;
  1164. struct cvmx_pcieep_cfg464_s cn52xx;
  1165. struct cvmx_pcieep_cfg464_s cn52xxp1;
  1166. struct cvmx_pcieep_cfg464_s cn56xx;
  1167. struct cvmx_pcieep_cfg464_s cn56xxp1;
  1168. };
  1169. union cvmx_pcieep_cfg465 {
  1170. uint32_t u32;
  1171. struct cvmx_pcieep_cfg465_s {
  1172. uint32_t wrr_vc7:8;
  1173. uint32_t wrr_vc6:8;
  1174. uint32_t wrr_vc5:8;
  1175. uint32_t wrr_vc4:8;
  1176. } s;
  1177. struct cvmx_pcieep_cfg465_s cn52xx;
  1178. struct cvmx_pcieep_cfg465_s cn52xxp1;
  1179. struct cvmx_pcieep_cfg465_s cn56xx;
  1180. struct cvmx_pcieep_cfg465_s cn56xxp1;
  1181. };
  1182. union cvmx_pcieep_cfg466 {
  1183. uint32_t u32;
  1184. struct cvmx_pcieep_cfg466_s {
  1185. uint32_t rx_queue_order:1;
  1186. uint32_t type_ordering:1;
  1187. uint32_t reserved_24_29:6;
  1188. uint32_t queue_mode:3;
  1189. uint32_t reserved_20_20:1;
  1190. uint32_t header_credits:8;
  1191. uint32_t data_credits:12;
  1192. } s;
  1193. struct cvmx_pcieep_cfg466_s cn52xx;
  1194. struct cvmx_pcieep_cfg466_s cn52xxp1;
  1195. struct cvmx_pcieep_cfg466_s cn56xx;
  1196. struct cvmx_pcieep_cfg466_s cn56xxp1;
  1197. };
  1198. union cvmx_pcieep_cfg467 {
  1199. uint32_t u32;
  1200. struct cvmx_pcieep_cfg467_s {
  1201. uint32_t reserved_24_31:8;
  1202. uint32_t queue_mode:3;
  1203. uint32_t reserved_20_20:1;
  1204. uint32_t header_credits:8;
  1205. uint32_t data_credits:12;
  1206. } s;
  1207. struct cvmx_pcieep_cfg467_s cn52xx;
  1208. struct cvmx_pcieep_cfg467_s cn52xxp1;
  1209. struct cvmx_pcieep_cfg467_s cn56xx;
  1210. struct cvmx_pcieep_cfg467_s cn56xxp1;
  1211. };
  1212. union cvmx_pcieep_cfg468 {
  1213. uint32_t u32;
  1214. struct cvmx_pcieep_cfg468_s {
  1215. uint32_t reserved_24_31:8;
  1216. uint32_t queue_mode:3;
  1217. uint32_t reserved_20_20:1;
  1218. uint32_t header_credits:8;
  1219. uint32_t data_credits:12;
  1220. } s;
  1221. struct cvmx_pcieep_cfg468_s cn52xx;
  1222. struct cvmx_pcieep_cfg468_s cn52xxp1;
  1223. struct cvmx_pcieep_cfg468_s cn56xx;
  1224. struct cvmx_pcieep_cfg468_s cn56xxp1;
  1225. };
  1226. union cvmx_pcieep_cfg490 {
  1227. uint32_t u32;
  1228. struct cvmx_pcieep_cfg490_s {
  1229. uint32_t reserved_26_31:6;
  1230. uint32_t header_depth:10;
  1231. uint32_t reserved_14_15:2;
  1232. uint32_t data_depth:14;
  1233. } s;
  1234. struct cvmx_pcieep_cfg490_s cn52xx;
  1235. struct cvmx_pcieep_cfg490_s cn52xxp1;
  1236. struct cvmx_pcieep_cfg490_s cn56xx;
  1237. struct cvmx_pcieep_cfg490_s cn56xxp1;
  1238. };
  1239. union cvmx_pcieep_cfg491 {
  1240. uint32_t u32;
  1241. struct cvmx_pcieep_cfg491_s {
  1242. uint32_t reserved_26_31:6;
  1243. uint32_t header_depth:10;
  1244. uint32_t reserved_14_15:2;
  1245. uint32_t data_depth:14;
  1246. } s;
  1247. struct cvmx_pcieep_cfg491_s cn52xx;
  1248. struct cvmx_pcieep_cfg491_s cn52xxp1;
  1249. struct cvmx_pcieep_cfg491_s cn56xx;
  1250. struct cvmx_pcieep_cfg491_s cn56xxp1;
  1251. };
  1252. union cvmx_pcieep_cfg492 {
  1253. uint32_t u32;
  1254. struct cvmx_pcieep_cfg492_s {
  1255. uint32_t reserved_26_31:6;
  1256. uint32_t header_depth:10;
  1257. uint32_t reserved_14_15:2;
  1258. uint32_t data_depth:14;
  1259. } s;
  1260. struct cvmx_pcieep_cfg492_s cn52xx;
  1261. struct cvmx_pcieep_cfg492_s cn52xxp1;
  1262. struct cvmx_pcieep_cfg492_s cn56xx;
  1263. struct cvmx_pcieep_cfg492_s cn56xxp1;
  1264. };
  1265. union cvmx_pcieep_cfg516 {
  1266. uint32_t u32;
  1267. struct cvmx_pcieep_cfg516_s {
  1268. uint32_t phy_stat:32;
  1269. } s;
  1270. struct cvmx_pcieep_cfg516_s cn52xx;
  1271. struct cvmx_pcieep_cfg516_s cn52xxp1;
  1272. struct cvmx_pcieep_cfg516_s cn56xx;
  1273. struct cvmx_pcieep_cfg516_s cn56xxp1;
  1274. };
  1275. union cvmx_pcieep_cfg517 {
  1276. uint32_t u32;
  1277. struct cvmx_pcieep_cfg517_s {
  1278. uint32_t phy_ctrl:32;
  1279. } s;
  1280. struct cvmx_pcieep_cfg517_s cn52xx;
  1281. struct cvmx_pcieep_cfg517_s cn52xxp1;
  1282. struct cvmx_pcieep_cfg517_s cn56xx;
  1283. struct cvmx_pcieep_cfg517_s cn56xxp1;
  1284. };
  1285. #endif