0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 #ifndef __CVMX_IOB_DEFS_H__
0029 #define __CVMX_IOB_DEFS_H__
0030
0031 #define CVMX_IOB_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011800F00007F8ull))
0032 #define CVMX_IOB_CTL_STATUS (CVMX_ADD_IO_SEG(0x00011800F0000050ull))
0033 #define CVMX_IOB_DWB_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000028ull))
0034 #define CVMX_IOB_FAU_TIMEOUT (CVMX_ADD_IO_SEG(0x00011800F0000000ull))
0035 #define CVMX_IOB_I2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000010ull))
0036 #define CVMX_IOB_INB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000078ull))
0037 #define CVMX_IOB_INB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000088ull))
0038 #define CVMX_IOB_INB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000070ull))
0039 #define CVMX_IOB_INB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000080ull))
0040 #define CVMX_IOB_INT_ENB (CVMX_ADD_IO_SEG(0x00011800F0000060ull))
0041 #define CVMX_IOB_INT_SUM (CVMX_ADD_IO_SEG(0x00011800F0000058ull))
0042 #define CVMX_IOB_N2C_L2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000020ull))
0043 #define CVMX_IOB_N2C_RSP_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000008ull))
0044 #define CVMX_IOB_OUTB_COM_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000040ull))
0045 #define CVMX_IOB_OUTB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000098ull))
0046 #define CVMX_IOB_OUTB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A8ull))
0047 #define CVMX_IOB_OUTB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000090ull))
0048 #define CVMX_IOB_OUTB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A0ull))
0049 #define CVMX_IOB_OUTB_FPA_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000048ull))
0050 #define CVMX_IOB_OUTB_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000038ull))
0051 #define CVMX_IOB_P2C_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000018ull))
0052 #define CVMX_IOB_PKT_ERR (CVMX_ADD_IO_SEG(0x00011800F0000068ull))
0053 #define CVMX_IOB_TO_CMB_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00000B0ull))
0054 #define CVMX_IOB_TO_NCB_DID_00_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000800ull))
0055 #define CVMX_IOB_TO_NCB_DID_111_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B78ull))
0056 #define CVMX_IOB_TO_NCB_DID_223_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000EF8ull))
0057 #define CVMX_IOB_TO_NCB_DID_24_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00008C0ull))
0058 #define CVMX_IOB_TO_NCB_DID_32_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000900ull))
0059 #define CVMX_IOB_TO_NCB_DID_40_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000940ull))
0060 #define CVMX_IOB_TO_NCB_DID_55_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00009B8ull))
0061 #define CVMX_IOB_TO_NCB_DID_64_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A00ull))
0062 #define CVMX_IOB_TO_NCB_DID_79_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A78ull))
0063 #define CVMX_IOB_TO_NCB_DID_96_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B00ull))
0064 #define CVMX_IOB_TO_NCB_DID_98_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B10ull))
0065
0066 union cvmx_iob_bist_status {
0067 uint64_t u64;
0068 struct cvmx_iob_bist_status_s {
0069 #ifdef __BIG_ENDIAN_BITFIELD
0070 uint64_t reserved_2_63:62;
0071 uint64_t ibd:1;
0072 uint64_t icd:1;
0073 #else
0074 uint64_t icd:1;
0075 uint64_t ibd:1;
0076 uint64_t reserved_2_63:62;
0077 #endif
0078 } s;
0079 struct cvmx_iob_bist_status_cn30xx {
0080 #ifdef __BIG_ENDIAN_BITFIELD
0081 uint64_t reserved_18_63:46;
0082 uint64_t icnrcb:1;
0083 uint64_t icr0:1;
0084 uint64_t icr1:1;
0085 uint64_t icnr1:1;
0086 uint64_t icnr0:1;
0087 uint64_t ibdr0:1;
0088 uint64_t ibdr1:1;
0089 uint64_t ibr0:1;
0090 uint64_t ibr1:1;
0091 uint64_t icnrt:1;
0092 uint64_t ibrq0:1;
0093 uint64_t ibrq1:1;
0094 uint64_t icrn0:1;
0095 uint64_t icrn1:1;
0096 uint64_t icrp0:1;
0097 uint64_t icrp1:1;
0098 uint64_t ibd:1;
0099 uint64_t icd:1;
0100 #else
0101 uint64_t icd:1;
0102 uint64_t ibd:1;
0103 uint64_t icrp1:1;
0104 uint64_t icrp0:1;
0105 uint64_t icrn1:1;
0106 uint64_t icrn0:1;
0107 uint64_t ibrq1:1;
0108 uint64_t ibrq0:1;
0109 uint64_t icnrt:1;
0110 uint64_t ibr1:1;
0111 uint64_t ibr0:1;
0112 uint64_t ibdr1:1;
0113 uint64_t ibdr0:1;
0114 uint64_t icnr0:1;
0115 uint64_t icnr1:1;
0116 uint64_t icr1:1;
0117 uint64_t icr0:1;
0118 uint64_t icnrcb:1;
0119 uint64_t reserved_18_63:46;
0120 #endif
0121 } cn30xx;
0122 struct cvmx_iob_bist_status_cn61xx {
0123 #ifdef __BIG_ENDIAN_BITFIELD
0124 uint64_t reserved_23_63:41;
0125 uint64_t xmdfif:1;
0126 uint64_t xmcfif:1;
0127 uint64_t iorfif:1;
0128 uint64_t rsdfif:1;
0129 uint64_t iocfif:1;
0130 uint64_t icnrcb:1;
0131 uint64_t icr0:1;
0132 uint64_t icr1:1;
0133 uint64_t icnr1:1;
0134 uint64_t icnr0:1;
0135 uint64_t ibdr0:1;
0136 uint64_t ibdr1:1;
0137 uint64_t ibr0:1;
0138 uint64_t ibr1:1;
0139 uint64_t icnrt:1;
0140 uint64_t ibrq0:1;
0141 uint64_t ibrq1:1;
0142 uint64_t icrn0:1;
0143 uint64_t icrn1:1;
0144 uint64_t icrp0:1;
0145 uint64_t icrp1:1;
0146 uint64_t ibd:1;
0147 uint64_t icd:1;
0148 #else
0149 uint64_t icd:1;
0150 uint64_t ibd:1;
0151 uint64_t icrp1:1;
0152 uint64_t icrp0:1;
0153 uint64_t icrn1:1;
0154 uint64_t icrn0:1;
0155 uint64_t ibrq1:1;
0156 uint64_t ibrq0:1;
0157 uint64_t icnrt:1;
0158 uint64_t ibr1:1;
0159 uint64_t ibr0:1;
0160 uint64_t ibdr1:1;
0161 uint64_t ibdr0:1;
0162 uint64_t icnr0:1;
0163 uint64_t icnr1:1;
0164 uint64_t icr1:1;
0165 uint64_t icr0:1;
0166 uint64_t icnrcb:1;
0167 uint64_t iocfif:1;
0168 uint64_t rsdfif:1;
0169 uint64_t iorfif:1;
0170 uint64_t xmcfif:1;
0171 uint64_t xmdfif:1;
0172 uint64_t reserved_23_63:41;
0173 #endif
0174 } cn61xx;
0175 struct cvmx_iob_bist_status_cn68xx {
0176 #ifdef __BIG_ENDIAN_BITFIELD
0177 uint64_t reserved_18_63:46;
0178 uint64_t xmdfif:1;
0179 uint64_t xmcfif:1;
0180 uint64_t iorfif:1;
0181 uint64_t rsdfif:1;
0182 uint64_t iocfif:1;
0183 uint64_t icnrcb:1;
0184 uint64_t icr0:1;
0185 uint64_t icr1:1;
0186 uint64_t icnr0:1;
0187 uint64_t ibr0:1;
0188 uint64_t ibr1:1;
0189 uint64_t icnrt:1;
0190 uint64_t ibrq0:1;
0191 uint64_t ibrq1:1;
0192 uint64_t icrn0:1;
0193 uint64_t icrn1:1;
0194 uint64_t ibd:1;
0195 uint64_t icd:1;
0196 #else
0197 uint64_t icd:1;
0198 uint64_t ibd:1;
0199 uint64_t icrn1:1;
0200 uint64_t icrn0:1;
0201 uint64_t ibrq1:1;
0202 uint64_t ibrq0:1;
0203 uint64_t icnrt:1;
0204 uint64_t ibr1:1;
0205 uint64_t ibr0:1;
0206 uint64_t icnr0:1;
0207 uint64_t icr1:1;
0208 uint64_t icr0:1;
0209 uint64_t icnrcb:1;
0210 uint64_t iocfif:1;
0211 uint64_t rsdfif:1;
0212 uint64_t iorfif:1;
0213 uint64_t xmcfif:1;
0214 uint64_t xmdfif:1;
0215 uint64_t reserved_18_63:46;
0216 #endif
0217 } cn68xx;
0218 };
0219
0220 union cvmx_iob_ctl_status {
0221 uint64_t u64;
0222 struct cvmx_iob_ctl_status_s {
0223 #ifdef __BIG_ENDIAN_BITFIELD
0224 uint64_t reserved_11_63:53;
0225 uint64_t fif_dly:1;
0226 uint64_t xmc_per:4;
0227 uint64_t reserved_5_5:1;
0228 uint64_t outb_mat:1;
0229 uint64_t inb_mat:1;
0230 uint64_t pko_enb:1;
0231 uint64_t dwb_enb:1;
0232 uint64_t fau_end:1;
0233 #else
0234 uint64_t fau_end:1;
0235 uint64_t dwb_enb:1;
0236 uint64_t pko_enb:1;
0237 uint64_t inb_mat:1;
0238 uint64_t outb_mat:1;
0239 uint64_t reserved_5_5:1;
0240 uint64_t xmc_per:4;
0241 uint64_t fif_dly:1;
0242 uint64_t reserved_11_63:53;
0243 #endif
0244 } s;
0245 struct cvmx_iob_ctl_status_cn30xx {
0246 #ifdef __BIG_ENDIAN_BITFIELD
0247 uint64_t reserved_5_63:59;
0248 uint64_t outb_mat:1;
0249 uint64_t inb_mat:1;
0250 uint64_t pko_enb:1;
0251 uint64_t dwb_enb:1;
0252 uint64_t fau_end:1;
0253 #else
0254 uint64_t fau_end:1;
0255 uint64_t dwb_enb:1;
0256 uint64_t pko_enb:1;
0257 uint64_t inb_mat:1;
0258 uint64_t outb_mat:1;
0259 uint64_t reserved_5_63:59;
0260 #endif
0261 } cn30xx;
0262 struct cvmx_iob_ctl_status_cn52xx {
0263 #ifdef __BIG_ENDIAN_BITFIELD
0264 uint64_t reserved_6_63:58;
0265 uint64_t rr_mode:1;
0266 uint64_t outb_mat:1;
0267 uint64_t inb_mat:1;
0268 uint64_t pko_enb:1;
0269 uint64_t dwb_enb:1;
0270 uint64_t fau_end:1;
0271 #else
0272 uint64_t fau_end:1;
0273 uint64_t dwb_enb:1;
0274 uint64_t pko_enb:1;
0275 uint64_t inb_mat:1;
0276 uint64_t outb_mat:1;
0277 uint64_t rr_mode:1;
0278 uint64_t reserved_6_63:58;
0279 #endif
0280 } cn52xx;
0281 struct cvmx_iob_ctl_status_cn61xx {
0282 #ifdef __BIG_ENDIAN_BITFIELD
0283 uint64_t reserved_11_63:53;
0284 uint64_t fif_dly:1;
0285 uint64_t xmc_per:4;
0286 uint64_t rr_mode:1;
0287 uint64_t outb_mat:1;
0288 uint64_t inb_mat:1;
0289 uint64_t pko_enb:1;
0290 uint64_t dwb_enb:1;
0291 uint64_t fau_end:1;
0292 #else
0293 uint64_t fau_end:1;
0294 uint64_t dwb_enb:1;
0295 uint64_t pko_enb:1;
0296 uint64_t inb_mat:1;
0297 uint64_t outb_mat:1;
0298 uint64_t rr_mode:1;
0299 uint64_t xmc_per:4;
0300 uint64_t fif_dly:1;
0301 uint64_t reserved_11_63:53;
0302 #endif
0303 } cn61xx;
0304 struct cvmx_iob_ctl_status_cn63xx {
0305 #ifdef __BIG_ENDIAN_BITFIELD
0306 uint64_t reserved_10_63:54;
0307 uint64_t xmc_per:4;
0308 uint64_t rr_mode:1;
0309 uint64_t outb_mat:1;
0310 uint64_t inb_mat:1;
0311 uint64_t pko_enb:1;
0312 uint64_t dwb_enb:1;
0313 uint64_t fau_end:1;
0314 #else
0315 uint64_t fau_end:1;
0316 uint64_t dwb_enb:1;
0317 uint64_t pko_enb:1;
0318 uint64_t inb_mat:1;
0319 uint64_t outb_mat:1;
0320 uint64_t rr_mode:1;
0321 uint64_t xmc_per:4;
0322 uint64_t reserved_10_63:54;
0323 #endif
0324 } cn63xx;
0325 struct cvmx_iob_ctl_status_cn68xx {
0326 #ifdef __BIG_ENDIAN_BITFIELD
0327 uint64_t reserved_11_63:53;
0328 uint64_t fif_dly:1;
0329 uint64_t xmc_per:4;
0330 uint64_t rsvr5:1;
0331 uint64_t outb_mat:1;
0332 uint64_t inb_mat:1;
0333 uint64_t pko_enb:1;
0334 uint64_t dwb_enb:1;
0335 uint64_t fau_end:1;
0336 #else
0337 uint64_t fau_end:1;
0338 uint64_t dwb_enb:1;
0339 uint64_t pko_enb:1;
0340 uint64_t inb_mat:1;
0341 uint64_t outb_mat:1;
0342 uint64_t rsvr5:1;
0343 uint64_t xmc_per:4;
0344 uint64_t fif_dly:1;
0345 uint64_t reserved_11_63:53;
0346 #endif
0347 } cn68xx;
0348 };
0349
0350 union cvmx_iob_dwb_pri_cnt {
0351 uint64_t u64;
0352 struct cvmx_iob_dwb_pri_cnt_s {
0353 #ifdef __BIG_ENDIAN_BITFIELD
0354 uint64_t reserved_16_63:48;
0355 uint64_t cnt_enb:1;
0356 uint64_t cnt_val:15;
0357 #else
0358 uint64_t cnt_val:15;
0359 uint64_t cnt_enb:1;
0360 uint64_t reserved_16_63:48;
0361 #endif
0362 } s;
0363 };
0364
0365 union cvmx_iob_fau_timeout {
0366 uint64_t u64;
0367 struct cvmx_iob_fau_timeout_s {
0368 #ifdef __BIG_ENDIAN_BITFIELD
0369 uint64_t reserved_13_63:51;
0370 uint64_t tout_enb:1;
0371 uint64_t tout_val:12;
0372 #else
0373 uint64_t tout_val:12;
0374 uint64_t tout_enb:1;
0375 uint64_t reserved_13_63:51;
0376 #endif
0377 } s;
0378 };
0379
0380 union cvmx_iob_i2c_pri_cnt {
0381 uint64_t u64;
0382 struct cvmx_iob_i2c_pri_cnt_s {
0383 #ifdef __BIG_ENDIAN_BITFIELD
0384 uint64_t reserved_16_63:48;
0385 uint64_t cnt_enb:1;
0386 uint64_t cnt_val:15;
0387 #else
0388 uint64_t cnt_val:15;
0389 uint64_t cnt_enb:1;
0390 uint64_t reserved_16_63:48;
0391 #endif
0392 } s;
0393 };
0394
0395 union cvmx_iob_inb_control_match {
0396 uint64_t u64;
0397 struct cvmx_iob_inb_control_match_s {
0398 #ifdef __BIG_ENDIAN_BITFIELD
0399 uint64_t reserved_29_63:35;
0400 uint64_t mask:8;
0401 uint64_t opc:4;
0402 uint64_t dst:9;
0403 uint64_t src:8;
0404 #else
0405 uint64_t src:8;
0406 uint64_t dst:9;
0407 uint64_t opc:4;
0408 uint64_t mask:8;
0409 uint64_t reserved_29_63:35;
0410 #endif
0411 } s;
0412 };
0413
0414 union cvmx_iob_inb_control_match_enb {
0415 uint64_t u64;
0416 struct cvmx_iob_inb_control_match_enb_s {
0417 #ifdef __BIG_ENDIAN_BITFIELD
0418 uint64_t reserved_29_63:35;
0419 uint64_t mask:8;
0420 uint64_t opc:4;
0421 uint64_t dst:9;
0422 uint64_t src:8;
0423 #else
0424 uint64_t src:8;
0425 uint64_t dst:9;
0426 uint64_t opc:4;
0427 uint64_t mask:8;
0428 uint64_t reserved_29_63:35;
0429 #endif
0430 } s;
0431 };
0432
0433 union cvmx_iob_inb_data_match {
0434 uint64_t u64;
0435 struct cvmx_iob_inb_data_match_s {
0436 #ifdef __BIG_ENDIAN_BITFIELD
0437 uint64_t data:64;
0438 #else
0439 uint64_t data:64;
0440 #endif
0441 } s;
0442 };
0443
0444 union cvmx_iob_inb_data_match_enb {
0445 uint64_t u64;
0446 struct cvmx_iob_inb_data_match_enb_s {
0447 #ifdef __BIG_ENDIAN_BITFIELD
0448 uint64_t data:64;
0449 #else
0450 uint64_t data:64;
0451 #endif
0452 } s;
0453 };
0454
0455 union cvmx_iob_int_enb {
0456 uint64_t u64;
0457 struct cvmx_iob_int_enb_s {
0458 #ifdef __BIG_ENDIAN_BITFIELD
0459 uint64_t reserved_6_63:58;
0460 uint64_t p_dat:1;
0461 uint64_t np_dat:1;
0462 uint64_t p_eop:1;
0463 uint64_t p_sop:1;
0464 uint64_t np_eop:1;
0465 uint64_t np_sop:1;
0466 #else
0467 uint64_t np_sop:1;
0468 uint64_t np_eop:1;
0469 uint64_t p_sop:1;
0470 uint64_t p_eop:1;
0471 uint64_t np_dat:1;
0472 uint64_t p_dat:1;
0473 uint64_t reserved_6_63:58;
0474 #endif
0475 } s;
0476 struct cvmx_iob_int_enb_cn30xx {
0477 #ifdef __BIG_ENDIAN_BITFIELD
0478 uint64_t reserved_4_63:60;
0479 uint64_t p_eop:1;
0480 uint64_t p_sop:1;
0481 uint64_t np_eop:1;
0482 uint64_t np_sop:1;
0483 #else
0484 uint64_t np_sop:1;
0485 uint64_t np_eop:1;
0486 uint64_t p_sop:1;
0487 uint64_t p_eop:1;
0488 uint64_t reserved_4_63:60;
0489 #endif
0490 } cn30xx;
0491 struct cvmx_iob_int_enb_cn68xx {
0492 #ifdef __BIG_ENDIAN_BITFIELD
0493 uint64_t reserved_0_63:64;
0494 #else
0495 uint64_t reserved_0_63:64;
0496 #endif
0497 } cn68xx;
0498 };
0499
0500 union cvmx_iob_int_sum {
0501 uint64_t u64;
0502 struct cvmx_iob_int_sum_s {
0503 #ifdef __BIG_ENDIAN_BITFIELD
0504 uint64_t reserved_6_63:58;
0505 uint64_t p_dat:1;
0506 uint64_t np_dat:1;
0507 uint64_t p_eop:1;
0508 uint64_t p_sop:1;
0509 uint64_t np_eop:1;
0510 uint64_t np_sop:1;
0511 #else
0512 uint64_t np_sop:1;
0513 uint64_t np_eop:1;
0514 uint64_t p_sop:1;
0515 uint64_t p_eop:1;
0516 uint64_t np_dat:1;
0517 uint64_t p_dat:1;
0518 uint64_t reserved_6_63:58;
0519 #endif
0520 } s;
0521 struct cvmx_iob_int_sum_cn30xx {
0522 #ifdef __BIG_ENDIAN_BITFIELD
0523 uint64_t reserved_4_63:60;
0524 uint64_t p_eop:1;
0525 uint64_t p_sop:1;
0526 uint64_t np_eop:1;
0527 uint64_t np_sop:1;
0528 #else
0529 uint64_t np_sop:1;
0530 uint64_t np_eop:1;
0531 uint64_t p_sop:1;
0532 uint64_t p_eop:1;
0533 uint64_t reserved_4_63:60;
0534 #endif
0535 } cn30xx;
0536 struct cvmx_iob_int_sum_cn68xx {
0537 #ifdef __BIG_ENDIAN_BITFIELD
0538 uint64_t reserved_0_63:64;
0539 #else
0540 uint64_t reserved_0_63:64;
0541 #endif
0542 } cn68xx;
0543 };
0544
0545 union cvmx_iob_n2c_l2c_pri_cnt {
0546 uint64_t u64;
0547 struct cvmx_iob_n2c_l2c_pri_cnt_s {
0548 #ifdef __BIG_ENDIAN_BITFIELD
0549 uint64_t reserved_16_63:48;
0550 uint64_t cnt_enb:1;
0551 uint64_t cnt_val:15;
0552 #else
0553 uint64_t cnt_val:15;
0554 uint64_t cnt_enb:1;
0555 uint64_t reserved_16_63:48;
0556 #endif
0557 } s;
0558 };
0559
0560 union cvmx_iob_n2c_rsp_pri_cnt {
0561 uint64_t u64;
0562 struct cvmx_iob_n2c_rsp_pri_cnt_s {
0563 #ifdef __BIG_ENDIAN_BITFIELD
0564 uint64_t reserved_16_63:48;
0565 uint64_t cnt_enb:1;
0566 uint64_t cnt_val:15;
0567 #else
0568 uint64_t cnt_val:15;
0569 uint64_t cnt_enb:1;
0570 uint64_t reserved_16_63:48;
0571 #endif
0572 } s;
0573 };
0574
0575 union cvmx_iob_outb_com_pri_cnt {
0576 uint64_t u64;
0577 struct cvmx_iob_outb_com_pri_cnt_s {
0578 #ifdef __BIG_ENDIAN_BITFIELD
0579 uint64_t reserved_16_63:48;
0580 uint64_t cnt_enb:1;
0581 uint64_t cnt_val:15;
0582 #else
0583 uint64_t cnt_val:15;
0584 uint64_t cnt_enb:1;
0585 uint64_t reserved_16_63:48;
0586 #endif
0587 } s;
0588 };
0589
0590 union cvmx_iob_outb_control_match {
0591 uint64_t u64;
0592 struct cvmx_iob_outb_control_match_s {
0593 #ifdef __BIG_ENDIAN_BITFIELD
0594 uint64_t reserved_26_63:38;
0595 uint64_t mask:8;
0596 uint64_t eot:1;
0597 uint64_t dst:8;
0598 uint64_t src:9;
0599 #else
0600 uint64_t src:9;
0601 uint64_t dst:8;
0602 uint64_t eot:1;
0603 uint64_t mask:8;
0604 uint64_t reserved_26_63:38;
0605 #endif
0606 } s;
0607 };
0608
0609 union cvmx_iob_outb_control_match_enb {
0610 uint64_t u64;
0611 struct cvmx_iob_outb_control_match_enb_s {
0612 #ifdef __BIG_ENDIAN_BITFIELD
0613 uint64_t reserved_26_63:38;
0614 uint64_t mask:8;
0615 uint64_t eot:1;
0616 uint64_t dst:8;
0617 uint64_t src:9;
0618 #else
0619 uint64_t src:9;
0620 uint64_t dst:8;
0621 uint64_t eot:1;
0622 uint64_t mask:8;
0623 uint64_t reserved_26_63:38;
0624 #endif
0625 } s;
0626 };
0627
0628 union cvmx_iob_outb_data_match {
0629 uint64_t u64;
0630 struct cvmx_iob_outb_data_match_s {
0631 #ifdef __BIG_ENDIAN_BITFIELD
0632 uint64_t data:64;
0633 #else
0634 uint64_t data:64;
0635 #endif
0636 } s;
0637 };
0638
0639 union cvmx_iob_outb_data_match_enb {
0640 uint64_t u64;
0641 struct cvmx_iob_outb_data_match_enb_s {
0642 #ifdef __BIG_ENDIAN_BITFIELD
0643 uint64_t data:64;
0644 #else
0645 uint64_t data:64;
0646 #endif
0647 } s;
0648 };
0649
0650 union cvmx_iob_outb_fpa_pri_cnt {
0651 uint64_t u64;
0652 struct cvmx_iob_outb_fpa_pri_cnt_s {
0653 #ifdef __BIG_ENDIAN_BITFIELD
0654 uint64_t reserved_16_63:48;
0655 uint64_t cnt_enb:1;
0656 uint64_t cnt_val:15;
0657 #else
0658 uint64_t cnt_val:15;
0659 uint64_t cnt_enb:1;
0660 uint64_t reserved_16_63:48;
0661 #endif
0662 } s;
0663 };
0664
0665 union cvmx_iob_outb_req_pri_cnt {
0666 uint64_t u64;
0667 struct cvmx_iob_outb_req_pri_cnt_s {
0668 #ifdef __BIG_ENDIAN_BITFIELD
0669 uint64_t reserved_16_63:48;
0670 uint64_t cnt_enb:1;
0671 uint64_t cnt_val:15;
0672 #else
0673 uint64_t cnt_val:15;
0674 uint64_t cnt_enb:1;
0675 uint64_t reserved_16_63:48;
0676 #endif
0677 } s;
0678 };
0679
0680 union cvmx_iob_p2c_req_pri_cnt {
0681 uint64_t u64;
0682 struct cvmx_iob_p2c_req_pri_cnt_s {
0683 #ifdef __BIG_ENDIAN_BITFIELD
0684 uint64_t reserved_16_63:48;
0685 uint64_t cnt_enb:1;
0686 uint64_t cnt_val:15;
0687 #else
0688 uint64_t cnt_val:15;
0689 uint64_t cnt_enb:1;
0690 uint64_t reserved_16_63:48;
0691 #endif
0692 } s;
0693 };
0694
0695 union cvmx_iob_pkt_err {
0696 uint64_t u64;
0697 struct cvmx_iob_pkt_err_s {
0698 #ifdef __BIG_ENDIAN_BITFIELD
0699 uint64_t reserved_12_63:52;
0700 uint64_t vport:6;
0701 uint64_t port:6;
0702 #else
0703 uint64_t port:6;
0704 uint64_t vport:6;
0705 uint64_t reserved_12_63:52;
0706 #endif
0707 } s;
0708 struct cvmx_iob_pkt_err_cn30xx {
0709 #ifdef __BIG_ENDIAN_BITFIELD
0710 uint64_t reserved_6_63:58;
0711 uint64_t port:6;
0712 #else
0713 uint64_t port:6;
0714 uint64_t reserved_6_63:58;
0715 #endif
0716 } cn30xx;
0717 };
0718
0719 union cvmx_iob_to_cmb_credits {
0720 uint64_t u64;
0721 struct cvmx_iob_to_cmb_credits_s {
0722 #ifdef __BIG_ENDIAN_BITFIELD
0723 uint64_t reserved_6_63:58;
0724 uint64_t ncb_rd:3;
0725 uint64_t ncb_wr:3;
0726 #else
0727 uint64_t ncb_wr:3;
0728 uint64_t ncb_rd:3;
0729 uint64_t reserved_6_63:58;
0730 #endif
0731 } s;
0732 struct cvmx_iob_to_cmb_credits_cn52xx {
0733 #ifdef __BIG_ENDIAN_BITFIELD
0734 uint64_t reserved_9_63:55;
0735 uint64_t pko_rd:3;
0736 uint64_t ncb_rd:3;
0737 uint64_t ncb_wr:3;
0738 #else
0739 uint64_t ncb_wr:3;
0740 uint64_t ncb_rd:3;
0741 uint64_t pko_rd:3;
0742 uint64_t reserved_9_63:55;
0743 #endif
0744 } cn52xx;
0745 struct cvmx_iob_to_cmb_credits_cn68xx {
0746 #ifdef __BIG_ENDIAN_BITFIELD
0747 uint64_t reserved_9_63:55;
0748 uint64_t dwb:3;
0749 uint64_t ncb_rd:3;
0750 uint64_t ncb_wr:3;
0751 #else
0752 uint64_t ncb_wr:3;
0753 uint64_t ncb_rd:3;
0754 uint64_t dwb:3;
0755 uint64_t reserved_9_63:55;
0756 #endif
0757 } cn68xx;
0758 };
0759
0760 union cvmx_iob_to_ncb_did_00_credits {
0761 uint64_t u64;
0762 struct cvmx_iob_to_ncb_did_00_credits_s {
0763 #ifdef __BIG_ENDIAN_BITFIELD
0764 uint64_t reserved_7_63:57;
0765 uint64_t crd:7;
0766 #else
0767 uint64_t crd:7;
0768 uint64_t reserved_7_63:57;
0769 #endif
0770 } s;
0771 };
0772
0773 union cvmx_iob_to_ncb_did_111_credits {
0774 uint64_t u64;
0775 struct cvmx_iob_to_ncb_did_111_credits_s {
0776 #ifdef __BIG_ENDIAN_BITFIELD
0777 uint64_t reserved_7_63:57;
0778 uint64_t crd:7;
0779 #else
0780 uint64_t crd:7;
0781 uint64_t reserved_7_63:57;
0782 #endif
0783 } s;
0784 };
0785
0786 union cvmx_iob_to_ncb_did_223_credits {
0787 uint64_t u64;
0788 struct cvmx_iob_to_ncb_did_223_credits_s {
0789 #ifdef __BIG_ENDIAN_BITFIELD
0790 uint64_t reserved_7_63:57;
0791 uint64_t crd:7;
0792 #else
0793 uint64_t crd:7;
0794 uint64_t reserved_7_63:57;
0795 #endif
0796 } s;
0797 };
0798
0799 union cvmx_iob_to_ncb_did_24_credits {
0800 uint64_t u64;
0801 struct cvmx_iob_to_ncb_did_24_credits_s {
0802 #ifdef __BIG_ENDIAN_BITFIELD
0803 uint64_t reserved_7_63:57;
0804 uint64_t crd:7;
0805 #else
0806 uint64_t crd:7;
0807 uint64_t reserved_7_63:57;
0808 #endif
0809 } s;
0810 };
0811
0812 union cvmx_iob_to_ncb_did_32_credits {
0813 uint64_t u64;
0814 struct cvmx_iob_to_ncb_did_32_credits_s {
0815 #ifdef __BIG_ENDIAN_BITFIELD
0816 uint64_t reserved_7_63:57;
0817 uint64_t crd:7;
0818 #else
0819 uint64_t crd:7;
0820 uint64_t reserved_7_63:57;
0821 #endif
0822 } s;
0823 };
0824
0825 union cvmx_iob_to_ncb_did_40_credits {
0826 uint64_t u64;
0827 struct cvmx_iob_to_ncb_did_40_credits_s {
0828 #ifdef __BIG_ENDIAN_BITFIELD
0829 uint64_t reserved_7_63:57;
0830 uint64_t crd:7;
0831 #else
0832 uint64_t crd:7;
0833 uint64_t reserved_7_63:57;
0834 #endif
0835 } s;
0836 };
0837
0838 union cvmx_iob_to_ncb_did_55_credits {
0839 uint64_t u64;
0840 struct cvmx_iob_to_ncb_did_55_credits_s {
0841 #ifdef __BIG_ENDIAN_BITFIELD
0842 uint64_t reserved_7_63:57;
0843 uint64_t crd:7;
0844 #else
0845 uint64_t crd:7;
0846 uint64_t reserved_7_63:57;
0847 #endif
0848 } s;
0849 };
0850
0851 union cvmx_iob_to_ncb_did_64_credits {
0852 uint64_t u64;
0853 struct cvmx_iob_to_ncb_did_64_credits_s {
0854 #ifdef __BIG_ENDIAN_BITFIELD
0855 uint64_t reserved_7_63:57;
0856 uint64_t crd:7;
0857 #else
0858 uint64_t crd:7;
0859 uint64_t reserved_7_63:57;
0860 #endif
0861 } s;
0862 };
0863
0864 union cvmx_iob_to_ncb_did_79_credits {
0865 uint64_t u64;
0866 struct cvmx_iob_to_ncb_did_79_credits_s {
0867 #ifdef __BIG_ENDIAN_BITFIELD
0868 uint64_t reserved_7_63:57;
0869 uint64_t crd:7;
0870 #else
0871 uint64_t crd:7;
0872 uint64_t reserved_7_63:57;
0873 #endif
0874 } s;
0875 };
0876
0877 union cvmx_iob_to_ncb_did_96_credits {
0878 uint64_t u64;
0879 struct cvmx_iob_to_ncb_did_96_credits_s {
0880 #ifdef __BIG_ENDIAN_BITFIELD
0881 uint64_t reserved_7_63:57;
0882 uint64_t crd:7;
0883 #else
0884 uint64_t crd:7;
0885 uint64_t reserved_7_63:57;
0886 #endif
0887 } s;
0888 };
0889
0890 union cvmx_iob_to_ncb_did_98_credits {
0891 uint64_t u64;
0892 struct cvmx_iob_to_ncb_did_98_credits_s {
0893 #ifdef __BIG_ENDIAN_BITFIELD
0894 uint64_t reserved_7_63:57;
0895 uint64_t crd:7;
0896 #else
0897 uint64_t crd:7;
0898 uint64_t reserved_7_63:57;
0899 #endif
0900 } s;
0901 };
0902
0903 #endif