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-2012 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_IOB_DEFS_H__ 29#define __CVMX_IOB_DEFS_H__ 30 31#define CVMX_IOB_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011800F00007F8ull)) 32#define CVMX_IOB_CTL_STATUS (CVMX_ADD_IO_SEG(0x00011800F0000050ull)) 33#define CVMX_IOB_DWB_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000028ull)) 34#define CVMX_IOB_FAU_TIMEOUT (CVMX_ADD_IO_SEG(0x00011800F0000000ull)) 35#define CVMX_IOB_I2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000010ull)) 36#define CVMX_IOB_INB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000078ull)) 37#define CVMX_IOB_INB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000088ull)) 38#define CVMX_IOB_INB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000070ull)) 39#define CVMX_IOB_INB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000080ull)) 40#define CVMX_IOB_INT_ENB (CVMX_ADD_IO_SEG(0x00011800F0000060ull)) 41#define CVMX_IOB_INT_SUM (CVMX_ADD_IO_SEG(0x00011800F0000058ull)) 42#define CVMX_IOB_N2C_L2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000020ull)) 43#define CVMX_IOB_N2C_RSP_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000008ull)) 44#define CVMX_IOB_OUTB_COM_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000040ull)) 45#define CVMX_IOB_OUTB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000098ull)) 46#define CVMX_IOB_OUTB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A8ull)) 47#define CVMX_IOB_OUTB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000090ull)) 48#define CVMX_IOB_OUTB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A0ull)) 49#define CVMX_IOB_OUTB_FPA_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000048ull)) 50#define CVMX_IOB_OUTB_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000038ull)) 51#define CVMX_IOB_P2C_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000018ull)) 52#define CVMX_IOB_PKT_ERR (CVMX_ADD_IO_SEG(0x00011800F0000068ull)) 53#define CVMX_IOB_TO_CMB_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00000B0ull)) 54#define CVMX_IOB_TO_NCB_DID_00_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000800ull)) 55#define CVMX_IOB_TO_NCB_DID_111_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B78ull)) 56#define CVMX_IOB_TO_NCB_DID_223_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000EF8ull)) 57#define CVMX_IOB_TO_NCB_DID_24_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00008C0ull)) 58#define CVMX_IOB_TO_NCB_DID_32_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000900ull)) 59#define CVMX_IOB_TO_NCB_DID_40_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000940ull)) 60#define CVMX_IOB_TO_NCB_DID_55_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00009B8ull)) 61#define CVMX_IOB_TO_NCB_DID_64_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A00ull)) 62#define CVMX_IOB_TO_NCB_DID_79_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A78ull)) 63#define CVMX_IOB_TO_NCB_DID_96_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B00ull)) 64#define CVMX_IOB_TO_NCB_DID_98_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B10ull)) 65 66union cvmx_iob_bist_status { 67 uint64_t u64; 68 struct cvmx_iob_bist_status_s { 69#ifdef __BIG_ENDIAN_BITFIELD 70 uint64_t reserved_2_63:62; 71 uint64_t ibd:1; 72 uint64_t icd:1; 73#else 74 uint64_t icd:1; 75 uint64_t ibd:1; 76 uint64_t reserved_2_63:62; 77#endif 78 } s; 79 struct cvmx_iob_bist_status_cn30xx { 80#ifdef __BIG_ENDIAN_BITFIELD 81 uint64_t reserved_18_63:46; 82 uint64_t icnrcb:1; 83 uint64_t icr0:1; 84 uint64_t icr1:1; 85 uint64_t icnr1:1; 86 uint64_t icnr0:1; 87 uint64_t ibdr0:1; 88 uint64_t ibdr1:1; 89 uint64_t ibr0:1; 90 uint64_t ibr1:1; 91 uint64_t icnrt:1; 92 uint64_t ibrq0:1; 93 uint64_t ibrq1:1; 94 uint64_t icrn0:1; 95 uint64_t icrn1:1; 96 uint64_t icrp0:1; 97 uint64_t icrp1:1; 98 uint64_t ibd:1; 99 uint64_t icd:1; 100#else 101 uint64_t icd:1; 102 uint64_t ibd:1; 103 uint64_t icrp1:1; 104 uint64_t icrp0:1; 105 uint64_t icrn1:1; 106 uint64_t icrn0:1; 107 uint64_t ibrq1:1; 108 uint64_t ibrq0:1; 109 uint64_t icnrt:1; 110 uint64_t ibr1:1; 111 uint64_t ibr0:1; 112 uint64_t ibdr1:1; 113 uint64_t ibdr0:1; 114 uint64_t icnr0:1; 115 uint64_t icnr1:1; 116 uint64_t icr1:1; 117 uint64_t icr0:1; 118 uint64_t icnrcb:1; 119 uint64_t reserved_18_63:46; 120#endif 121 } cn30xx; 122 struct cvmx_iob_bist_status_cn30xx cn31xx; 123 struct cvmx_iob_bist_status_cn30xx cn38xx; 124 struct cvmx_iob_bist_status_cn30xx cn38xxp2; 125 struct cvmx_iob_bist_status_cn30xx cn50xx; 126 struct cvmx_iob_bist_status_cn30xx cn52xx; 127 struct cvmx_iob_bist_status_cn30xx cn52xxp1; 128 struct cvmx_iob_bist_status_cn30xx cn56xx; 129 struct cvmx_iob_bist_status_cn30xx cn56xxp1; 130 struct cvmx_iob_bist_status_cn30xx cn58xx; 131 struct cvmx_iob_bist_status_cn30xx cn58xxp1; 132 struct cvmx_iob_bist_status_cn61xx { 133#ifdef __BIG_ENDIAN_BITFIELD 134 uint64_t reserved_23_63:41; 135 uint64_t xmdfif:1; 136 uint64_t xmcfif:1; 137 uint64_t iorfif:1; 138 uint64_t rsdfif:1; 139 uint64_t iocfif:1; 140 uint64_t icnrcb:1; 141 uint64_t icr0:1; 142 uint64_t icr1:1; 143 uint64_t icnr1:1; 144 uint64_t icnr0:1; 145 uint64_t ibdr0:1; 146 uint64_t ibdr1:1; 147 uint64_t ibr0:1; 148 uint64_t ibr1:1; 149 uint64_t icnrt:1; 150 uint64_t ibrq0:1; 151 uint64_t ibrq1:1; 152 uint64_t icrn0:1; 153 uint64_t icrn1:1; 154 uint64_t icrp0:1; 155 uint64_t icrp1:1; 156 uint64_t ibd:1; 157 uint64_t icd:1; 158#else 159 uint64_t icd:1; 160 uint64_t ibd:1; 161 uint64_t icrp1:1; 162 uint64_t icrp0:1; 163 uint64_t icrn1:1; 164 uint64_t icrn0:1; 165 uint64_t ibrq1:1; 166 uint64_t ibrq0:1; 167 uint64_t icnrt:1; 168 uint64_t ibr1:1; 169 uint64_t ibr0:1; 170 uint64_t ibdr1:1; 171 uint64_t ibdr0:1; 172 uint64_t icnr0:1; 173 uint64_t icnr1:1; 174 uint64_t icr1:1; 175 uint64_t icr0:1; 176 uint64_t icnrcb:1; 177 uint64_t iocfif:1; 178 uint64_t rsdfif:1; 179 uint64_t iorfif:1; 180 uint64_t xmcfif:1; 181 uint64_t xmdfif:1; 182 uint64_t reserved_23_63:41; 183#endif 184 } cn61xx; 185 struct cvmx_iob_bist_status_cn61xx cn63xx; 186 struct cvmx_iob_bist_status_cn61xx cn63xxp1; 187 struct cvmx_iob_bist_status_cn61xx cn66xx; 188 struct cvmx_iob_bist_status_cn68xx { 189#ifdef __BIG_ENDIAN_BITFIELD 190 uint64_t reserved_18_63:46; 191 uint64_t xmdfif:1; 192 uint64_t xmcfif:1; 193 uint64_t iorfif:1; 194 uint64_t rsdfif:1; 195 uint64_t iocfif:1; 196 uint64_t icnrcb:1; 197 uint64_t icr0:1; 198 uint64_t icr1:1; 199 uint64_t icnr0:1; 200 uint64_t ibr0:1; 201 uint64_t ibr1:1; 202 uint64_t icnrt:1; 203 uint64_t ibrq0:1; 204 uint64_t ibrq1:1; 205 uint64_t icrn0:1; 206 uint64_t icrn1:1; 207 uint64_t ibd:1; 208 uint64_t icd:1; 209#else 210 uint64_t icd:1; 211 uint64_t ibd:1; 212 uint64_t icrn1:1; 213 uint64_t icrn0:1; 214 uint64_t ibrq1:1; 215 uint64_t ibrq0:1; 216 uint64_t icnrt:1; 217 uint64_t ibr1:1; 218 uint64_t ibr0:1; 219 uint64_t icnr0:1; 220 uint64_t icr1:1; 221 uint64_t icr0:1; 222 uint64_t icnrcb:1; 223 uint64_t iocfif:1; 224 uint64_t rsdfif:1; 225 uint64_t iorfif:1; 226 uint64_t xmcfif:1; 227 uint64_t xmdfif:1; 228 uint64_t reserved_18_63:46; 229#endif 230 } cn68xx; 231 struct cvmx_iob_bist_status_cn68xx cn68xxp1; 232 struct cvmx_iob_bist_status_cn61xx cnf71xx; 233}; 234 235union cvmx_iob_ctl_status { 236 uint64_t u64; 237 struct cvmx_iob_ctl_status_s { 238#ifdef __BIG_ENDIAN_BITFIELD 239 uint64_t reserved_11_63:53; 240 uint64_t fif_dly:1; 241 uint64_t xmc_per:4; 242 uint64_t reserved_5_5:1; 243 uint64_t outb_mat:1; 244 uint64_t inb_mat:1; 245 uint64_t pko_enb:1; 246 uint64_t dwb_enb:1; 247 uint64_t fau_end:1; 248#else 249 uint64_t fau_end:1; 250 uint64_t dwb_enb:1; 251 uint64_t pko_enb:1; 252 uint64_t inb_mat:1; 253 uint64_t outb_mat:1; 254 uint64_t reserved_5_5:1; 255 uint64_t xmc_per:4; 256 uint64_t fif_dly:1; 257 uint64_t reserved_11_63:53; 258#endif 259 } s; 260 struct cvmx_iob_ctl_status_cn30xx { 261#ifdef __BIG_ENDIAN_BITFIELD 262 uint64_t reserved_5_63:59; 263 uint64_t outb_mat:1; 264 uint64_t inb_mat:1; 265 uint64_t pko_enb:1; 266 uint64_t dwb_enb:1; 267 uint64_t fau_end:1; 268#else 269 uint64_t fau_end:1; 270 uint64_t dwb_enb:1; 271 uint64_t pko_enb:1; 272 uint64_t inb_mat:1; 273 uint64_t outb_mat:1; 274 uint64_t reserved_5_63:59; 275#endif 276 } cn30xx; 277 struct cvmx_iob_ctl_status_cn30xx cn31xx; 278 struct cvmx_iob_ctl_status_cn30xx cn38xx; 279 struct cvmx_iob_ctl_status_cn30xx cn38xxp2; 280 struct cvmx_iob_ctl_status_cn30xx cn50xx; 281 struct cvmx_iob_ctl_status_cn52xx { 282#ifdef __BIG_ENDIAN_BITFIELD 283 uint64_t reserved_6_63:58; 284 uint64_t rr_mode:1; 285 uint64_t outb_mat:1; 286 uint64_t inb_mat:1; 287 uint64_t pko_enb:1; 288 uint64_t dwb_enb:1; 289 uint64_t fau_end:1; 290#else 291 uint64_t fau_end:1; 292 uint64_t dwb_enb:1; 293 uint64_t pko_enb:1; 294 uint64_t inb_mat:1; 295 uint64_t outb_mat:1; 296 uint64_t rr_mode:1; 297 uint64_t reserved_6_63:58; 298#endif 299 } cn52xx; 300 struct cvmx_iob_ctl_status_cn30xx cn52xxp1; 301 struct cvmx_iob_ctl_status_cn30xx cn56xx; 302 struct cvmx_iob_ctl_status_cn30xx cn56xxp1; 303 struct cvmx_iob_ctl_status_cn30xx cn58xx; 304 struct cvmx_iob_ctl_status_cn30xx cn58xxp1; 305 struct cvmx_iob_ctl_status_cn61xx { 306#ifdef __BIG_ENDIAN_BITFIELD 307 uint64_t reserved_11_63:53; 308 uint64_t fif_dly:1; 309 uint64_t xmc_per:4; 310 uint64_t rr_mode:1; 311 uint64_t outb_mat:1; 312 uint64_t inb_mat:1; 313 uint64_t pko_enb:1; 314 uint64_t dwb_enb:1; 315 uint64_t fau_end:1; 316#else 317 uint64_t fau_end:1; 318 uint64_t dwb_enb:1; 319 uint64_t pko_enb:1; 320 uint64_t inb_mat:1; 321 uint64_t outb_mat:1; 322 uint64_t rr_mode:1; 323 uint64_t xmc_per:4; 324 uint64_t fif_dly:1; 325 uint64_t reserved_11_63:53; 326#endif 327 } cn61xx; 328 struct cvmx_iob_ctl_status_cn63xx { 329#ifdef __BIG_ENDIAN_BITFIELD 330 uint64_t reserved_10_63:54; 331 uint64_t xmc_per:4; 332 uint64_t rr_mode:1; 333 uint64_t outb_mat:1; 334 uint64_t inb_mat:1; 335 uint64_t pko_enb:1; 336 uint64_t dwb_enb:1; 337 uint64_t fau_end:1; 338#else 339 uint64_t fau_end:1; 340 uint64_t dwb_enb:1; 341 uint64_t pko_enb:1; 342 uint64_t inb_mat:1; 343 uint64_t outb_mat:1; 344 uint64_t rr_mode:1; 345 uint64_t xmc_per:4; 346 uint64_t reserved_10_63:54; 347#endif 348 } cn63xx; 349 struct cvmx_iob_ctl_status_cn63xx cn63xxp1; 350 struct cvmx_iob_ctl_status_cn61xx cn66xx; 351 struct cvmx_iob_ctl_status_cn68xx { 352#ifdef __BIG_ENDIAN_BITFIELD 353 uint64_t reserved_11_63:53; 354 uint64_t fif_dly:1; 355 uint64_t xmc_per:4; 356 uint64_t rsvr5:1; 357 uint64_t outb_mat:1; 358 uint64_t inb_mat:1; 359 uint64_t pko_enb:1; 360 uint64_t dwb_enb:1; 361 uint64_t fau_end:1; 362#else 363 uint64_t fau_end:1; 364 uint64_t dwb_enb:1; 365 uint64_t pko_enb:1; 366 uint64_t inb_mat:1; 367 uint64_t outb_mat:1; 368 uint64_t rsvr5:1; 369 uint64_t xmc_per:4; 370 uint64_t fif_dly:1; 371 uint64_t reserved_11_63:53; 372#endif 373 } cn68xx; 374 struct cvmx_iob_ctl_status_cn68xx cn68xxp1; 375 struct cvmx_iob_ctl_status_cn61xx cnf71xx; 376}; 377 378union cvmx_iob_dwb_pri_cnt { 379 uint64_t u64; 380 struct cvmx_iob_dwb_pri_cnt_s { 381#ifdef __BIG_ENDIAN_BITFIELD 382 uint64_t reserved_16_63:48; 383 uint64_t cnt_enb:1; 384 uint64_t cnt_val:15; 385#else 386 uint64_t cnt_val:15; 387 uint64_t cnt_enb:1; 388 uint64_t reserved_16_63:48; 389#endif 390 } s; 391 struct cvmx_iob_dwb_pri_cnt_s cn38xx; 392 struct cvmx_iob_dwb_pri_cnt_s cn38xxp2; 393 struct cvmx_iob_dwb_pri_cnt_s cn52xx; 394 struct cvmx_iob_dwb_pri_cnt_s cn52xxp1; 395 struct cvmx_iob_dwb_pri_cnt_s cn56xx; 396 struct cvmx_iob_dwb_pri_cnt_s cn56xxp1; 397 struct cvmx_iob_dwb_pri_cnt_s cn58xx; 398 struct cvmx_iob_dwb_pri_cnt_s cn58xxp1; 399 struct cvmx_iob_dwb_pri_cnt_s cn61xx; 400 struct cvmx_iob_dwb_pri_cnt_s cn63xx; 401 struct cvmx_iob_dwb_pri_cnt_s cn63xxp1; 402 struct cvmx_iob_dwb_pri_cnt_s cn66xx; 403 struct cvmx_iob_dwb_pri_cnt_s cnf71xx; 404}; 405 406union cvmx_iob_fau_timeout { 407 uint64_t u64; 408 struct cvmx_iob_fau_timeout_s { 409#ifdef __BIG_ENDIAN_BITFIELD 410 uint64_t reserved_13_63:51; 411 uint64_t tout_enb:1; 412 uint64_t tout_val:12; 413#else 414 uint64_t tout_val:12; 415 uint64_t tout_enb:1; 416 uint64_t reserved_13_63:51; 417#endif 418 } s; 419 struct cvmx_iob_fau_timeout_s cn30xx; 420 struct cvmx_iob_fau_timeout_s cn31xx; 421 struct cvmx_iob_fau_timeout_s cn38xx; 422 struct cvmx_iob_fau_timeout_s cn38xxp2; 423 struct cvmx_iob_fau_timeout_s cn50xx; 424 struct cvmx_iob_fau_timeout_s cn52xx; 425 struct cvmx_iob_fau_timeout_s cn52xxp1; 426 struct cvmx_iob_fau_timeout_s cn56xx; 427 struct cvmx_iob_fau_timeout_s cn56xxp1; 428 struct cvmx_iob_fau_timeout_s cn58xx; 429 struct cvmx_iob_fau_timeout_s cn58xxp1; 430 struct cvmx_iob_fau_timeout_s cn61xx; 431 struct cvmx_iob_fau_timeout_s cn63xx; 432 struct cvmx_iob_fau_timeout_s cn63xxp1; 433 struct cvmx_iob_fau_timeout_s cn66xx; 434 struct cvmx_iob_fau_timeout_s cn68xx; 435 struct cvmx_iob_fau_timeout_s cn68xxp1; 436 struct cvmx_iob_fau_timeout_s cnf71xx; 437}; 438 439union cvmx_iob_i2c_pri_cnt { 440 uint64_t u64; 441 struct cvmx_iob_i2c_pri_cnt_s { 442#ifdef __BIG_ENDIAN_BITFIELD 443 uint64_t reserved_16_63:48; 444 uint64_t cnt_enb:1; 445 uint64_t cnt_val:15; 446#else 447 uint64_t cnt_val:15; 448 uint64_t cnt_enb:1; 449 uint64_t reserved_16_63:48; 450#endif 451 } s; 452 struct cvmx_iob_i2c_pri_cnt_s cn38xx; 453 struct cvmx_iob_i2c_pri_cnt_s cn38xxp2; 454 struct cvmx_iob_i2c_pri_cnt_s cn52xx; 455 struct cvmx_iob_i2c_pri_cnt_s cn52xxp1; 456 struct cvmx_iob_i2c_pri_cnt_s cn56xx; 457 struct cvmx_iob_i2c_pri_cnt_s cn56xxp1; 458 struct cvmx_iob_i2c_pri_cnt_s cn58xx; 459 struct cvmx_iob_i2c_pri_cnt_s cn58xxp1; 460 struct cvmx_iob_i2c_pri_cnt_s cn61xx; 461 struct cvmx_iob_i2c_pri_cnt_s cn63xx; 462 struct cvmx_iob_i2c_pri_cnt_s cn63xxp1; 463 struct cvmx_iob_i2c_pri_cnt_s cn66xx; 464 struct cvmx_iob_i2c_pri_cnt_s cnf71xx; 465}; 466 467union cvmx_iob_inb_control_match { 468 uint64_t u64; 469 struct cvmx_iob_inb_control_match_s { 470#ifdef __BIG_ENDIAN_BITFIELD 471 uint64_t reserved_29_63:35; 472 uint64_t mask:8; 473 uint64_t opc:4; 474 uint64_t dst:9; 475 uint64_t src:8; 476#else 477 uint64_t src:8; 478 uint64_t dst:9; 479 uint64_t opc:4; 480 uint64_t mask:8; 481 uint64_t reserved_29_63:35; 482#endif 483 } s; 484 struct cvmx_iob_inb_control_match_s cn30xx; 485 struct cvmx_iob_inb_control_match_s cn31xx; 486 struct cvmx_iob_inb_control_match_s cn38xx; 487 struct cvmx_iob_inb_control_match_s cn38xxp2; 488 struct cvmx_iob_inb_control_match_s cn50xx; 489 struct cvmx_iob_inb_control_match_s cn52xx; 490 struct cvmx_iob_inb_control_match_s cn52xxp1; 491 struct cvmx_iob_inb_control_match_s cn56xx; 492 struct cvmx_iob_inb_control_match_s cn56xxp1; 493 struct cvmx_iob_inb_control_match_s cn58xx; 494 struct cvmx_iob_inb_control_match_s cn58xxp1; 495 struct cvmx_iob_inb_control_match_s cn61xx; 496 struct cvmx_iob_inb_control_match_s cn63xx; 497 struct cvmx_iob_inb_control_match_s cn63xxp1; 498 struct cvmx_iob_inb_control_match_s cn66xx; 499 struct cvmx_iob_inb_control_match_s cn68xx; 500 struct cvmx_iob_inb_control_match_s cn68xxp1; 501 struct cvmx_iob_inb_control_match_s cnf71xx; 502}; 503 504union cvmx_iob_inb_control_match_enb { 505 uint64_t u64; 506 struct cvmx_iob_inb_control_match_enb_s { 507#ifdef __BIG_ENDIAN_BITFIELD 508 uint64_t reserved_29_63:35; 509 uint64_t mask:8; 510 uint64_t opc:4; 511 uint64_t dst:9; 512 uint64_t src:8; 513#else 514 uint64_t src:8; 515 uint64_t dst:9; 516 uint64_t opc:4; 517 uint64_t mask:8; 518 uint64_t reserved_29_63:35; 519#endif 520 } s; 521 struct cvmx_iob_inb_control_match_enb_s cn30xx; 522 struct cvmx_iob_inb_control_match_enb_s cn31xx; 523 struct cvmx_iob_inb_control_match_enb_s cn38xx; 524 struct cvmx_iob_inb_control_match_enb_s cn38xxp2; 525 struct cvmx_iob_inb_control_match_enb_s cn50xx; 526 struct cvmx_iob_inb_control_match_enb_s cn52xx; 527 struct cvmx_iob_inb_control_match_enb_s cn52xxp1; 528 struct cvmx_iob_inb_control_match_enb_s cn56xx; 529 struct cvmx_iob_inb_control_match_enb_s cn56xxp1; 530 struct cvmx_iob_inb_control_match_enb_s cn58xx; 531 struct cvmx_iob_inb_control_match_enb_s cn58xxp1; 532 struct cvmx_iob_inb_control_match_enb_s cn61xx; 533 struct cvmx_iob_inb_control_match_enb_s cn63xx; 534 struct cvmx_iob_inb_control_match_enb_s cn63xxp1; 535 struct cvmx_iob_inb_control_match_enb_s cn66xx; 536 struct cvmx_iob_inb_control_match_enb_s cn68xx; 537 struct cvmx_iob_inb_control_match_enb_s cn68xxp1; 538 struct cvmx_iob_inb_control_match_enb_s cnf71xx; 539}; 540 541union cvmx_iob_inb_data_match { 542 uint64_t u64; 543 struct cvmx_iob_inb_data_match_s { 544#ifdef __BIG_ENDIAN_BITFIELD 545 uint64_t data:64; 546#else 547 uint64_t data:64; 548#endif 549 } s; 550 struct cvmx_iob_inb_data_match_s cn30xx; 551 struct cvmx_iob_inb_data_match_s cn31xx; 552 struct cvmx_iob_inb_data_match_s cn38xx; 553 struct cvmx_iob_inb_data_match_s cn38xxp2; 554 struct cvmx_iob_inb_data_match_s cn50xx; 555 struct cvmx_iob_inb_data_match_s cn52xx; 556 struct cvmx_iob_inb_data_match_s cn52xxp1; 557 struct cvmx_iob_inb_data_match_s cn56xx; 558 struct cvmx_iob_inb_data_match_s cn56xxp1; 559 struct cvmx_iob_inb_data_match_s cn58xx; 560 struct cvmx_iob_inb_data_match_s cn58xxp1; 561 struct cvmx_iob_inb_data_match_s cn61xx; 562 struct cvmx_iob_inb_data_match_s cn63xx; 563 struct cvmx_iob_inb_data_match_s cn63xxp1; 564 struct cvmx_iob_inb_data_match_s cn66xx; 565 struct cvmx_iob_inb_data_match_s cn68xx; 566 struct cvmx_iob_inb_data_match_s cn68xxp1; 567 struct cvmx_iob_inb_data_match_s cnf71xx; 568}; 569 570union cvmx_iob_inb_data_match_enb { 571 uint64_t u64; 572 struct cvmx_iob_inb_data_match_enb_s { 573#ifdef __BIG_ENDIAN_BITFIELD 574 uint64_t data:64; 575#else 576 uint64_t data:64; 577#endif 578 } s; 579 struct cvmx_iob_inb_data_match_enb_s cn30xx; 580 struct cvmx_iob_inb_data_match_enb_s cn31xx; 581 struct cvmx_iob_inb_data_match_enb_s cn38xx; 582 struct cvmx_iob_inb_data_match_enb_s cn38xxp2; 583 struct cvmx_iob_inb_data_match_enb_s cn50xx; 584 struct cvmx_iob_inb_data_match_enb_s cn52xx; 585 struct cvmx_iob_inb_data_match_enb_s cn52xxp1; 586 struct cvmx_iob_inb_data_match_enb_s cn56xx; 587 struct cvmx_iob_inb_data_match_enb_s cn56xxp1; 588 struct cvmx_iob_inb_data_match_enb_s cn58xx; 589 struct cvmx_iob_inb_data_match_enb_s cn58xxp1; 590 struct cvmx_iob_inb_data_match_enb_s cn61xx; 591 struct cvmx_iob_inb_data_match_enb_s cn63xx; 592 struct cvmx_iob_inb_data_match_enb_s cn63xxp1; 593 struct cvmx_iob_inb_data_match_enb_s cn66xx; 594 struct cvmx_iob_inb_data_match_enb_s cn68xx; 595 struct cvmx_iob_inb_data_match_enb_s cn68xxp1; 596 struct cvmx_iob_inb_data_match_enb_s cnf71xx; 597}; 598 599union cvmx_iob_int_enb { 600 uint64_t u64; 601 struct cvmx_iob_int_enb_s { 602#ifdef __BIG_ENDIAN_BITFIELD 603 uint64_t reserved_6_63:58; 604 uint64_t p_dat:1; 605 uint64_t np_dat:1; 606 uint64_t p_eop:1; 607 uint64_t p_sop:1; 608 uint64_t np_eop:1; 609 uint64_t np_sop:1; 610#else 611 uint64_t np_sop:1; 612 uint64_t np_eop:1; 613 uint64_t p_sop:1; 614 uint64_t p_eop:1; 615 uint64_t np_dat:1; 616 uint64_t p_dat:1; 617 uint64_t reserved_6_63:58; 618#endif 619 } s; 620 struct cvmx_iob_int_enb_cn30xx { 621#ifdef __BIG_ENDIAN_BITFIELD 622 uint64_t reserved_4_63:60; 623 uint64_t p_eop:1; 624 uint64_t p_sop:1; 625 uint64_t np_eop:1; 626 uint64_t np_sop:1; 627#else 628 uint64_t np_sop:1; 629 uint64_t np_eop:1; 630 uint64_t p_sop:1; 631 uint64_t p_eop:1; 632 uint64_t reserved_4_63:60; 633#endif 634 } cn30xx; 635 struct cvmx_iob_int_enb_cn30xx cn31xx; 636 struct cvmx_iob_int_enb_cn30xx cn38xx; 637 struct cvmx_iob_int_enb_cn30xx cn38xxp2; 638 struct cvmx_iob_int_enb_s cn50xx; 639 struct cvmx_iob_int_enb_s cn52xx; 640 struct cvmx_iob_int_enb_s cn52xxp1; 641 struct cvmx_iob_int_enb_s cn56xx; 642 struct cvmx_iob_int_enb_s cn56xxp1; 643 struct cvmx_iob_int_enb_s cn58xx; 644 struct cvmx_iob_int_enb_s cn58xxp1; 645 struct cvmx_iob_int_enb_s cn61xx; 646 struct cvmx_iob_int_enb_s cn63xx; 647 struct cvmx_iob_int_enb_s cn63xxp1; 648 struct cvmx_iob_int_enb_s cn66xx; 649 struct cvmx_iob_int_enb_cn68xx { 650#ifdef __BIG_ENDIAN_BITFIELD 651 uint64_t reserved_0_63:64; 652#else 653 uint64_t reserved_0_63:64; 654#endif 655 } cn68xx; 656 struct cvmx_iob_int_enb_cn68xx cn68xxp1; 657 struct cvmx_iob_int_enb_s cnf71xx; 658}; 659 660union cvmx_iob_int_sum { 661 uint64_t u64; 662 struct cvmx_iob_int_sum_s { 663#ifdef __BIG_ENDIAN_BITFIELD 664 uint64_t reserved_6_63:58; 665 uint64_t p_dat:1; 666 uint64_t np_dat:1; 667 uint64_t p_eop:1; 668 uint64_t p_sop:1; 669 uint64_t np_eop:1; 670 uint64_t np_sop:1; 671#else 672 uint64_t np_sop:1; 673 uint64_t np_eop:1; 674 uint64_t p_sop:1; 675 uint64_t p_eop:1; 676 uint64_t np_dat:1; 677 uint64_t p_dat:1; 678 uint64_t reserved_6_63:58; 679#endif 680 } s; 681 struct cvmx_iob_int_sum_cn30xx { 682#ifdef __BIG_ENDIAN_BITFIELD 683 uint64_t reserved_4_63:60; 684 uint64_t p_eop:1; 685 uint64_t p_sop:1; 686 uint64_t np_eop:1; 687 uint64_t np_sop:1; 688#else 689 uint64_t np_sop:1; 690 uint64_t np_eop:1; 691 uint64_t p_sop:1; 692 uint64_t p_eop:1; 693 uint64_t reserved_4_63:60; 694#endif 695 } cn30xx; 696 struct cvmx_iob_int_sum_cn30xx cn31xx; 697 struct cvmx_iob_int_sum_cn30xx cn38xx; 698 struct cvmx_iob_int_sum_cn30xx cn38xxp2; 699 struct cvmx_iob_int_sum_s cn50xx; 700 struct cvmx_iob_int_sum_s cn52xx; 701 struct cvmx_iob_int_sum_s cn52xxp1; 702 struct cvmx_iob_int_sum_s cn56xx; 703 struct cvmx_iob_int_sum_s cn56xxp1; 704 struct cvmx_iob_int_sum_s cn58xx; 705 struct cvmx_iob_int_sum_s cn58xxp1; 706 struct cvmx_iob_int_sum_s cn61xx; 707 struct cvmx_iob_int_sum_s cn63xx; 708 struct cvmx_iob_int_sum_s cn63xxp1; 709 struct cvmx_iob_int_sum_s cn66xx; 710 struct cvmx_iob_int_sum_cn68xx { 711#ifdef __BIG_ENDIAN_BITFIELD 712 uint64_t reserved_0_63:64; 713#else 714 uint64_t reserved_0_63:64; 715#endif 716 } cn68xx; 717 struct cvmx_iob_int_sum_cn68xx cn68xxp1; 718 struct cvmx_iob_int_sum_s cnf71xx; 719}; 720 721union cvmx_iob_n2c_l2c_pri_cnt { 722 uint64_t u64; 723 struct cvmx_iob_n2c_l2c_pri_cnt_s { 724#ifdef __BIG_ENDIAN_BITFIELD 725 uint64_t reserved_16_63:48; 726 uint64_t cnt_enb:1; 727 uint64_t cnt_val:15; 728#else 729 uint64_t cnt_val:15; 730 uint64_t cnt_enb:1; 731 uint64_t reserved_16_63:48; 732#endif 733 } s; 734 struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xx; 735 struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xxp2; 736 struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xx; 737 struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xxp1; 738 struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xx; 739 struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xxp1; 740 struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xx; 741 struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xxp1; 742 struct cvmx_iob_n2c_l2c_pri_cnt_s cn61xx; 743 struct cvmx_iob_n2c_l2c_pri_cnt_s cn63xx; 744 struct cvmx_iob_n2c_l2c_pri_cnt_s cn63xxp1; 745 struct cvmx_iob_n2c_l2c_pri_cnt_s cn66xx; 746 struct cvmx_iob_n2c_l2c_pri_cnt_s cnf71xx; 747}; 748 749union cvmx_iob_n2c_rsp_pri_cnt { 750 uint64_t u64; 751 struct cvmx_iob_n2c_rsp_pri_cnt_s { 752#ifdef __BIG_ENDIAN_BITFIELD 753 uint64_t reserved_16_63:48; 754 uint64_t cnt_enb:1; 755 uint64_t cnt_val:15; 756#else 757 uint64_t cnt_val:15; 758 uint64_t cnt_enb:1; 759 uint64_t reserved_16_63:48; 760#endif 761 } s; 762 struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xx; 763 struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xxp2; 764 struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xx; 765 struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xxp1; 766 struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xx; 767 struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xxp1; 768 struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xx; 769 struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xxp1; 770 struct cvmx_iob_n2c_rsp_pri_cnt_s cn61xx; 771 struct cvmx_iob_n2c_rsp_pri_cnt_s cn63xx; 772 struct cvmx_iob_n2c_rsp_pri_cnt_s cn63xxp1; 773 struct cvmx_iob_n2c_rsp_pri_cnt_s cn66xx; 774 struct cvmx_iob_n2c_rsp_pri_cnt_s cnf71xx; 775}; 776 777union cvmx_iob_outb_com_pri_cnt { 778 uint64_t u64; 779 struct cvmx_iob_outb_com_pri_cnt_s { 780#ifdef __BIG_ENDIAN_BITFIELD 781 uint64_t reserved_16_63:48; 782 uint64_t cnt_enb:1; 783 uint64_t cnt_val:15; 784#else 785 uint64_t cnt_val:15; 786 uint64_t cnt_enb:1; 787 uint64_t reserved_16_63:48; 788#endif 789 } s; 790 struct cvmx_iob_outb_com_pri_cnt_s cn38xx; 791 struct cvmx_iob_outb_com_pri_cnt_s cn38xxp2; 792 struct cvmx_iob_outb_com_pri_cnt_s cn52xx; 793 struct cvmx_iob_outb_com_pri_cnt_s cn52xxp1; 794 struct cvmx_iob_outb_com_pri_cnt_s cn56xx; 795 struct cvmx_iob_outb_com_pri_cnt_s cn56xxp1; 796 struct cvmx_iob_outb_com_pri_cnt_s cn58xx; 797 struct cvmx_iob_outb_com_pri_cnt_s cn58xxp1; 798 struct cvmx_iob_outb_com_pri_cnt_s cn61xx; 799 struct cvmx_iob_outb_com_pri_cnt_s cn63xx; 800 struct cvmx_iob_outb_com_pri_cnt_s cn63xxp1; 801 struct cvmx_iob_outb_com_pri_cnt_s cn66xx; 802 struct cvmx_iob_outb_com_pri_cnt_s cn68xx; 803 struct cvmx_iob_outb_com_pri_cnt_s cn68xxp1; 804 struct cvmx_iob_outb_com_pri_cnt_s cnf71xx; 805}; 806 807union cvmx_iob_outb_control_match { 808 uint64_t u64; 809 struct cvmx_iob_outb_control_match_s { 810#ifdef __BIG_ENDIAN_BITFIELD 811 uint64_t reserved_26_63:38; 812 uint64_t mask:8; 813 uint64_t eot:1; 814 uint64_t dst:8; 815 uint64_t src:9; 816#else 817 uint64_t src:9; 818 uint64_t dst:8; 819 uint64_t eot:1; 820 uint64_t mask:8; 821 uint64_t reserved_26_63:38; 822#endif 823 } s; 824 struct cvmx_iob_outb_control_match_s cn30xx; 825 struct cvmx_iob_outb_control_match_s cn31xx; 826 struct cvmx_iob_outb_control_match_s cn38xx; 827 struct cvmx_iob_outb_control_match_s cn38xxp2; 828 struct cvmx_iob_outb_control_match_s cn50xx; 829 struct cvmx_iob_outb_control_match_s cn52xx; 830 struct cvmx_iob_outb_control_match_s cn52xxp1; 831 struct cvmx_iob_outb_control_match_s cn56xx; 832 struct cvmx_iob_outb_control_match_s cn56xxp1; 833 struct cvmx_iob_outb_control_match_s cn58xx; 834 struct cvmx_iob_outb_control_match_s cn58xxp1; 835 struct cvmx_iob_outb_control_match_s cn61xx; 836 struct cvmx_iob_outb_control_match_s cn63xx; 837 struct cvmx_iob_outb_control_match_s cn63xxp1; 838 struct cvmx_iob_outb_control_match_s cn66xx; 839 struct cvmx_iob_outb_control_match_s cn68xx; 840 struct cvmx_iob_outb_control_match_s cn68xxp1; 841 struct cvmx_iob_outb_control_match_s cnf71xx; 842}; 843 844union cvmx_iob_outb_control_match_enb { 845 uint64_t u64; 846 struct cvmx_iob_outb_control_match_enb_s { 847#ifdef __BIG_ENDIAN_BITFIELD 848 uint64_t reserved_26_63:38; 849 uint64_t mask:8; 850 uint64_t eot:1; 851 uint64_t dst:8; 852 uint64_t src:9; 853#else 854 uint64_t src:9; 855 uint64_t dst:8; 856 uint64_t eot:1; 857 uint64_t mask:8; 858 uint64_t reserved_26_63:38; 859#endif 860 } s; 861 struct cvmx_iob_outb_control_match_enb_s cn30xx; 862 struct cvmx_iob_outb_control_match_enb_s cn31xx; 863 struct cvmx_iob_outb_control_match_enb_s cn38xx; 864 struct cvmx_iob_outb_control_match_enb_s cn38xxp2; 865 struct cvmx_iob_outb_control_match_enb_s cn50xx; 866 struct cvmx_iob_outb_control_match_enb_s cn52xx; 867 struct cvmx_iob_outb_control_match_enb_s cn52xxp1; 868 struct cvmx_iob_outb_control_match_enb_s cn56xx; 869 struct cvmx_iob_outb_control_match_enb_s cn56xxp1; 870 struct cvmx_iob_outb_control_match_enb_s cn58xx; 871 struct cvmx_iob_outb_control_match_enb_s cn58xxp1; 872 struct cvmx_iob_outb_control_match_enb_s cn61xx; 873 struct cvmx_iob_outb_control_match_enb_s cn63xx; 874 struct cvmx_iob_outb_control_match_enb_s cn63xxp1; 875 struct cvmx_iob_outb_control_match_enb_s cn66xx; 876 struct cvmx_iob_outb_control_match_enb_s cn68xx; 877 struct cvmx_iob_outb_control_match_enb_s cn68xxp1; 878 struct cvmx_iob_outb_control_match_enb_s cnf71xx; 879}; 880 881union cvmx_iob_outb_data_match { 882 uint64_t u64; 883 struct cvmx_iob_outb_data_match_s { 884#ifdef __BIG_ENDIAN_BITFIELD 885 uint64_t data:64; 886#else 887 uint64_t data:64; 888#endif 889 } s; 890 struct cvmx_iob_outb_data_match_s cn30xx; 891 struct cvmx_iob_outb_data_match_s cn31xx; 892 struct cvmx_iob_outb_data_match_s cn38xx; 893 struct cvmx_iob_outb_data_match_s cn38xxp2; 894 struct cvmx_iob_outb_data_match_s cn50xx; 895 struct cvmx_iob_outb_data_match_s cn52xx; 896 struct cvmx_iob_outb_data_match_s cn52xxp1; 897 struct cvmx_iob_outb_data_match_s cn56xx; 898 struct cvmx_iob_outb_data_match_s cn56xxp1; 899 struct cvmx_iob_outb_data_match_s cn58xx; 900 struct cvmx_iob_outb_data_match_s cn58xxp1; 901 struct cvmx_iob_outb_data_match_s cn61xx; 902 struct cvmx_iob_outb_data_match_s cn63xx; 903 struct cvmx_iob_outb_data_match_s cn63xxp1; 904 struct cvmx_iob_outb_data_match_s cn66xx; 905 struct cvmx_iob_outb_data_match_s cn68xx; 906 struct cvmx_iob_outb_data_match_s cn68xxp1; 907 struct cvmx_iob_outb_data_match_s cnf71xx; 908}; 909 910union cvmx_iob_outb_data_match_enb { 911 uint64_t u64; 912 struct cvmx_iob_outb_data_match_enb_s { 913#ifdef __BIG_ENDIAN_BITFIELD 914 uint64_t data:64; 915#else 916 uint64_t data:64; 917#endif 918 } s; 919 struct cvmx_iob_outb_data_match_enb_s cn30xx; 920 struct cvmx_iob_outb_data_match_enb_s cn31xx; 921 struct cvmx_iob_outb_data_match_enb_s cn38xx; 922 struct cvmx_iob_outb_data_match_enb_s cn38xxp2; 923 struct cvmx_iob_outb_data_match_enb_s cn50xx; 924 struct cvmx_iob_outb_data_match_enb_s cn52xx; 925 struct cvmx_iob_outb_data_match_enb_s cn52xxp1; 926 struct cvmx_iob_outb_data_match_enb_s cn56xx; 927 struct cvmx_iob_outb_data_match_enb_s cn56xxp1; 928 struct cvmx_iob_outb_data_match_enb_s cn58xx; 929 struct cvmx_iob_outb_data_match_enb_s cn58xxp1; 930 struct cvmx_iob_outb_data_match_enb_s cn61xx; 931 struct cvmx_iob_outb_data_match_enb_s cn63xx; 932 struct cvmx_iob_outb_data_match_enb_s cn63xxp1; 933 struct cvmx_iob_outb_data_match_enb_s cn66xx; 934 struct cvmx_iob_outb_data_match_enb_s cn68xx; 935 struct cvmx_iob_outb_data_match_enb_s cn68xxp1; 936 struct cvmx_iob_outb_data_match_enb_s cnf71xx; 937}; 938 939union cvmx_iob_outb_fpa_pri_cnt { 940 uint64_t u64; 941 struct cvmx_iob_outb_fpa_pri_cnt_s { 942#ifdef __BIG_ENDIAN_BITFIELD 943 uint64_t reserved_16_63:48; 944 uint64_t cnt_enb:1; 945 uint64_t cnt_val:15; 946#else 947 uint64_t cnt_val:15; 948 uint64_t cnt_enb:1; 949 uint64_t reserved_16_63:48; 950#endif 951 } s; 952 struct cvmx_iob_outb_fpa_pri_cnt_s cn38xx; 953 struct cvmx_iob_outb_fpa_pri_cnt_s cn38xxp2; 954 struct cvmx_iob_outb_fpa_pri_cnt_s cn52xx; 955 struct cvmx_iob_outb_fpa_pri_cnt_s cn52xxp1; 956 struct cvmx_iob_outb_fpa_pri_cnt_s cn56xx; 957 struct cvmx_iob_outb_fpa_pri_cnt_s cn56xxp1; 958 struct cvmx_iob_outb_fpa_pri_cnt_s cn58xx; 959 struct cvmx_iob_outb_fpa_pri_cnt_s cn58xxp1; 960 struct cvmx_iob_outb_fpa_pri_cnt_s cn61xx; 961 struct cvmx_iob_outb_fpa_pri_cnt_s cn63xx; 962 struct cvmx_iob_outb_fpa_pri_cnt_s cn63xxp1; 963 struct cvmx_iob_outb_fpa_pri_cnt_s cn66xx; 964 struct cvmx_iob_outb_fpa_pri_cnt_s cn68xx; 965 struct cvmx_iob_outb_fpa_pri_cnt_s cn68xxp1; 966 struct cvmx_iob_outb_fpa_pri_cnt_s cnf71xx; 967}; 968 969union cvmx_iob_outb_req_pri_cnt { 970 uint64_t u64; 971 struct cvmx_iob_outb_req_pri_cnt_s { 972#ifdef __BIG_ENDIAN_BITFIELD 973 uint64_t reserved_16_63:48; 974 uint64_t cnt_enb:1; 975 uint64_t cnt_val:15; 976#else 977 uint64_t cnt_val:15; 978 uint64_t cnt_enb:1; 979 uint64_t reserved_16_63:48; 980#endif 981 } s; 982 struct cvmx_iob_outb_req_pri_cnt_s cn38xx; 983 struct cvmx_iob_outb_req_pri_cnt_s cn38xxp2; 984 struct cvmx_iob_outb_req_pri_cnt_s cn52xx; 985 struct cvmx_iob_outb_req_pri_cnt_s cn52xxp1; 986 struct cvmx_iob_outb_req_pri_cnt_s cn56xx; 987 struct cvmx_iob_outb_req_pri_cnt_s cn56xxp1; 988 struct cvmx_iob_outb_req_pri_cnt_s cn58xx; 989 struct cvmx_iob_outb_req_pri_cnt_s cn58xxp1; 990 struct cvmx_iob_outb_req_pri_cnt_s cn61xx; 991 struct cvmx_iob_outb_req_pri_cnt_s cn63xx; 992 struct cvmx_iob_outb_req_pri_cnt_s cn63xxp1; 993 struct cvmx_iob_outb_req_pri_cnt_s cn66xx; 994 struct cvmx_iob_outb_req_pri_cnt_s cn68xx; 995 struct cvmx_iob_outb_req_pri_cnt_s cn68xxp1; 996 struct cvmx_iob_outb_req_pri_cnt_s cnf71xx; 997}; 998 999union cvmx_iob_p2c_req_pri_cnt { 1000 uint64_t u64;
1001 struct cvmx_iob_p2c_req_pri_cnt_s { 1002#ifdef __BIG_ENDIAN_BITFIELD 1003 uint64_t reserved_16_63:48; 1004 uint64_t cnt_enb:1; 1005 uint64_t cnt_val:15; 1006#else 1007 uint64_t cnt_val:15; 1008 uint64_t cnt_enb:1; 1009 uint64_t reserved_16_63:48; 1010#endif 1011 } s; 1012 struct cvmx_iob_p2c_req_pri_cnt_s cn38xx; 1013 struct cvmx_iob_p2c_req_pri_cnt_s cn38xxp2; 1014 struct cvmx_iob_p2c_req_pri_cnt_s cn52xx; 1015 struct cvmx_iob_p2c_req_pri_cnt_s cn52xxp1; 1016 struct cvmx_iob_p2c_req_pri_cnt_s cn56xx; 1017 struct cvmx_iob_p2c_req_pri_cnt_s cn56xxp1; 1018 struct cvmx_iob_p2c_req_pri_cnt_s cn58xx; 1019 struct cvmx_iob_p2c_req_pri_cnt_s cn58xxp1; 1020 struct cvmx_iob_p2c_req_pri_cnt_s cn61xx; 1021 struct cvmx_iob_p2c_req_pri_cnt_s cn63xx; 1022 struct cvmx_iob_p2c_req_pri_cnt_s cn63xxp1; 1023 struct cvmx_iob_p2c_req_pri_cnt_s cn66xx; 1024 struct cvmx_iob_p2c_req_pri_cnt_s cnf71xx; 1025}; 1026 1027union cvmx_iob_pkt_err { 1028 uint64_t u64; 1029 struct cvmx_iob_pkt_err_s { 1030#ifdef __BIG_ENDIAN_BITFIELD 1031 uint64_t reserved_12_63:52; 1032 uint64_t vport:6; 1033 uint64_t port:6; 1034#else 1035 uint64_t port:6; 1036 uint64_t vport:6; 1037 uint64_t reserved_12_63:52; 1038#endif 1039 } s; 1040 struct cvmx_iob_pkt_err_cn30xx { 1041#ifdef __BIG_ENDIAN_BITFIELD 1042 uint64_t reserved_6_63:58; 1043 uint64_t port:6; 1044#else 1045 uint64_t port:6; 1046 uint64_t reserved_6_63:58; 1047#endif 1048 } cn30xx; 1049 struct cvmx_iob_pkt_err_cn30xx cn31xx; 1050 struct cvmx_iob_pkt_err_cn30xx cn38xx; 1051 struct cvmx_iob_pkt_err_cn30xx cn38xxp2; 1052 struct cvmx_iob_pkt_err_cn30xx cn50xx; 1053 struct cvmx_iob_pkt_err_cn30xx cn52xx; 1054 struct cvmx_iob_pkt_err_cn30xx cn52xxp1; 1055 struct cvmx_iob_pkt_err_cn30xx cn56xx; 1056 struct cvmx_iob_pkt_err_cn30xx cn56xxp1; 1057 struct cvmx_iob_pkt_err_cn30xx cn58xx; 1058 struct cvmx_iob_pkt_err_cn30xx cn58xxp1; 1059 struct cvmx_iob_pkt_err_s cn61xx; 1060 struct cvmx_iob_pkt_err_s cn63xx; 1061 struct cvmx_iob_pkt_err_s cn63xxp1; 1062 struct cvmx_iob_pkt_err_s cn66xx; 1063 struct cvmx_iob_pkt_err_s cnf71xx; 1064}; 1065 1066union cvmx_iob_to_cmb_credits { 1067 uint64_t u64; 1068 struct cvmx_iob_to_cmb_credits_s { 1069#ifdef __BIG_ENDIAN_BITFIELD 1070 uint64_t reserved_6_63:58; 1071 uint64_t ncb_rd:3; 1072 uint64_t ncb_wr:3; 1073#else 1074 uint64_t ncb_wr:3; 1075 uint64_t ncb_rd:3; 1076 uint64_t reserved_6_63:58; 1077#endif 1078 } s; 1079 struct cvmx_iob_to_cmb_credits_cn52xx { 1080#ifdef __BIG_ENDIAN_BITFIELD 1081 uint64_t reserved_9_63:55; 1082 uint64_t pko_rd:3; 1083 uint64_t ncb_rd:3; 1084 uint64_t ncb_wr:3; 1085#else 1086 uint64_t ncb_wr:3; 1087 uint64_t ncb_rd:3; 1088 uint64_t pko_rd:3; 1089 uint64_t reserved_9_63:55; 1090#endif 1091 } cn52xx; 1092 struct cvmx_iob_to_cmb_credits_cn52xx cn61xx; 1093 struct cvmx_iob_to_cmb_credits_cn52xx cn63xx; 1094 struct cvmx_iob_to_cmb_credits_cn52xx cn63xxp1; 1095 struct cvmx_iob_to_cmb_credits_cn52xx cn66xx; 1096 struct cvmx_iob_to_cmb_credits_cn68xx { 1097#ifdef __BIG_ENDIAN_BITFIELD 1098 uint64_t reserved_9_63:55; 1099 uint64_t dwb:3; 1100 uint64_t ncb_rd:3; 1101 uint64_t ncb_wr:3; 1102#else 1103 uint64_t ncb_wr:3; 1104 uint64_t ncb_rd:3; 1105 uint64_t dwb:3; 1106 uint64_t reserved_9_63:55; 1107#endif 1108 } cn68xx; 1109 struct cvmx_iob_to_cmb_credits_cn68xx cn68xxp1; 1110 struct cvmx_iob_to_cmb_credits_cn52xx cnf71xx; 1111}; 1112 1113union cvmx_iob_to_ncb_did_00_credits { 1114 uint64_t u64; 1115 struct cvmx_iob_to_ncb_did_00_credits_s { 1116#ifdef __BIG_ENDIAN_BITFIELD 1117 uint64_t reserved_7_63:57; 1118 uint64_t crd:7; 1119#else 1120 uint64_t crd:7; 1121 uint64_t reserved_7_63:57; 1122#endif 1123 } s; 1124 struct cvmx_iob_to_ncb_did_00_credits_s cn68xx; 1125 struct cvmx_iob_to_ncb_did_00_credits_s cn68xxp1; 1126}; 1127 1128union cvmx_iob_to_ncb_did_111_credits { 1129 uint64_t u64; 1130 struct cvmx_iob_to_ncb_did_111_credits_s { 1131#ifdef __BIG_ENDIAN_BITFIELD 1132 uint64_t reserved_7_63:57; 1133 uint64_t crd:7; 1134#else 1135 uint64_t crd:7; 1136 uint64_t reserved_7_63:57; 1137#endif 1138 } s; 1139 struct cvmx_iob_to_ncb_did_111_credits_s cn68xx; 1140 struct cvmx_iob_to_ncb_did_111_credits_s cn68xxp1; 1141}; 1142 1143union cvmx_iob_to_ncb_did_223_credits { 1144 uint64_t u64; 1145 struct cvmx_iob_to_ncb_did_223_credits_s { 1146#ifdef __BIG_ENDIAN_BITFIELD 1147 uint64_t reserved_7_63:57; 1148 uint64_t crd:7; 1149#else 1150 uint64_t crd:7; 1151 uint64_t reserved_7_63:57; 1152#endif 1153 } s; 1154 struct cvmx_iob_to_ncb_did_223_credits_s cn68xx; 1155 struct cvmx_iob_to_ncb_did_223_credits_s cn68xxp1; 1156}; 1157 1158union cvmx_iob_to_ncb_did_24_credits { 1159 uint64_t u64; 1160 struct cvmx_iob_to_ncb_did_24_credits_s { 1161#ifdef __BIG_ENDIAN_BITFIELD 1162 uint64_t reserved_7_63:57; 1163 uint64_t crd:7; 1164#else 1165 uint64_t crd:7; 1166 uint64_t reserved_7_63:57; 1167#endif 1168 } s; 1169 struct cvmx_iob_to_ncb_did_24_credits_s cn68xx; 1170 struct cvmx_iob_to_ncb_did_24_credits_s cn68xxp1; 1171}; 1172 1173union cvmx_iob_to_ncb_did_32_credits { 1174 uint64_t u64; 1175 struct cvmx_iob_to_ncb_did_32_credits_s { 1176#ifdef __BIG_ENDIAN_BITFIELD 1177 uint64_t reserved_7_63:57; 1178 uint64_t crd:7; 1179#else 1180 uint64_t crd:7; 1181 uint64_t reserved_7_63:57; 1182#endif 1183 } s; 1184 struct cvmx_iob_to_ncb_did_32_credits_s cn68xx; 1185 struct cvmx_iob_to_ncb_did_32_credits_s cn68xxp1; 1186}; 1187 1188union cvmx_iob_to_ncb_did_40_credits { 1189 uint64_t u64; 1190 struct cvmx_iob_to_ncb_did_40_credits_s { 1191#ifdef __BIG_ENDIAN_BITFIELD 1192 uint64_t reserved_7_63:57; 1193 uint64_t crd:7; 1194#else 1195 uint64_t crd:7; 1196 uint64_t reserved_7_63:57; 1197#endif 1198 } s; 1199 struct cvmx_iob_to_ncb_did_40_credits_s cn68xx; 1200 struct cvmx_iob_to_ncb_did_40_credits_s cn68xxp1; 1201}; 1202 1203union cvmx_iob_to_ncb_did_55_credits { 1204 uint64_t u64; 1205 struct cvmx_iob_to_ncb_did_55_credits_s { 1206#ifdef __BIG_ENDIAN_BITFIELD 1207 uint64_t reserved_7_63:57; 1208 uint64_t crd:7; 1209#else 1210 uint64_t crd:7; 1211 uint64_t reserved_7_63:57; 1212#endif 1213 } s; 1214 struct cvmx_iob_to_ncb_did_55_credits_s cn68xx; 1215 struct cvmx_iob_to_ncb_did_55_credits_s cn68xxp1; 1216}; 1217 1218union cvmx_iob_to_ncb_did_64_credits { 1219 uint64_t u64; 1220 struct cvmx_iob_to_ncb_did_64_credits_s { 1221#ifdef __BIG_ENDIAN_BITFIELD 1222 uint64_t reserved_7_63:57; 1223 uint64_t crd:7; 1224#else 1225 uint64_t crd:7; 1226 uint64_t reserved_7_63:57; 1227#endif 1228 } s; 1229 struct cvmx_iob_to_ncb_did_64_credits_s cn68xx; 1230 struct cvmx_iob_to_ncb_did_64_credits_s cn68xxp1; 1231}; 1232 1233union cvmx_iob_to_ncb_did_79_credits { 1234 uint64_t u64; 1235 struct cvmx_iob_to_ncb_did_79_credits_s { 1236#ifdef __BIG_ENDIAN_BITFIELD 1237 uint64_t reserved_7_63:57; 1238 uint64_t crd:7; 1239#else 1240 uint64_t crd:7; 1241 uint64_t reserved_7_63:57; 1242#endif 1243 } s; 1244 struct cvmx_iob_to_ncb_did_79_credits_s cn68xx; 1245 struct cvmx_iob_to_ncb_did_79_credits_s cn68xxp1; 1246}; 1247 1248union cvmx_iob_to_ncb_did_96_credits { 1249 uint64_t u64; 1250 struct cvmx_iob_to_ncb_did_96_credits_s { 1251#ifdef __BIG_ENDIAN_BITFIELD 1252 uint64_t reserved_7_63:57; 1253 uint64_t crd:7; 1254#else 1255 uint64_t crd:7; 1256 uint64_t reserved_7_63:57; 1257#endif 1258 } s; 1259 struct cvmx_iob_to_ncb_did_96_credits_s cn68xx; 1260 struct cvmx_iob_to_ncb_did_96_credits_s cn68xxp1; 1261}; 1262 1263union cvmx_iob_to_ncb_did_98_credits { 1264 uint64_t u64; 1265 struct cvmx_iob_to_ncb_did_98_credits_s { 1266#ifdef __BIG_ENDIAN_BITFIELD 1267 uint64_t reserved_7_63:57; 1268 uint64_t crd:7; 1269#else 1270 uint64_t crd:7; 1271 uint64_t reserved_7_63:57; 1272#endif 1273 } s; 1274 struct cvmx_iob_to_ncb_did_98_credits_s cn68xx; 1275 struct cvmx_iob_to_ncb_did_98_credits_s cn68xxp1; 1276}; 1277 1278#endif 1279