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-2010 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 28 #ifndef __CVMX_PCIERCX_DEFS_H__ 29 #define __CVMX_PCIERCX_DEFS_H__ 30 31 #define CVMX_PCIERCX_CFG000(block_id) (0x0000000000000000ull) 32 #define CVMX_PCIERCX_CFG001(block_id) (0x0000000000000004ull) 33 #define CVMX_PCIERCX_CFG002(block_id) (0x0000000000000008ull) 34 #define CVMX_PCIERCX_CFG003(block_id) (0x000000000000000Cull) 35 #define CVMX_PCIERCX_CFG004(block_id) (0x0000000000000010ull) 36 #define CVMX_PCIERCX_CFG005(block_id) (0x0000000000000014ull) 37 #define CVMX_PCIERCX_CFG006(block_id) (0x0000000000000018ull) 38 #define CVMX_PCIERCX_CFG007(block_id) (0x000000000000001Cull) 39 #define CVMX_PCIERCX_CFG008(block_id) (0x0000000000000020ull) 40 #define CVMX_PCIERCX_CFG009(block_id) (0x0000000000000024ull) 41 #define CVMX_PCIERCX_CFG010(block_id) (0x0000000000000028ull) 42 #define CVMX_PCIERCX_CFG011(block_id) (0x000000000000002Cull) 43 #define CVMX_PCIERCX_CFG012(block_id) (0x0000000000000030ull) 44 #define CVMX_PCIERCX_CFG013(block_id) (0x0000000000000034ull) 45 #define CVMX_PCIERCX_CFG014(block_id) (0x0000000000000038ull) 46 #define CVMX_PCIERCX_CFG015(block_id) (0x000000000000003Cull) 47 #define CVMX_PCIERCX_CFG016(block_id) (0x0000000000000040ull) 48 #define CVMX_PCIERCX_CFG017(block_id) (0x0000000000000044ull) 49 #define CVMX_PCIERCX_CFG020(block_id) (0x0000000000000050ull) 50 #define CVMX_PCIERCX_CFG021(block_id) (0x0000000000000054ull) 51 #define CVMX_PCIERCX_CFG022(block_id) (0x0000000000000058ull) 52 #define CVMX_PCIERCX_CFG023(block_id) (0x000000000000005Cull) 53 #define CVMX_PCIERCX_CFG028(block_id) (0x0000000000000070ull) 54 #define CVMX_PCIERCX_CFG029(block_id) (0x0000000000000074ull) 55 #define CVMX_PCIERCX_CFG030(block_id) (0x0000000000000078ull) 56 #define CVMX_PCIERCX_CFG031(block_id) (0x000000000000007Cull) 57 #define CVMX_PCIERCX_CFG032(block_id) (0x0000000000000080ull) 58 #define CVMX_PCIERCX_CFG033(block_id) (0x0000000000000084ull) 59 #define CVMX_PCIERCX_CFG034(block_id) (0x0000000000000088ull) 60 #define CVMX_PCIERCX_CFG035(block_id) (0x000000000000008Cull) 61 #define CVMX_PCIERCX_CFG036(block_id) (0x0000000000000090ull) 62 #define CVMX_PCIERCX_CFG037(block_id) (0x0000000000000094ull) 63 #define CVMX_PCIERCX_CFG038(block_id) (0x0000000000000098ull) 64 #define CVMX_PCIERCX_CFG039(block_id) (0x000000000000009Cull) 65 #define CVMX_PCIERCX_CFG040(block_id) (0x00000000000000A0ull) 66 #define CVMX_PCIERCX_CFG041(block_id) (0x00000000000000A4ull) 67 #define CVMX_PCIERCX_CFG042(block_id) (0x00000000000000A8ull) 68 #define CVMX_PCIERCX_CFG064(block_id) (0x0000000000000100ull) 69 #define CVMX_PCIERCX_CFG065(block_id) (0x0000000000000104ull) 70 #define CVMX_PCIERCX_CFG066(block_id) (0x0000000000000108ull) 71 #define CVMX_PCIERCX_CFG067(block_id) (0x000000000000010Cull) 72 #define CVMX_PCIERCX_CFG068(block_id) (0x0000000000000110ull) 73 #define CVMX_PCIERCX_CFG069(block_id) (0x0000000000000114ull) 74 #define CVMX_PCIERCX_CFG070(block_id) (0x0000000000000118ull) 75 #define CVMX_PCIERCX_CFG071(block_id) (0x000000000000011Cull) 76 #define CVMX_PCIERCX_CFG072(block_id) (0x0000000000000120ull) 77 #define CVMX_PCIERCX_CFG073(block_id) (0x0000000000000124ull) 78 #define CVMX_PCIERCX_CFG074(block_id) (0x0000000000000128ull) 79 #define CVMX_PCIERCX_CFG075(block_id) (0x000000000000012Cull) 80 #define CVMX_PCIERCX_CFG076(block_id) (0x0000000000000130ull) 81 #define CVMX_PCIERCX_CFG077(block_id) (0x0000000000000134ull) 82 #define CVMX_PCIERCX_CFG448(block_id) (0x0000000000000700ull) 83 #define CVMX_PCIERCX_CFG449(block_id) (0x0000000000000704ull) 84 #define CVMX_PCIERCX_CFG450(block_id) (0x0000000000000708ull) 85 #define CVMX_PCIERCX_CFG451(block_id) (0x000000000000070Cull) 86 #define CVMX_PCIERCX_CFG452(block_id) (0x0000000000000710ull) 87 #define CVMX_PCIERCX_CFG453(block_id) (0x0000000000000714ull) 88 #define CVMX_PCIERCX_CFG454(block_id) (0x0000000000000718ull) 89 #define CVMX_PCIERCX_CFG455(block_id) (0x000000000000071Cull) 90 #define CVMX_PCIERCX_CFG456(block_id) (0x0000000000000720ull) 91 #define CVMX_PCIERCX_CFG458(block_id) (0x0000000000000728ull) 92 #define CVMX_PCIERCX_CFG459(block_id) (0x000000000000072Cull) 93 #define CVMX_PCIERCX_CFG460(block_id) (0x0000000000000730ull) 94 #define CVMX_PCIERCX_CFG461(block_id) (0x0000000000000734ull) 95 #define CVMX_PCIERCX_CFG462(block_id) (0x0000000000000738ull) 96 #define CVMX_PCIERCX_CFG463(block_id) (0x000000000000073Cull) 97 #define CVMX_PCIERCX_CFG464(block_id) (0x0000000000000740ull) 98 #define CVMX_PCIERCX_CFG465(block_id) (0x0000000000000744ull) 99 #define CVMX_PCIERCX_CFG466(block_id) (0x0000000000000748ull) 100 #define CVMX_PCIERCX_CFG467(block_id) (0x000000000000074Cull) 101 #define CVMX_PCIERCX_CFG468(block_id) (0x0000000000000750ull) 102 #define CVMX_PCIERCX_CFG490(block_id) (0x00000000000007A8ull) 103 #define CVMX_PCIERCX_CFG491(block_id) (0x00000000000007ACull) 104 #define CVMX_PCIERCX_CFG492(block_id) (0x00000000000007B0ull) 105 #define CVMX_PCIERCX_CFG515(block_id) (0x000000000000080Cull) 106 #define CVMX_PCIERCX_CFG516(block_id) (0x0000000000000810ull) 107 #define CVMX_PCIERCX_CFG517(block_id) (0x0000000000000814ull) 108 109 union cvmx_pciercx_cfg000 { 110 uint32_t u32; 111 struct cvmx_pciercx_cfg000_s { 112 uint32_t devid:16; 113 uint32_t vendid:16; 114 } s; 115 struct cvmx_pciercx_cfg000_s cn52xx; 116 struct cvmx_pciercx_cfg000_s cn52xxp1; 117 struct cvmx_pciercx_cfg000_s cn56xx; 118 struct cvmx_pciercx_cfg000_s cn56xxp1; 119 struct cvmx_pciercx_cfg000_s cn63xx; 120 struct cvmx_pciercx_cfg000_s cn63xxp1; 121 }; 122 123 union cvmx_pciercx_cfg001 { 124 uint32_t u32; 125 struct cvmx_pciercx_cfg001_s { 126 uint32_t dpe:1; 127 uint32_t sse:1; 128 uint32_t rma:1; 129 uint32_t rta:1; 130 uint32_t sta:1; 131 uint32_t devt:2; 132 uint32_t mdpe:1; 133 uint32_t fbb:1; 134 uint32_t reserved_22_22:1; 135 uint32_t m66:1; 136 uint32_t cl:1; 137 uint32_t i_stat:1; 138 uint32_t reserved_11_18:8; 139 uint32_t i_dis:1; 140 uint32_t fbbe:1; 141 uint32_t see:1; 142 uint32_t ids_wcc:1; 143 uint32_t per:1; 144 uint32_t vps:1; 145 uint32_t mwice:1; 146 uint32_t scse:1; 147 uint32_t me:1; 148 uint32_t msae:1; 149 uint32_t isae:1; 150 } s; 151 struct cvmx_pciercx_cfg001_s cn52xx; 152 struct cvmx_pciercx_cfg001_s cn52xxp1; 153 struct cvmx_pciercx_cfg001_s cn56xx; 154 struct cvmx_pciercx_cfg001_s cn56xxp1; 155 struct cvmx_pciercx_cfg001_s cn63xx; 156 struct cvmx_pciercx_cfg001_s cn63xxp1; 157 }; 158 159 union cvmx_pciercx_cfg002 { 160 uint32_t u32; 161 struct cvmx_pciercx_cfg002_s { 162 uint32_t bcc:8; 163 uint32_t sc:8; 164 uint32_t pi:8; 165 uint32_t rid:8; 166 } s; 167 struct cvmx_pciercx_cfg002_s cn52xx; 168 struct cvmx_pciercx_cfg002_s cn52xxp1; 169 struct cvmx_pciercx_cfg002_s cn56xx; 170 struct cvmx_pciercx_cfg002_s cn56xxp1; 171 struct cvmx_pciercx_cfg002_s cn63xx; 172 struct cvmx_pciercx_cfg002_s cn63xxp1; 173 }; 174 175 union cvmx_pciercx_cfg003 { 176 uint32_t u32; 177 struct cvmx_pciercx_cfg003_s { 178 uint32_t bist:8; 179 uint32_t mfd:1; 180 uint32_t chf:7; 181 uint32_t lt:8; 182 uint32_t cls:8; 183 } s; 184 struct cvmx_pciercx_cfg003_s cn52xx; 185 struct cvmx_pciercx_cfg003_s cn52xxp1; 186 struct cvmx_pciercx_cfg003_s cn56xx; 187 struct cvmx_pciercx_cfg003_s cn56xxp1; 188 struct cvmx_pciercx_cfg003_s cn63xx; 189 struct cvmx_pciercx_cfg003_s cn63xxp1; 190 }; 191 192 union cvmx_pciercx_cfg004 { 193 uint32_t u32; 194 struct cvmx_pciercx_cfg004_s { 195 uint32_t reserved_0_31:32; 196 } s; 197 struct cvmx_pciercx_cfg004_s cn52xx; 198 struct cvmx_pciercx_cfg004_s cn52xxp1; 199 struct cvmx_pciercx_cfg004_s cn56xx; 200 struct cvmx_pciercx_cfg004_s cn56xxp1; 201 struct cvmx_pciercx_cfg004_s cn63xx; 202 struct cvmx_pciercx_cfg004_s cn63xxp1; 203 }; 204 205 union cvmx_pciercx_cfg005 { 206 uint32_t u32; 207 struct cvmx_pciercx_cfg005_s { 208 uint32_t reserved_0_31:32; 209 } s; 210 struct cvmx_pciercx_cfg005_s cn52xx; 211 struct cvmx_pciercx_cfg005_s cn52xxp1; 212 struct cvmx_pciercx_cfg005_s cn56xx; 213 struct cvmx_pciercx_cfg005_s cn56xxp1; 214 struct cvmx_pciercx_cfg005_s cn63xx; 215 struct cvmx_pciercx_cfg005_s cn63xxp1; 216 }; 217 218 union cvmx_pciercx_cfg006 { 219 uint32_t u32; 220 struct cvmx_pciercx_cfg006_s { 221 uint32_t slt:8; 222 uint32_t subbnum:8; 223 uint32_t sbnum:8; 224 uint32_t pbnum:8; 225 } s; 226 struct cvmx_pciercx_cfg006_s cn52xx; 227 struct cvmx_pciercx_cfg006_s cn52xxp1; 228 struct cvmx_pciercx_cfg006_s cn56xx; 229 struct cvmx_pciercx_cfg006_s cn56xxp1; 230 struct cvmx_pciercx_cfg006_s cn63xx; 231 struct cvmx_pciercx_cfg006_s cn63xxp1; 232 }; 233 234 union cvmx_pciercx_cfg007 { 235 uint32_t u32; 236 struct cvmx_pciercx_cfg007_s { 237 uint32_t dpe:1; 238 uint32_t sse:1; 239 uint32_t rma:1; 240 uint32_t rta:1; 241 uint32_t sta:1; 242 uint32_t devt:2; 243 uint32_t mdpe:1; 244 uint32_t fbb:1; 245 uint32_t reserved_22_22:1; 246 uint32_t m66:1; 247 uint32_t reserved_16_20:5; 248 uint32_t lio_limi:4; 249 uint32_t reserved_9_11:3; 250 uint32_t io32b:1; 251 uint32_t lio_base:4; 252 uint32_t reserved_1_3:3; 253 uint32_t io32a:1; 254 } s; 255 struct cvmx_pciercx_cfg007_s cn52xx; 256 struct cvmx_pciercx_cfg007_s cn52xxp1; 257 struct cvmx_pciercx_cfg007_s cn56xx; 258 struct cvmx_pciercx_cfg007_s cn56xxp1; 259 struct cvmx_pciercx_cfg007_s cn63xx; 260 struct cvmx_pciercx_cfg007_s cn63xxp1; 261 }; 262 263 union cvmx_pciercx_cfg008 { 264 uint32_t u32; 265 struct cvmx_pciercx_cfg008_s { 266 uint32_t ml_addr:12; 267 uint32_t reserved_16_19:4; 268 uint32_t mb_addr:12; 269 uint32_t reserved_0_3:4; 270 } s; 271 struct cvmx_pciercx_cfg008_s cn52xx; 272 struct cvmx_pciercx_cfg008_s cn52xxp1; 273 struct cvmx_pciercx_cfg008_s cn56xx; 274 struct cvmx_pciercx_cfg008_s cn56xxp1; 275 struct cvmx_pciercx_cfg008_s cn63xx; 276 struct cvmx_pciercx_cfg008_s cn63xxp1; 277 }; 278 279 union cvmx_pciercx_cfg009 { 280 uint32_t u32; 281 struct cvmx_pciercx_cfg009_s { 282 uint32_t lmem_limit:12; 283 uint32_t reserved_17_19:3; 284 uint32_t mem64b:1; 285 uint32_t lmem_base:12; 286 uint32_t reserved_1_3:3; 287 uint32_t mem64a:1; 288 } s; 289 struct cvmx_pciercx_cfg009_s cn52xx; 290 struct cvmx_pciercx_cfg009_s cn52xxp1; 291 struct cvmx_pciercx_cfg009_s cn56xx; 292 struct cvmx_pciercx_cfg009_s cn56xxp1; 293 struct cvmx_pciercx_cfg009_s cn63xx; 294 struct cvmx_pciercx_cfg009_s cn63xxp1; 295 }; 296 297 union cvmx_pciercx_cfg010 { 298 uint32_t u32; 299 struct cvmx_pciercx_cfg010_s { 300 uint32_t umem_base:32; 301 } s; 302 struct cvmx_pciercx_cfg010_s cn52xx; 303 struct cvmx_pciercx_cfg010_s cn52xxp1; 304 struct cvmx_pciercx_cfg010_s cn56xx; 305 struct cvmx_pciercx_cfg010_s cn56xxp1; 306 struct cvmx_pciercx_cfg010_s cn63xx; 307 struct cvmx_pciercx_cfg010_s cn63xxp1; 308 }; 309 310 union cvmx_pciercx_cfg011 { 311 uint32_t u32; 312 struct cvmx_pciercx_cfg011_s { 313 uint32_t umem_limit:32; 314 } s; 315 struct cvmx_pciercx_cfg011_s cn52xx; 316 struct cvmx_pciercx_cfg011_s cn52xxp1; 317 struct cvmx_pciercx_cfg011_s cn56xx; 318 struct cvmx_pciercx_cfg011_s cn56xxp1; 319 struct cvmx_pciercx_cfg011_s cn63xx; 320 struct cvmx_pciercx_cfg011_s cn63xxp1; 321 }; 322 323 union cvmx_pciercx_cfg012 { 324 uint32_t u32; 325 struct cvmx_pciercx_cfg012_s { 326 uint32_t uio_limit:16; 327 uint32_t uio_base:16; 328 } s; 329 struct cvmx_pciercx_cfg012_s cn52xx; 330 struct cvmx_pciercx_cfg012_s cn52xxp1; 331 struct cvmx_pciercx_cfg012_s cn56xx; 332 struct cvmx_pciercx_cfg012_s cn56xxp1; 333 struct cvmx_pciercx_cfg012_s cn63xx; 334 struct cvmx_pciercx_cfg012_s cn63xxp1; 335 }; 336 337 union cvmx_pciercx_cfg013 { 338 uint32_t u32; 339 struct cvmx_pciercx_cfg013_s { 340 uint32_t reserved_8_31:24; 341 uint32_t cp:8; 342 } s; 343 struct cvmx_pciercx_cfg013_s cn52xx; 344 struct cvmx_pciercx_cfg013_s cn52xxp1; 345 struct cvmx_pciercx_cfg013_s cn56xx; 346 struct cvmx_pciercx_cfg013_s cn56xxp1; 347 struct cvmx_pciercx_cfg013_s cn63xx; 348 struct cvmx_pciercx_cfg013_s cn63xxp1; 349 }; 350 351 union cvmx_pciercx_cfg014 { 352 uint32_t u32; 353 struct cvmx_pciercx_cfg014_s { 354 uint32_t reserved_0_31:32; 355 } s; 356 struct cvmx_pciercx_cfg014_s cn52xx; 357 struct cvmx_pciercx_cfg014_s cn52xxp1; 358 struct cvmx_pciercx_cfg014_s cn56xx; 359 struct cvmx_pciercx_cfg014_s cn56xxp1; 360 struct cvmx_pciercx_cfg014_s cn63xx; 361 struct cvmx_pciercx_cfg014_s cn63xxp1; 362 }; 363 364 union cvmx_pciercx_cfg015 { 365 uint32_t u32; 366 struct cvmx_pciercx_cfg015_s { 367 uint32_t reserved_28_31:4; 368 uint32_t dtsees:1; 369 uint32_t dts:1; 370 uint32_t sdt:1; 371 uint32_t pdt:1; 372 uint32_t fbbe:1; 373 uint32_t sbrst:1; 374 uint32_t mam:1; 375 uint32_t vga16d:1; 376 uint32_t vgae:1; 377 uint32_t isae:1; 378 uint32_t see:1; 379 uint32_t pere:1; 380 uint32_t inta:8; 381 uint32_t il:8; 382 } s; 383 struct cvmx_pciercx_cfg015_s cn52xx; 384 struct cvmx_pciercx_cfg015_s cn52xxp1; 385 struct cvmx_pciercx_cfg015_s cn56xx; 386 struct cvmx_pciercx_cfg015_s cn56xxp1; 387 struct cvmx_pciercx_cfg015_s cn63xx; 388 struct cvmx_pciercx_cfg015_s cn63xxp1; 389 }; 390 391 union cvmx_pciercx_cfg016 { 392 uint32_t u32; 393 struct cvmx_pciercx_cfg016_s { 394 uint32_t pmes:5; 395 uint32_t d2s:1; 396 uint32_t d1s:1; 397 uint32_t auxc:3; 398 uint32_t dsi:1; 399 uint32_t reserved_20_20:1; 400 uint32_t pme_clock:1; 401 uint32_t pmsv:3; 402 uint32_t ncp:8; 403 uint32_t pmcid:8; 404 } s; 405 struct cvmx_pciercx_cfg016_s cn52xx; 406 struct cvmx_pciercx_cfg016_s cn52xxp1; 407 struct cvmx_pciercx_cfg016_s cn56xx; 408 struct cvmx_pciercx_cfg016_s cn56xxp1; 409 struct cvmx_pciercx_cfg016_s cn63xx; 410 struct cvmx_pciercx_cfg016_s cn63xxp1; 411 }; 412 413 union cvmx_pciercx_cfg017 { 414 uint32_t u32; 415 struct cvmx_pciercx_cfg017_s { 416 uint32_t pmdia:8; 417 uint32_t bpccee:1; 418 uint32_t bd3h:1; 419 uint32_t reserved_16_21:6; 420 uint32_t pmess:1; 421 uint32_t pmedsia:2; 422 uint32_t pmds:4; 423 uint32_t pmeens:1; 424 uint32_t reserved_4_7:4; 425 uint32_t nsr:1; 426 uint32_t reserved_2_2:1; 427 uint32_t ps:2; 428 } s; 429 struct cvmx_pciercx_cfg017_s cn52xx; 430 struct cvmx_pciercx_cfg017_s cn52xxp1; 431 struct cvmx_pciercx_cfg017_s cn56xx; 432 struct cvmx_pciercx_cfg017_s cn56xxp1; 433 struct cvmx_pciercx_cfg017_s cn63xx; 434 struct cvmx_pciercx_cfg017_s cn63xxp1; 435 }; 436 437 union cvmx_pciercx_cfg020 { 438 uint32_t u32; 439 struct cvmx_pciercx_cfg020_s { 440 uint32_t reserved_24_31:8; 441 uint32_t m64:1; 442 uint32_t mme:3; 443 uint32_t mmc:3; 444 uint32_t msien:1; 445 uint32_t ncp:8; 446 uint32_t msicid:8; 447 } s; 448 struct cvmx_pciercx_cfg020_s cn52xx; 449 struct cvmx_pciercx_cfg020_s cn52xxp1; 450 struct cvmx_pciercx_cfg020_s cn56xx; 451 struct cvmx_pciercx_cfg020_s cn56xxp1; 452 struct cvmx_pciercx_cfg020_s cn63xx; 453 struct cvmx_pciercx_cfg020_s cn63xxp1; 454 }; 455 456 union cvmx_pciercx_cfg021 { 457 uint32_t u32; 458 struct cvmx_pciercx_cfg021_s { 459 uint32_t lmsi:30; 460 uint32_t reserved_0_1:2; 461 } s; 462 struct cvmx_pciercx_cfg021_s cn52xx; 463 struct cvmx_pciercx_cfg021_s cn52xxp1; 464 struct cvmx_pciercx_cfg021_s cn56xx; 465 struct cvmx_pciercx_cfg021_s cn56xxp1; 466 struct cvmx_pciercx_cfg021_s cn63xx; 467 struct cvmx_pciercx_cfg021_s cn63xxp1; 468 }; 469 470 union cvmx_pciercx_cfg022 { 471 uint32_t u32; 472 struct cvmx_pciercx_cfg022_s { 473 uint32_t umsi:32; 474 } s; 475 struct cvmx_pciercx_cfg022_s cn52xx; 476 struct cvmx_pciercx_cfg022_s cn52xxp1; 477 struct cvmx_pciercx_cfg022_s cn56xx; 478 struct cvmx_pciercx_cfg022_s cn56xxp1; 479 struct cvmx_pciercx_cfg022_s cn63xx; 480 struct cvmx_pciercx_cfg022_s cn63xxp1; 481 }; 482 483 union cvmx_pciercx_cfg023 { 484 uint32_t u32; 485 struct cvmx_pciercx_cfg023_s { 486 uint32_t reserved_16_31:16; 487 uint32_t msimd:16; 488 } s; 489 struct cvmx_pciercx_cfg023_s cn52xx; 490 struct cvmx_pciercx_cfg023_s cn52xxp1; 491 struct cvmx_pciercx_cfg023_s cn56xx; 492 struct cvmx_pciercx_cfg023_s cn56xxp1; 493 struct cvmx_pciercx_cfg023_s cn63xx; 494 struct cvmx_pciercx_cfg023_s cn63xxp1; 495 }; 496 497 union cvmx_pciercx_cfg028 { 498 uint32_t u32; 499 struct cvmx_pciercx_cfg028_s { 500 uint32_t reserved_30_31:2; 501 uint32_t imn:5; 502 uint32_t si:1; 503 uint32_t dpt:4; 504 uint32_t pciecv:4; 505 uint32_t ncp:8; 506 uint32_t pcieid:8; 507 } s; 508 struct cvmx_pciercx_cfg028_s cn52xx; 509 struct cvmx_pciercx_cfg028_s cn52xxp1; 510 struct cvmx_pciercx_cfg028_s cn56xx; 511 struct cvmx_pciercx_cfg028_s cn56xxp1; 512 struct cvmx_pciercx_cfg028_s cn63xx; 513 struct cvmx_pciercx_cfg028_s cn63xxp1; 514 }; 515 516 union cvmx_pciercx_cfg029 { 517 uint32_t u32; 518 struct cvmx_pciercx_cfg029_s { 519 uint32_t reserved_28_31:4; 520 uint32_t cspls:2; 521 uint32_t csplv:8; 522 uint32_t reserved_16_17:2; 523 uint32_t rber:1; 524 uint32_t reserved_12_14:3; 525 uint32_t el1al:3; 526 uint32_t el0al:3; 527 uint32_t etfs:1; 528 uint32_t pfs:2; 529 uint32_t mpss:3; 530 } s; 531 struct cvmx_pciercx_cfg029_s cn52xx; 532 struct cvmx_pciercx_cfg029_s cn52xxp1; 533 struct cvmx_pciercx_cfg029_s cn56xx; 534 struct cvmx_pciercx_cfg029_s cn56xxp1; 535 struct cvmx_pciercx_cfg029_s cn63xx; 536 struct cvmx_pciercx_cfg029_s cn63xxp1; 537 }; 538 539 union cvmx_pciercx_cfg030 { 540 uint32_t u32; 541 struct cvmx_pciercx_cfg030_s { 542 uint32_t reserved_22_31:10; 543 uint32_t tp:1; 544 uint32_t ap_d:1; 545 uint32_t ur_d:1; 546 uint32_t fe_d:1; 547 uint32_t nfe_d:1; 548 uint32_t ce_d:1; 549 uint32_t reserved_15_15:1; 550 uint32_t mrrs:3; 551 uint32_t ns_en:1; 552 uint32_t ap_en:1; 553 uint32_t pf_en:1; 554 uint32_t etf_en:1; 555 uint32_t mps:3; 556 uint32_t ro_en:1; 557 uint32_t ur_en:1; 558 uint32_t fe_en:1; 559 uint32_t nfe_en:1; 560 uint32_t ce_en:1; 561 } s; 562 struct cvmx_pciercx_cfg030_s cn52xx; 563 struct cvmx_pciercx_cfg030_s cn52xxp1; 564 struct cvmx_pciercx_cfg030_s cn56xx; 565 struct cvmx_pciercx_cfg030_s cn56xxp1; 566 struct cvmx_pciercx_cfg030_s cn63xx; 567 struct cvmx_pciercx_cfg030_s cn63xxp1; 568 }; 569 570 union cvmx_pciercx_cfg031 { 571 uint32_t u32; 572 struct cvmx_pciercx_cfg031_s { 573 uint32_t pnum:8; 574 uint32_t reserved_22_23:2; 575 uint32_t lbnc:1; 576 uint32_t dllarc:1; 577 uint32_t sderc:1; 578 uint32_t cpm:1; 579 uint32_t l1el:3; 580 uint32_t l0el:3; 581 uint32_t aslpms:2; 582 uint32_t mlw:6; 583 uint32_t mls:4; 584 } s; 585 struct cvmx_pciercx_cfg031_s cn52xx; 586 struct cvmx_pciercx_cfg031_s cn52xxp1; 587 struct cvmx_pciercx_cfg031_s cn56xx; 588 struct cvmx_pciercx_cfg031_s cn56xxp1; 589 struct cvmx_pciercx_cfg031_s cn63xx; 590 struct cvmx_pciercx_cfg031_s cn63xxp1; 591 }; 592 593 union cvmx_pciercx_cfg032 { 594 uint32_t u32; 595 struct cvmx_pciercx_cfg032_s { 596 uint32_t lab:1; 597 uint32_t lbm:1; 598 uint32_t dlla:1; 599 uint32_t scc:1; 600 uint32_t lt:1; 601 uint32_t reserved_26_26:1; 602 uint32_t nlw:6; 603 uint32_t ls:4; 604 uint32_t reserved_12_15:4; 605 uint32_t lab_int_enb:1; 606 uint32_t lbm_int_enb:1; 607 uint32_t hawd:1; 608 uint32_t ecpm:1; 609 uint32_t es:1; 610 uint32_t ccc:1; 611 uint32_t rl:1; 612 uint32_t ld:1; 613 uint32_t rcb:1; 614 uint32_t reserved_2_2:1; 615 uint32_t aslpc:2; 616 } s; 617 struct cvmx_pciercx_cfg032_s cn52xx; 618 struct cvmx_pciercx_cfg032_s cn52xxp1; 619 struct cvmx_pciercx_cfg032_s cn56xx; 620 struct cvmx_pciercx_cfg032_s cn56xxp1; 621 struct cvmx_pciercx_cfg032_s cn63xx; 622 struct cvmx_pciercx_cfg032_s cn63xxp1; 623 }; 624 625 union cvmx_pciercx_cfg033 { 626 uint32_t u32; 627 struct cvmx_pciercx_cfg033_s { 628 uint32_t ps_num:13; 629 uint32_t nccs:1; 630 uint32_t emip:1; 631 uint32_t sp_ls:2; 632 uint32_t sp_lv:8; 633 uint32_t hp_c:1; 634 uint32_t hp_s:1; 635 uint32_t pip:1; 636 uint32_t aip:1; 637 uint32_t mrlsp:1; 638 uint32_t pcp:1; 639 uint32_t abp:1; 640 } s; 641 struct cvmx_pciercx_cfg033_s cn52xx; 642 struct cvmx_pciercx_cfg033_s cn52xxp1; 643 struct cvmx_pciercx_cfg033_s cn56xx; 644 struct cvmx_pciercx_cfg033_s cn56xxp1; 645 struct cvmx_pciercx_cfg033_s cn63xx; 646 struct cvmx_pciercx_cfg033_s cn63xxp1; 647 }; 648 649 union cvmx_pciercx_cfg034 { 650 uint32_t u32; 651 struct cvmx_pciercx_cfg034_s { 652 uint32_t reserved_25_31:7; 653 uint32_t dlls_c:1; 654 uint32_t emis:1; 655 uint32_t pds:1; 656 uint32_t mrlss:1; 657 uint32_t ccint_d:1; 658 uint32_t pd_c:1; 659 uint32_t mrls_c:1; 660 uint32_t pf_d:1; 661 uint32_t abp_d:1; 662 uint32_t reserved_13_15:3; 663 uint32_t dlls_en:1; 664 uint32_t emic:1; 665 uint32_t pcc:1; 666 uint32_t pic:2; 667 uint32_t aic:2; 668 uint32_t hpint_en:1; 669 uint32_t ccint_en:1; 670 uint32_t pd_en:1; 671 uint32_t mrls_en:1; 672 uint32_t pf_en:1; 673 uint32_t abp_en:1; 674 } s; 675 struct cvmx_pciercx_cfg034_s cn52xx; 676 struct cvmx_pciercx_cfg034_s cn52xxp1; 677 struct cvmx_pciercx_cfg034_s cn56xx; 678 struct cvmx_pciercx_cfg034_s cn56xxp1; 679 struct cvmx_pciercx_cfg034_s cn63xx; 680 struct cvmx_pciercx_cfg034_s cn63xxp1; 681 }; 682 683 union cvmx_pciercx_cfg035 { 684 uint32_t u32; 685 struct cvmx_pciercx_cfg035_s { 686 uint32_t reserved_17_31:15; 687 uint32_t crssv:1; 688 uint32_t reserved_5_15:11; 689 uint32_t crssve:1; 690 uint32_t pmeie:1; 691 uint32_t sefee:1; 692 uint32_t senfee:1; 693 uint32_t secee:1; 694 } s; 695 struct cvmx_pciercx_cfg035_s cn52xx; 696 struct cvmx_pciercx_cfg035_s cn52xxp1; 697 struct cvmx_pciercx_cfg035_s cn56xx; 698 struct cvmx_pciercx_cfg035_s cn56xxp1; 699 struct cvmx_pciercx_cfg035_s cn63xx; 700 struct cvmx_pciercx_cfg035_s cn63xxp1; 701 }; 702 703 union cvmx_pciercx_cfg036 { 704 uint32_t u32; 705 struct cvmx_pciercx_cfg036_s { 706 uint32_t reserved_18_31:14; 707 uint32_t pme_pend:1; 708 uint32_t pme_stat:1; 709 uint32_t pme_rid:16; 710 } s; 711 struct cvmx_pciercx_cfg036_s cn52xx; 712 struct cvmx_pciercx_cfg036_s cn52xxp1; 713 struct cvmx_pciercx_cfg036_s cn56xx; 714 struct cvmx_pciercx_cfg036_s cn56xxp1; 715 struct cvmx_pciercx_cfg036_s cn63xx; 716 struct cvmx_pciercx_cfg036_s cn63xxp1; 717 }; 718 719 union cvmx_pciercx_cfg037 { 720 uint32_t u32; 721 struct cvmx_pciercx_cfg037_s { 722 uint32_t reserved_5_31:27; 723 uint32_t ctds:1; 724 uint32_t ctrs:4; 725 } s; 726 struct cvmx_pciercx_cfg037_s cn52xx; 727 struct cvmx_pciercx_cfg037_s cn52xxp1; 728 struct cvmx_pciercx_cfg037_s cn56xx; 729 struct cvmx_pciercx_cfg037_s cn56xxp1; 730 struct cvmx_pciercx_cfg037_s cn63xx; 731 struct cvmx_pciercx_cfg037_s cn63xxp1; 732 }; 733 734 union cvmx_pciercx_cfg038 { 735 uint32_t u32; 736 struct cvmx_pciercx_cfg038_s { 737 uint32_t reserved_5_31:27; 738 uint32_t ctd:1; 739 uint32_t ctv:4; 740 } s; 741 struct cvmx_pciercx_cfg038_s cn52xx; 742 struct cvmx_pciercx_cfg038_s cn52xxp1; 743 struct cvmx_pciercx_cfg038_s cn56xx; 744 struct cvmx_pciercx_cfg038_s cn56xxp1; 745 struct cvmx_pciercx_cfg038_s cn63xx; 746 struct cvmx_pciercx_cfg038_s cn63xxp1; 747 }; 748 749 union cvmx_pciercx_cfg039 { 750 uint32_t u32; 751 struct cvmx_pciercx_cfg039_s { 752 uint32_t reserved_9_31:23; 753 uint32_t cls:1; 754 uint32_t slsv:7; 755 uint32_t reserved_0_0:1; 756 } s; 757 struct cvmx_pciercx_cfg039_cn52xx { 758 uint32_t reserved_0_31:32; 759 } cn52xx; 760 struct cvmx_pciercx_cfg039_cn52xx cn52xxp1; 761 struct cvmx_pciercx_cfg039_cn52xx cn56xx; 762 struct cvmx_pciercx_cfg039_cn52xx cn56xxp1; 763 struct cvmx_pciercx_cfg039_s cn63xx; 764 struct cvmx_pciercx_cfg039_cn52xx cn63xxp1; 765 }; 766 767 union cvmx_pciercx_cfg040 { 768 uint32_t u32; 769 struct cvmx_pciercx_cfg040_s { 770 uint32_t reserved_17_31:15; 771 uint32_t cdl:1; 772 uint32_t reserved_13_15:3; 773 uint32_t cde:1; 774 uint32_t csos:1; 775 uint32_t emc:1; 776 uint32_t tm:3; 777 uint32_t sde:1; 778 uint32_t hasd:1; 779 uint32_t ec:1; 780 uint32_t tls:4; 781 } s; 782 struct cvmx_pciercx_cfg040_cn52xx { 783 uint32_t reserved_0_31:32; 784 } cn52xx; 785 struct cvmx_pciercx_cfg040_cn52xx cn52xxp1; 786 struct cvmx_pciercx_cfg040_cn52xx cn56xx; 787 struct cvmx_pciercx_cfg040_cn52xx cn56xxp1; 788 struct cvmx_pciercx_cfg040_s cn63xx; 789 struct cvmx_pciercx_cfg040_s cn63xxp1; 790 }; 791 792 union cvmx_pciercx_cfg041 { 793 uint32_t u32; 794 struct cvmx_pciercx_cfg041_s { 795 uint32_t reserved_0_31:32; 796 } s; 797 struct cvmx_pciercx_cfg041_s cn52xx; 798 struct cvmx_pciercx_cfg041_s cn52xxp1; 799 struct cvmx_pciercx_cfg041_s cn56xx; 800 struct cvmx_pciercx_cfg041_s cn56xxp1; 801 struct cvmx_pciercx_cfg041_s cn63xx; 802 struct cvmx_pciercx_cfg041_s cn63xxp1; 803 }; 804 805 union cvmx_pciercx_cfg042 { 806 uint32_t u32; 807 struct cvmx_pciercx_cfg042_s { 808 uint32_t reserved_0_31:32; 809 } s; 810 struct cvmx_pciercx_cfg042_s cn52xx; 811 struct cvmx_pciercx_cfg042_s cn52xxp1; 812 struct cvmx_pciercx_cfg042_s cn56xx; 813 struct cvmx_pciercx_cfg042_s cn56xxp1; 814 struct cvmx_pciercx_cfg042_s cn63xx; 815 struct cvmx_pciercx_cfg042_s cn63xxp1; 816 }; 817 818 union cvmx_pciercx_cfg064 { 819 uint32_t u32; 820 struct cvmx_pciercx_cfg064_s { 821 uint32_t nco:12; 822 uint32_t cv:4; 823 uint32_t pcieec:16; 824 } s; 825 struct cvmx_pciercx_cfg064_s cn52xx; 826 struct cvmx_pciercx_cfg064_s cn52xxp1; 827 struct cvmx_pciercx_cfg064_s cn56xx; 828 struct cvmx_pciercx_cfg064_s cn56xxp1; 829 struct cvmx_pciercx_cfg064_s cn63xx; 830 struct cvmx_pciercx_cfg064_s cn63xxp1; 831 }; 832 833 union cvmx_pciercx_cfg065 { 834 uint32_t u32; 835 struct cvmx_pciercx_cfg065_s { 836 uint32_t reserved_21_31:11; 837 uint32_t ures:1; 838 uint32_t ecrces:1; 839 uint32_t mtlps:1; 840 uint32_t ros:1; 841 uint32_t ucs:1; 842 uint32_t cas:1; 843 uint32_t cts:1; 844 uint32_t fcpes:1; 845 uint32_t ptlps:1; 846 uint32_t reserved_6_11:6; 847 uint32_t sdes:1; 848 uint32_t dlpes:1; 849 uint32_t reserved_0_3:4; 850 } s; 851 struct cvmx_pciercx_cfg065_s cn52xx; 852 struct cvmx_pciercx_cfg065_s cn52xxp1; 853 struct cvmx_pciercx_cfg065_s cn56xx; 854 struct cvmx_pciercx_cfg065_s cn56xxp1; 855 struct cvmx_pciercx_cfg065_s cn63xx; 856 struct cvmx_pciercx_cfg065_s cn63xxp1; 857 }; 858 859 union cvmx_pciercx_cfg066 { 860 uint32_t u32; 861 struct cvmx_pciercx_cfg066_s { 862 uint32_t reserved_21_31:11; 863 uint32_t urem:1; 864 uint32_t ecrcem:1; 865 uint32_t mtlpm:1; 866 uint32_t rom:1; 867 uint32_t ucm:1; 868 uint32_t cam:1; 869 uint32_t ctm:1; 870 uint32_t fcpem:1; 871 uint32_t ptlpm:1; 872 uint32_t reserved_6_11:6; 873 uint32_t sdem:1; 874 uint32_t dlpem:1; 875 uint32_t reserved_0_3:4; 876 } s; 877 struct cvmx_pciercx_cfg066_s cn52xx; 878 struct cvmx_pciercx_cfg066_s cn52xxp1; 879 struct cvmx_pciercx_cfg066_s cn56xx; 880 struct cvmx_pciercx_cfg066_s cn56xxp1; 881 struct cvmx_pciercx_cfg066_s cn63xx; 882 struct cvmx_pciercx_cfg066_s cn63xxp1; 883 }; 884 885 union cvmx_pciercx_cfg067 { 886 uint32_t u32; 887 struct cvmx_pciercx_cfg067_s { 888 uint32_t reserved_21_31:11; 889 uint32_t ures:1; 890 uint32_t ecrces:1; 891 uint32_t mtlps:1; 892 uint32_t ros:1; 893 uint32_t ucs:1; 894 uint32_t cas:1; 895 uint32_t cts:1; 896 uint32_t fcpes:1; 897 uint32_t ptlps:1; 898 uint32_t reserved_6_11:6; 899 uint32_t sdes:1; 900 uint32_t dlpes:1; 901 uint32_t reserved_0_3:4; 902 } s; 903 struct cvmx_pciercx_cfg067_s cn52xx; 904 struct cvmx_pciercx_cfg067_s cn52xxp1; 905 struct cvmx_pciercx_cfg067_s cn56xx; 906 struct cvmx_pciercx_cfg067_s cn56xxp1; 907 struct cvmx_pciercx_cfg067_s cn63xx; 908 struct cvmx_pciercx_cfg067_s cn63xxp1; 909 }; 910 911 union cvmx_pciercx_cfg068 { 912 uint32_t u32; 913 struct cvmx_pciercx_cfg068_s { 914 uint32_t reserved_14_31:18; 915 uint32_t anfes:1; 916 uint32_t rtts:1; 917 uint32_t reserved_9_11:3; 918 uint32_t rnrs:1; 919 uint32_t bdllps:1; 920 uint32_t btlps:1; 921 uint32_t reserved_1_5:5; 922 uint32_t res:1; 923 } s; 924 struct cvmx_pciercx_cfg068_s cn52xx; 925 struct cvmx_pciercx_cfg068_s cn52xxp1; 926 struct cvmx_pciercx_cfg068_s cn56xx; 927 struct cvmx_pciercx_cfg068_s cn56xxp1; 928 struct cvmx_pciercx_cfg068_s cn63xx; 929 struct cvmx_pciercx_cfg068_s cn63xxp1; 930 }; 931 932 union cvmx_pciercx_cfg069 { 933 uint32_t u32; 934 struct cvmx_pciercx_cfg069_s { 935 uint32_t reserved_14_31:18; 936 uint32_t anfem:1; 937 uint32_t rttm:1; 938 uint32_t reserved_9_11:3; 939 uint32_t rnrm:1; 940 uint32_t bdllpm:1; 941 uint32_t btlpm:1; 942 uint32_t reserved_1_5:5; 943 uint32_t rem:1; 944 } s; 945 struct cvmx_pciercx_cfg069_s cn52xx; 946 struct cvmx_pciercx_cfg069_s cn52xxp1; 947 struct cvmx_pciercx_cfg069_s cn56xx; 948 struct cvmx_pciercx_cfg069_s cn56xxp1; 949 struct cvmx_pciercx_cfg069_s cn63xx; 950 struct cvmx_pciercx_cfg069_s cn63xxp1; 951 }; 952 953 union cvmx_pciercx_cfg070 { 954 uint32_t u32; 955 struct cvmx_pciercx_cfg070_s { 956 uint32_t reserved_9_31:23; 957 uint32_t ce:1; 958 uint32_t cc:1; 959 uint32_t ge:1; 960 uint32_t gc:1; 961 uint32_t fep:5; 962 } s; 963 struct cvmx_pciercx_cfg070_s cn52xx; 964 struct cvmx_pciercx_cfg070_s cn52xxp1; 965 struct cvmx_pciercx_cfg070_s cn56xx; 966 struct cvmx_pciercx_cfg070_s cn56xxp1; 967 struct cvmx_pciercx_cfg070_s cn63xx; 968 struct cvmx_pciercx_cfg070_s cn63xxp1; 969 }; 970 971 union cvmx_pciercx_cfg071 { 972 uint32_t u32; 973 struct cvmx_pciercx_cfg071_s { 974 uint32_t dword1:32; 975 } s; 976 struct cvmx_pciercx_cfg071_s cn52xx; 977 struct cvmx_pciercx_cfg071_s cn52xxp1; 978 struct cvmx_pciercx_cfg071_s cn56xx; 979 struct cvmx_pciercx_cfg071_s cn56xxp1; 980 struct cvmx_pciercx_cfg071_s cn63xx; 981 struct cvmx_pciercx_cfg071_s cn63xxp1; 982 }; 983 984 union cvmx_pciercx_cfg072 { 985 uint32_t u32; 986 struct cvmx_pciercx_cfg072_s { 987 uint32_t dword2:32; 988 } s; 989 struct cvmx_pciercx_cfg072_s cn52xx; 990 struct cvmx_pciercx_cfg072_s cn52xxp1; 991 struct cvmx_pciercx_cfg072_s cn56xx; 992 struct cvmx_pciercx_cfg072_s cn56xxp1; 993 struct cvmx_pciercx_cfg072_s cn63xx; 994 struct cvmx_pciercx_cfg072_s cn63xxp1; 995 }; 996 997 union cvmx_pciercx_cfg073 { 998 uint32_t u32; 999 struct cvmx_pciercx_cfg073_s { 1000 uint32_t dword3:32; 1001 } s; 1002 struct cvmx_pciercx_cfg073_s cn52xx; 1003 struct cvmx_pciercx_cfg073_s cn52xxp1; 1004 struct cvmx_pciercx_cfg073_s cn56xx; 1005 struct cvmx_pciercx_cfg073_s cn56xxp1; 1006 struct cvmx_pciercx_cfg073_s cn63xx; 1007 struct cvmx_pciercx_cfg073_s cn63xxp1; 1008 }; 1009 1010 union cvmx_pciercx_cfg074 { 1011 uint32_t u32; 1012 struct cvmx_pciercx_cfg074_s { 1013 uint32_t dword4:32; 1014 } s; 1015 struct cvmx_pciercx_cfg074_s cn52xx; 1016 struct cvmx_pciercx_cfg074_s cn52xxp1; 1017 struct cvmx_pciercx_cfg074_s cn56xx; 1018 struct cvmx_pciercx_cfg074_s cn56xxp1; 1019 struct cvmx_pciercx_cfg074_s cn63xx; 1020 struct cvmx_pciercx_cfg074_s cn63xxp1; 1021 }; 1022 1023 union cvmx_pciercx_cfg075 { 1024 uint32_t u32; 1025 struct cvmx_pciercx_cfg075_s { 1026 uint32_t reserved_3_31:29; 1027 uint32_t fere:1; 1028 uint32_t nfere:1; 1029 uint32_t cere:1; 1030 } s; 1031 struct cvmx_pciercx_cfg075_s cn52xx; 1032 struct cvmx_pciercx_cfg075_s cn52xxp1; 1033 struct cvmx_pciercx_cfg075_s cn56xx; 1034 struct cvmx_pciercx_cfg075_s cn56xxp1; 1035 struct cvmx_pciercx_cfg075_s cn63xx; 1036 struct cvmx_pciercx_cfg075_s cn63xxp1; 1037 }; 1038 1039 union cvmx_pciercx_cfg076 { 1040 uint32_t u32; 1041 struct cvmx_pciercx_cfg076_s { 1042 uint32_t aeimn:5; 1043 uint32_t reserved_7_26:20; 1044 uint32_t femr:1; 1045 uint32_t nfemr:1; 1046 uint32_t fuf:1; 1047 uint32_t multi_efnfr:1; 1048 uint32_t efnfr:1; 1049 uint32_t multi_ecr:1; 1050 uint32_t ecr:1; 1051 } s; 1052 struct cvmx_pciercx_cfg076_s cn52xx; 1053 struct cvmx_pciercx_cfg076_s cn52xxp1; 1054 struct cvmx_pciercx_cfg076_s cn56xx; 1055 struct cvmx_pciercx_cfg076_s cn56xxp1; 1056 struct cvmx_pciercx_cfg076_s cn63xx; 1057 struct cvmx_pciercx_cfg076_s cn63xxp1; 1058 }; 1059 1060 union cvmx_pciercx_cfg077 { 1061 uint32_t u32; 1062 struct cvmx_pciercx_cfg077_s { 1063 uint32_t efnfsi:16; 1064 uint32_t ecsi:16; 1065 } s; 1066 struct cvmx_pciercx_cfg077_s cn52xx; 1067 struct cvmx_pciercx_cfg077_s cn52xxp1; 1068 struct cvmx_pciercx_cfg077_s cn56xx; 1069 struct cvmx_pciercx_cfg077_s cn56xxp1; 1070 struct cvmx_pciercx_cfg077_s cn63xx; 1071 struct cvmx_pciercx_cfg077_s cn63xxp1; 1072 }; 1073 1074 union cvmx_pciercx_cfg448 { 1075 uint32_t u32; 1076 struct cvmx_pciercx_cfg448_s { 1077 uint32_t rtl:16; 1078 uint32_t rtltl:16; 1079 } s; 1080 struct cvmx_pciercx_cfg448_s cn52xx; 1081 struct cvmx_pciercx_cfg448_s cn52xxp1; 1082 struct cvmx_pciercx_cfg448_s cn56xx; 1083 struct cvmx_pciercx_cfg448_s cn56xxp1; 1084 struct cvmx_pciercx_cfg448_s cn63xx; 1085 struct cvmx_pciercx_cfg448_s cn63xxp1; 1086 }; 1087 1088 union cvmx_pciercx_cfg449 { 1089 uint32_t u32; 1090 struct cvmx_pciercx_cfg449_s { 1091 uint32_t omr:32; 1092 } s; 1093 struct cvmx_pciercx_cfg449_s cn52xx; 1094 struct cvmx_pciercx_cfg449_s cn52xxp1; 1095 struct cvmx_pciercx_cfg449_s cn56xx; 1096 struct cvmx_pciercx_cfg449_s cn56xxp1; 1097 struct cvmx_pciercx_cfg449_s cn63xx; 1098 struct cvmx_pciercx_cfg449_s cn63xxp1; 1099 }; 1100 1101 union cvmx_pciercx_cfg450 { 1102 uint32_t u32; 1103 struct cvmx_pciercx_cfg450_s { 1104 uint32_t lpec:8; 1105 uint32_t reserved_22_23:2; 1106 uint32_t link_state:6; 1107 uint32_t force_link:1; 1108 uint32_t reserved_8_14:7; 1109 uint32_t link_num:8; 1110 } s; 1111 struct cvmx_pciercx_cfg450_s cn52xx; 1112 struct cvmx_pciercx_cfg450_s cn52xxp1; 1113 struct cvmx_pciercx_cfg450_s cn56xx; 1114 struct cvmx_pciercx_cfg450_s cn56xxp1; 1115 struct cvmx_pciercx_cfg450_s cn63xx; 1116 struct cvmx_pciercx_cfg450_s cn63xxp1; 1117 }; 1118 1119 union cvmx_pciercx_cfg451 { 1120 uint32_t u32; 1121 struct cvmx_pciercx_cfg451_s { 1122 uint32_t reserved_30_31:2; 1123 uint32_t l1el:3; 1124 uint32_t l0el:3; 1125 uint32_t n_fts_cc:8; 1126 uint32_t n_fts:8; 1127 uint32_t ack_freq:8; 1128 } s; 1129 struct cvmx_pciercx_cfg451_s cn52xx; 1130 struct cvmx_pciercx_cfg451_s cn52xxp1; 1131 struct cvmx_pciercx_cfg451_s cn56xx; 1132 struct cvmx_pciercx_cfg451_s cn56xxp1; 1133 struct cvmx_pciercx_cfg451_s cn63xx; 1134 struct cvmx_pciercx_cfg451_s cn63xxp1; 1135 }; 1136 1137 union cvmx_pciercx_cfg452 { 1138 uint32_t u32; 1139 struct cvmx_pciercx_cfg452_s { 1140 uint32_t reserved_26_31:6; 1141 uint32_t eccrc:1; 1142 uint32_t reserved_22_24:3; 1143 uint32_t lme:6; 1144 uint32_t reserved_8_15:8; 1145 uint32_t flm:1; 1146 uint32_t reserved_6_6:1; 1147 uint32_t dllle:1; 1148 uint32_t reserved_4_4:1; 1149 uint32_t ra:1; 1150 uint32_t le:1; 1151 uint32_t sd:1; 1152 uint32_t omr:1; 1153 } s; 1154 struct cvmx_pciercx_cfg452_s cn52xx; 1155 struct cvmx_pciercx_cfg452_s cn52xxp1; 1156 struct cvmx_pciercx_cfg452_s cn56xx; 1157 struct cvmx_pciercx_cfg452_s cn56xxp1; 1158 struct cvmx_pciercx_cfg452_s cn63xx; 1159 struct cvmx_pciercx_cfg452_s cn63xxp1; 1160 }; 1161 1162 union cvmx_pciercx_cfg453 { 1163 uint32_t u32; 1164 struct cvmx_pciercx_cfg453_s { 1165 uint32_t dlld:1; 1166 uint32_t reserved_26_30:5; 1167 uint32_t ack_nak:1; 1168 uint32_t fcd:1; 1169 uint32_t ilst:24; 1170 } s; 1171 struct cvmx_pciercx_cfg453_s cn52xx; 1172 struct cvmx_pciercx_cfg453_s cn52xxp1; 1173 struct cvmx_pciercx_cfg453_s cn56xx; 1174 struct cvmx_pciercx_cfg453_s cn56xxp1; 1175 struct cvmx_pciercx_cfg453_s cn63xx; 1176 struct cvmx_pciercx_cfg453_s cn63xxp1; 1177 }; 1178 1179 union cvmx_pciercx_cfg454 { 1180 uint32_t u32; 1181 struct cvmx_pciercx_cfg454_s { 1182 uint32_t reserved_29_31:3; 1183 uint32_t tmfcwt:5; 1184 uint32_t tmanlt:5; 1185 uint32_t tmrt:5; 1186 uint32_t reserved_11_13:3; 1187 uint32_t nskps:3; 1188 uint32_t reserved_4_7:4; 1189 uint32_t ntss:4; 1190 } s; 1191 struct cvmx_pciercx_cfg454_s cn52xx; 1192 struct cvmx_pciercx_cfg454_s cn52xxp1; 1193 struct cvmx_pciercx_cfg454_s cn56xx; 1194 struct cvmx_pciercx_cfg454_s cn56xxp1; 1195 struct cvmx_pciercx_cfg454_s cn63xx; 1196 struct cvmx_pciercx_cfg454_s cn63xxp1; 1197 }; 1198 1199 union cvmx_pciercx_cfg455 { 1200 uint32_t u32; 1201 struct cvmx_pciercx_cfg455_s { 1202 uint32_t m_cfg0_filt:1; 1203 uint32_t m_io_filt:1; 1204 uint32_t msg_ctrl:1; 1205 uint32_t m_cpl_ecrc_filt:1; 1206 uint32_t m_ecrc_filt:1; 1207 uint32_t m_cpl_len_err:1; 1208 uint32_t m_cpl_attr_err:1; 1209 uint32_t m_cpl_tc_err:1; 1210 uint32_t m_cpl_fun_err:1; 1211 uint32_t m_cpl_rid_err:1; 1212 uint32_t m_cpl_tag_err:1; 1213 uint32_t m_lk_filt:1; 1214 uint32_t m_cfg1_filt:1; 1215 uint32_t m_bar_match:1; 1216 uint32_t m_pois_filt:1; 1217 uint32_t m_fun:1; 1218 uint32_t dfcwt:1; 1219 uint32_t reserved_11_14:4; 1220 uint32_t skpiv:11; 1221 } s; 1222 struct cvmx_pciercx_cfg455_s cn52xx; 1223 struct cvmx_pciercx_cfg455_s cn52xxp1; 1224 struct cvmx_pciercx_cfg455_s cn56xx; 1225 struct cvmx_pciercx_cfg455_s cn56xxp1; 1226 struct cvmx_pciercx_cfg455_s cn63xx; 1227 struct cvmx_pciercx_cfg455_s cn63xxp1; 1228 }; 1229 1230 union cvmx_pciercx_cfg456 { 1231 uint32_t u32; 1232 struct cvmx_pciercx_cfg456_s { 1233 uint32_t reserved_2_31:30; 1234 uint32_t m_vend1_drp:1; 1235 uint32_t m_vend0_drp:1; 1236 } s; 1237 struct cvmx_pciercx_cfg456_s cn52xx; 1238 struct cvmx_pciercx_cfg456_s cn52xxp1; 1239 struct cvmx_pciercx_cfg456_s cn56xx; 1240 struct cvmx_pciercx_cfg456_s cn56xxp1; 1241 struct cvmx_pciercx_cfg456_s cn63xx; 1242 struct cvmx_pciercx_cfg456_s cn63xxp1; 1243 }; 1244 1245 union cvmx_pciercx_cfg458 { 1246 uint32_t u32; 1247 struct cvmx_pciercx_cfg458_s { 1248 uint32_t dbg_info_l32:32; 1249 } s; 1250 struct cvmx_pciercx_cfg458_s cn52xx; 1251 struct cvmx_pciercx_cfg458_s cn52xxp1; 1252 struct cvmx_pciercx_cfg458_s cn56xx; 1253 struct cvmx_pciercx_cfg458_s cn56xxp1; 1254 struct cvmx_pciercx_cfg458_s cn63xx; 1255 struct cvmx_pciercx_cfg458_s cn63xxp1; 1256 }; 1257 1258 union cvmx_pciercx_cfg459 { 1259 uint32_t u32; 1260 struct cvmx_pciercx_cfg459_s { 1261 uint32_t dbg_info_u32:32; 1262 } s; 1263 struct cvmx_pciercx_cfg459_s cn52xx; 1264 struct cvmx_pciercx_cfg459_s cn52xxp1; 1265 struct cvmx_pciercx_cfg459_s cn56xx; 1266 struct cvmx_pciercx_cfg459_s cn56xxp1; 1267 struct cvmx_pciercx_cfg459_s cn63xx; 1268 struct cvmx_pciercx_cfg459_s cn63xxp1; 1269 }; 1270 1271 union cvmx_pciercx_cfg460 { 1272 uint32_t u32; 1273 struct cvmx_pciercx_cfg460_s { 1274 uint32_t reserved_20_31:12; 1275 uint32_t tphfcc:8; 1276 uint32_t tpdfcc:12; 1277 } s; 1278 struct cvmx_pciercx_cfg460_s cn52xx; 1279 struct cvmx_pciercx_cfg460_s cn52xxp1; 1280 struct cvmx_pciercx_cfg460_s cn56xx; 1281 struct cvmx_pciercx_cfg460_s cn56xxp1; 1282 struct cvmx_pciercx_cfg460_s cn63xx; 1283 struct cvmx_pciercx_cfg460_s cn63xxp1; 1284 }; 1285 1286 union cvmx_pciercx_cfg461 { 1287 uint32_t u32; 1288 struct cvmx_pciercx_cfg461_s { 1289 uint32_t reserved_20_31:12; 1290 uint32_t tchfcc:8; 1291 uint32_t tcdfcc:12; 1292 } s; 1293 struct cvmx_pciercx_cfg461_s cn52xx; 1294 struct cvmx_pciercx_cfg461_s cn52xxp1; 1295 struct cvmx_pciercx_cfg461_s cn56xx; 1296 struct cvmx_pciercx_cfg461_s cn56xxp1; 1297 struct cvmx_pciercx_cfg461_s cn63xx; 1298 struct cvmx_pciercx_cfg461_s cn63xxp1; 1299 }; 1300 1301 union cvmx_pciercx_cfg462 { 1302 uint32_t u32; 1303 struct cvmx_pciercx_cfg462_s { 1304 uint32_t reserved_20_31:12; 1305 uint32_t tchfcc:8; 1306 uint32_t tcdfcc:12; 1307 } s; 1308 struct cvmx_pciercx_cfg462_s cn52xx; 1309 struct cvmx_pciercx_cfg462_s cn52xxp1; 1310 struct cvmx_pciercx_cfg462_s cn56xx; 1311 struct cvmx_pciercx_cfg462_s cn56xxp1; 1312 struct cvmx_pciercx_cfg462_s cn63xx; 1313 struct cvmx_pciercx_cfg462_s cn63xxp1; 1314 }; 1315 1316 union cvmx_pciercx_cfg463 { 1317 uint32_t u32; 1318 struct cvmx_pciercx_cfg463_s { 1319 uint32_t reserved_3_31:29; 1320 uint32_t rqne:1; 1321 uint32_t trbne:1; 1322 uint32_t rtlpfccnr:1; 1323 } s; 1324 struct cvmx_pciercx_cfg463_s cn52xx; 1325 struct cvmx_pciercx_cfg463_s cn52xxp1; 1326 struct cvmx_pciercx_cfg463_s cn56xx; 1327 struct cvmx_pciercx_cfg463_s cn56xxp1; 1328 struct cvmx_pciercx_cfg463_s cn63xx; 1329 struct cvmx_pciercx_cfg463_s cn63xxp1; 1330 }; 1331 1332 union cvmx_pciercx_cfg464 { 1333 uint32_t u32; 1334 struct cvmx_pciercx_cfg464_s { 1335 uint32_t wrr_vc3:8; 1336 uint32_t wrr_vc2:8; 1337 uint32_t wrr_vc1:8; 1338 uint32_t wrr_vc0:8; 1339 } s; 1340 struct cvmx_pciercx_cfg464_s cn52xx; 1341 struct cvmx_pciercx_cfg464_s cn52xxp1; 1342 struct cvmx_pciercx_cfg464_s cn56xx; 1343 struct cvmx_pciercx_cfg464_s cn56xxp1; 1344 struct cvmx_pciercx_cfg464_s cn63xx; 1345 struct cvmx_pciercx_cfg464_s cn63xxp1; 1346 }; 1347 1348 union cvmx_pciercx_cfg465 { 1349 uint32_t u32; 1350 struct cvmx_pciercx_cfg465_s { 1351 uint32_t wrr_vc7:8; 1352 uint32_t wrr_vc6:8; 1353 uint32_t wrr_vc5:8; 1354 uint32_t wrr_vc4:8; 1355 } s; 1356 struct cvmx_pciercx_cfg465_s cn52xx; 1357 struct cvmx_pciercx_cfg465_s cn52xxp1; 1358 struct cvmx_pciercx_cfg465_s cn56xx; 1359 struct cvmx_pciercx_cfg465_s cn56xxp1; 1360 struct cvmx_pciercx_cfg465_s cn63xx; 1361 struct cvmx_pciercx_cfg465_s cn63xxp1; 1362 }; 1363 1364 union cvmx_pciercx_cfg466 { 1365 uint32_t u32; 1366 struct cvmx_pciercx_cfg466_s { 1367 uint32_t rx_queue_order:1; 1368 uint32_t type_ordering:1; 1369 uint32_t reserved_24_29:6; 1370 uint32_t queue_mode:3; 1371 uint32_t reserved_20_20:1; 1372 uint32_t header_credits:8; 1373 uint32_t data_credits:12; 1374 } s; 1375 struct cvmx_pciercx_cfg466_s cn52xx; 1376 struct cvmx_pciercx_cfg466_s cn52xxp1; 1377 struct cvmx_pciercx_cfg466_s cn56xx; 1378 struct cvmx_pciercx_cfg466_s cn56xxp1; 1379 struct cvmx_pciercx_cfg466_s cn63xx; 1380 struct cvmx_pciercx_cfg466_s cn63xxp1; 1381 }; 1382 1383 union cvmx_pciercx_cfg467 { 1384 uint32_t u32; 1385 struct cvmx_pciercx_cfg467_s { 1386 uint32_t reserved_24_31:8; 1387 uint32_t queue_mode:3; 1388 uint32_t reserved_20_20:1; 1389 uint32_t header_credits:8; 1390 uint32_t data_credits:12; 1391 } s; 1392 struct cvmx_pciercx_cfg467_s cn52xx; 1393 struct cvmx_pciercx_cfg467_s cn52xxp1; 1394 struct cvmx_pciercx_cfg467_s cn56xx; 1395 struct cvmx_pciercx_cfg467_s cn56xxp1; 1396 struct cvmx_pciercx_cfg467_s cn63xx; 1397 struct cvmx_pciercx_cfg467_s cn63xxp1; 1398 }; 1399 1400 union cvmx_pciercx_cfg468 { 1401 uint32_t u32; 1402 struct cvmx_pciercx_cfg468_s { 1403 uint32_t reserved_24_31:8; 1404 uint32_t queue_mode:3; 1405 uint32_t reserved_20_20:1; 1406 uint32_t header_credits:8; 1407 uint32_t data_credits:12; 1408 } s; 1409 struct cvmx_pciercx_cfg468_s cn52xx; 1410 struct cvmx_pciercx_cfg468_s cn52xxp1; 1411 struct cvmx_pciercx_cfg468_s cn56xx; 1412 struct cvmx_pciercx_cfg468_s cn56xxp1; 1413 struct cvmx_pciercx_cfg468_s cn63xx; 1414 struct cvmx_pciercx_cfg468_s cn63xxp1; 1415 }; 1416 1417 union cvmx_pciercx_cfg490 { 1418 uint32_t u32; 1419 struct cvmx_pciercx_cfg490_s { 1420 uint32_t reserved_26_31:6; 1421 uint32_t header_depth:10; 1422 uint32_t reserved_14_15:2; 1423 uint32_t data_depth:14; 1424 } s; 1425 struct cvmx_pciercx_cfg490_s cn52xx; 1426 struct cvmx_pciercx_cfg490_s cn52xxp1; 1427 struct cvmx_pciercx_cfg490_s cn56xx; 1428 struct cvmx_pciercx_cfg490_s cn56xxp1; 1429 struct cvmx_pciercx_cfg490_s cn63xx; 1430 struct cvmx_pciercx_cfg490_s cn63xxp1; 1431 }; 1432 1433 union cvmx_pciercx_cfg491 { 1434 uint32_t u32; 1435 struct cvmx_pciercx_cfg491_s { 1436 uint32_t reserved_26_31:6; 1437 uint32_t header_depth:10; 1438 uint32_t reserved_14_15:2; 1439 uint32_t data_depth:14; 1440 } s; 1441 struct cvmx_pciercx_cfg491_s cn52xx; 1442 struct cvmx_pciercx_cfg491_s cn52xxp1; 1443 struct cvmx_pciercx_cfg491_s cn56xx; 1444 struct cvmx_pciercx_cfg491_s cn56xxp1; 1445 struct cvmx_pciercx_cfg491_s cn63xx; 1446 struct cvmx_pciercx_cfg491_s cn63xxp1; 1447 }; 1448 1449 union cvmx_pciercx_cfg492 { 1450 uint32_t u32; 1451 struct cvmx_pciercx_cfg492_s { 1452 uint32_t reserved_26_31:6; 1453 uint32_t header_depth:10; 1454 uint32_t reserved_14_15:2; 1455 uint32_t data_depth:14; 1456 } s; 1457 struct cvmx_pciercx_cfg492_s cn52xx; 1458 struct cvmx_pciercx_cfg492_s cn52xxp1; 1459 struct cvmx_pciercx_cfg492_s cn56xx; 1460 struct cvmx_pciercx_cfg492_s cn56xxp1; 1461 struct cvmx_pciercx_cfg492_s cn63xx; 1462 struct cvmx_pciercx_cfg492_s cn63xxp1; 1463 }; 1464 1465 union cvmx_pciercx_cfg515 { 1466 uint32_t u32; 1467 struct cvmx_pciercx_cfg515_s { 1468 uint32_t reserved_21_31:11; 1469 uint32_t s_d_e:1; 1470 uint32_t ctcrb:1; 1471 uint32_t cpyts:1; 1472 uint32_t dsc:1; 1473 uint32_t le:9; 1474 uint32_t n_fts:8; 1475 } s; 1476 struct cvmx_pciercx_cfg515_s cn63xx; 1477 struct cvmx_pciercx_cfg515_s cn63xxp1; 1478 }; 1479 1480 union cvmx_pciercx_cfg516 { 1481 uint32_t u32; 1482 struct cvmx_pciercx_cfg516_s { 1483 uint32_t phy_stat:32; 1484 } s; 1485 struct cvmx_pciercx_cfg516_s cn52xx; 1486 struct cvmx_pciercx_cfg516_s cn52xxp1; 1487 struct cvmx_pciercx_cfg516_s cn56xx; 1488 struct cvmx_pciercx_cfg516_s cn56xxp1; 1489 struct cvmx_pciercx_cfg516_s cn63xx; 1490 struct cvmx_pciercx_cfg516_s cn63xxp1; 1491 }; 1492 1493 union cvmx_pciercx_cfg517 { 1494 uint32_t u32; 1495 struct cvmx_pciercx_cfg517_s { 1496 uint32_t phy_ctrl:32; 1497 } s; 1498 struct cvmx_pciercx_cfg517_s cn52xx; 1499 struct cvmx_pciercx_cfg517_s cn52xxp1; 1500 struct cvmx_pciercx_cfg517_s cn56xx; 1501 struct cvmx_pciercx_cfg517_s cn56xxp1; 1502 struct cvmx_pciercx_cfg517_s cn63xx; 1503 struct cvmx_pciercx_cfg517_s cn63xxp1; 1504 }; 1505 1506 #endif 1507