Linux Audio

Check our new training course

Loading...
v4.10.11
   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_DPI_DEFS_H__
  29#define __CVMX_DPI_DEFS_H__
  30
  31#define CVMX_DPI_BIST_STATUS (CVMX_ADD_IO_SEG(0x0001DF0000000000ull))
  32#define CVMX_DPI_CTL (CVMX_ADD_IO_SEG(0x0001DF0000000040ull))
  33#define CVMX_DPI_DMAX_COUNTS(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000300ull) + ((offset) & 7) * 8)
  34#define CVMX_DPI_DMAX_DBELL(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000200ull) + ((offset) & 7) * 8)
  35#define CVMX_DPI_DMAX_ERR_RSP_STATUS(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000A80ull) + ((offset) & 7) * 8)
  36#define CVMX_DPI_DMAX_IBUFF_SADDR(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000280ull) + ((offset) & 7) * 8)
  37#define CVMX_DPI_DMAX_IFLIGHT(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000A00ull) + ((offset) & 7) * 8)
  38#define CVMX_DPI_DMAX_NADDR(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000380ull) + ((offset) & 7) * 8)
  39#define CVMX_DPI_DMAX_REQBNK0(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000400ull) + ((offset) & 7) * 8)
  40#define CVMX_DPI_DMAX_REQBNK1(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000480ull) + ((offset) & 7) * 8)
  41#define CVMX_DPI_DMA_CONTROL (CVMX_ADD_IO_SEG(0x0001DF0000000048ull))
  42#define CVMX_DPI_DMA_ENGX_EN(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000080ull) + ((offset) & 7) * 8)
  43#define CVMX_DPI_DMA_PPX_CNT(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000B00ull) + ((offset) & 31) * 8)
  44#define CVMX_DPI_ENGX_BUF(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000880ull) + ((offset) & 7) * 8)
  45#define CVMX_DPI_INFO_REG (CVMX_ADD_IO_SEG(0x0001DF0000000980ull))
  46#define CVMX_DPI_INT_EN (CVMX_ADD_IO_SEG(0x0001DF0000000010ull))
  47#define CVMX_DPI_INT_REG (CVMX_ADD_IO_SEG(0x0001DF0000000008ull))
  48#define CVMX_DPI_NCBX_CFG(block_id) (CVMX_ADD_IO_SEG(0x0001DF0000000800ull))
  49#define CVMX_DPI_PINT_INFO (CVMX_ADD_IO_SEG(0x0001DF0000000830ull))
  50#define CVMX_DPI_PKT_ERR_RSP (CVMX_ADD_IO_SEG(0x0001DF0000000078ull))
  51#define CVMX_DPI_REQ_ERR_RSP (CVMX_ADD_IO_SEG(0x0001DF0000000058ull))
  52#define CVMX_DPI_REQ_ERR_RSP_EN (CVMX_ADD_IO_SEG(0x0001DF0000000068ull))
  53#define CVMX_DPI_REQ_ERR_RST (CVMX_ADD_IO_SEG(0x0001DF0000000060ull))
  54#define CVMX_DPI_REQ_ERR_RST_EN (CVMX_ADD_IO_SEG(0x0001DF0000000070ull))
  55#define CVMX_DPI_REQ_ERR_SKIP_COMP (CVMX_ADD_IO_SEG(0x0001DF0000000838ull))
  56#define CVMX_DPI_REQ_GBL_EN (CVMX_ADD_IO_SEG(0x0001DF0000000050ull))
  57#define CVMX_DPI_SLI_PRTX_CFG(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000900ull) + ((offset) & 3) * 8)
  58static inline uint64_t CVMX_DPI_SLI_PRTX_ERR(unsigned long offset)
  59{
  60	switch (cvmx_get_octeon_family()) {
  61	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
  62		return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + (offset) * 8;
  63	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
  64	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
  65	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
  66
  67		if (OCTEON_IS_MODEL(OCTEON_CN68XX_PASS1))
  68			return CVMX_ADD_IO_SEG(0x0001DF0000000928ull) + (offset) * 8;
  69
  70		if (OCTEON_IS_MODEL(OCTEON_CN68XX_PASS2))
  71			return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + (offset) * 8;
  72		return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + (offset) * 8;
  73	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
  74		return CVMX_ADD_IO_SEG(0x0001DF0000000928ull) + (offset) * 8;
  75	}
  76	return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + (offset) * 8;
  77}
  78
  79#define CVMX_DPI_SLI_PRTX_ERR_INFO(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000940ull) + ((offset) & 3) * 8)
  80
  81union cvmx_dpi_bist_status {
  82	uint64_t u64;
  83	struct cvmx_dpi_bist_status_s {
  84#ifdef __BIG_ENDIAN_BITFIELD
  85		uint64_t reserved_47_63:17;
  86		uint64_t bist:47;
  87#else
  88		uint64_t bist:47;
  89		uint64_t reserved_47_63:17;
  90#endif
  91	} s;
  92	struct cvmx_dpi_bist_status_s cn61xx;
  93	struct cvmx_dpi_bist_status_cn63xx {
  94#ifdef __BIG_ENDIAN_BITFIELD
  95		uint64_t reserved_45_63:19;
  96		uint64_t bist:45;
  97#else
  98		uint64_t bist:45;
  99		uint64_t reserved_45_63:19;
 100#endif
 101	} cn63xx;
 102	struct cvmx_dpi_bist_status_cn63xxp1 {
 103#ifdef __BIG_ENDIAN_BITFIELD
 104		uint64_t reserved_37_63:27;
 105		uint64_t bist:37;
 106#else
 107		uint64_t bist:37;
 108		uint64_t reserved_37_63:27;
 109#endif
 110	} cn63xxp1;
 111	struct cvmx_dpi_bist_status_s cn66xx;
 112	struct cvmx_dpi_bist_status_cn63xx cn68xx;
 113	struct cvmx_dpi_bist_status_cn63xx cn68xxp1;
 114	struct cvmx_dpi_bist_status_s cnf71xx;
 115};
 116
 117union cvmx_dpi_ctl {
 118	uint64_t u64;
 119	struct cvmx_dpi_ctl_s {
 120#ifdef __BIG_ENDIAN_BITFIELD
 121		uint64_t reserved_2_63:62;
 122		uint64_t clk:1;
 123		uint64_t en:1;
 124#else
 125		uint64_t en:1;
 126		uint64_t clk:1;
 127		uint64_t reserved_2_63:62;
 128#endif
 129	} s;
 130	struct cvmx_dpi_ctl_cn61xx {
 131#ifdef __BIG_ENDIAN_BITFIELD
 132		uint64_t reserved_1_63:63;
 133		uint64_t en:1;
 134#else
 135		uint64_t en:1;
 136		uint64_t reserved_1_63:63;
 137#endif
 138	} cn61xx;
 139	struct cvmx_dpi_ctl_s cn63xx;
 140	struct cvmx_dpi_ctl_s cn63xxp1;
 141	struct cvmx_dpi_ctl_s cn66xx;
 142	struct cvmx_dpi_ctl_s cn68xx;
 143	struct cvmx_dpi_ctl_s cn68xxp1;
 144	struct cvmx_dpi_ctl_cn61xx cnf71xx;
 145};
 146
 147union cvmx_dpi_dmax_counts {
 148	uint64_t u64;
 149	struct cvmx_dpi_dmax_counts_s {
 150#ifdef __BIG_ENDIAN_BITFIELD
 151		uint64_t reserved_39_63:25;
 152		uint64_t fcnt:7;
 153		uint64_t dbell:32;
 154#else
 155		uint64_t dbell:32;
 156		uint64_t fcnt:7;
 157		uint64_t reserved_39_63:25;
 158#endif
 159	} s;
 160	struct cvmx_dpi_dmax_counts_s cn61xx;
 161	struct cvmx_dpi_dmax_counts_s cn63xx;
 162	struct cvmx_dpi_dmax_counts_s cn63xxp1;
 163	struct cvmx_dpi_dmax_counts_s cn66xx;
 164	struct cvmx_dpi_dmax_counts_s cn68xx;
 165	struct cvmx_dpi_dmax_counts_s cn68xxp1;
 166	struct cvmx_dpi_dmax_counts_s cnf71xx;
 167};
 168
 169union cvmx_dpi_dmax_dbell {
 170	uint64_t u64;
 171	struct cvmx_dpi_dmax_dbell_s {
 172#ifdef __BIG_ENDIAN_BITFIELD
 173		uint64_t reserved_16_63:48;
 174		uint64_t dbell:16;
 175#else
 176		uint64_t dbell:16;
 177		uint64_t reserved_16_63:48;
 178#endif
 179	} s;
 180	struct cvmx_dpi_dmax_dbell_s cn61xx;
 181	struct cvmx_dpi_dmax_dbell_s cn63xx;
 182	struct cvmx_dpi_dmax_dbell_s cn63xxp1;
 183	struct cvmx_dpi_dmax_dbell_s cn66xx;
 184	struct cvmx_dpi_dmax_dbell_s cn68xx;
 185	struct cvmx_dpi_dmax_dbell_s cn68xxp1;
 186	struct cvmx_dpi_dmax_dbell_s cnf71xx;
 187};
 188
 189union cvmx_dpi_dmax_err_rsp_status {
 190	uint64_t u64;
 191	struct cvmx_dpi_dmax_err_rsp_status_s {
 192#ifdef __BIG_ENDIAN_BITFIELD
 193		uint64_t reserved_6_63:58;
 194		uint64_t status:6;
 195#else
 196		uint64_t status:6;
 197		uint64_t reserved_6_63:58;
 198#endif
 199	} s;
 200	struct cvmx_dpi_dmax_err_rsp_status_s cn61xx;
 201	struct cvmx_dpi_dmax_err_rsp_status_s cn66xx;
 202	struct cvmx_dpi_dmax_err_rsp_status_s cn68xx;
 203	struct cvmx_dpi_dmax_err_rsp_status_s cn68xxp1;
 204	struct cvmx_dpi_dmax_err_rsp_status_s cnf71xx;
 205};
 206
 207union cvmx_dpi_dmax_ibuff_saddr {
 208	uint64_t u64;
 209	struct cvmx_dpi_dmax_ibuff_saddr_s {
 210#ifdef __BIG_ENDIAN_BITFIELD
 211		uint64_t reserved_62_63:2;
 212		uint64_t csize:14;
 213		uint64_t reserved_41_47:7;
 214		uint64_t idle:1;
 215		uint64_t saddr:33;
 216		uint64_t reserved_0_6:7;
 217#else
 218		uint64_t reserved_0_6:7;
 219		uint64_t saddr:33;
 220		uint64_t idle:1;
 221		uint64_t reserved_41_47:7;
 222		uint64_t csize:14;
 223		uint64_t reserved_62_63:2;
 224#endif
 225	} s;
 226	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx {
 227#ifdef __BIG_ENDIAN_BITFIELD
 228		uint64_t reserved_62_63:2;
 229		uint64_t csize:14;
 230		uint64_t reserved_41_47:7;
 231		uint64_t idle:1;
 232		uint64_t reserved_36_39:4;
 233		uint64_t saddr:29;
 234		uint64_t reserved_0_6:7;
 235#else
 236		uint64_t reserved_0_6:7;
 237		uint64_t saddr:29;
 238		uint64_t reserved_36_39:4;
 239		uint64_t idle:1;
 240		uint64_t reserved_41_47:7;
 241		uint64_t csize:14;
 242		uint64_t reserved_62_63:2;
 243#endif
 244	} cn61xx;
 245	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn63xx;
 246	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn63xxp1;
 247	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn66xx;
 248	struct cvmx_dpi_dmax_ibuff_saddr_s cn68xx;
 249	struct cvmx_dpi_dmax_ibuff_saddr_s cn68xxp1;
 250	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cnf71xx;
 251};
 252
 253union cvmx_dpi_dmax_iflight {
 254	uint64_t u64;
 255	struct cvmx_dpi_dmax_iflight_s {
 256#ifdef __BIG_ENDIAN_BITFIELD
 257		uint64_t reserved_3_63:61;
 258		uint64_t cnt:3;
 259#else
 260		uint64_t cnt:3;
 261		uint64_t reserved_3_63:61;
 262#endif
 263	} s;
 264	struct cvmx_dpi_dmax_iflight_s cn61xx;
 265	struct cvmx_dpi_dmax_iflight_s cn66xx;
 266	struct cvmx_dpi_dmax_iflight_s cn68xx;
 267	struct cvmx_dpi_dmax_iflight_s cn68xxp1;
 268	struct cvmx_dpi_dmax_iflight_s cnf71xx;
 269};
 270
 271union cvmx_dpi_dmax_naddr {
 272	uint64_t u64;
 273	struct cvmx_dpi_dmax_naddr_s {
 274#ifdef __BIG_ENDIAN_BITFIELD
 275		uint64_t reserved_40_63:24;
 276		uint64_t addr:40;
 277#else
 278		uint64_t addr:40;
 279		uint64_t reserved_40_63:24;
 280#endif
 281	} s;
 282	struct cvmx_dpi_dmax_naddr_cn61xx {
 283#ifdef __BIG_ENDIAN_BITFIELD
 284		uint64_t reserved_36_63:28;
 285		uint64_t addr:36;
 286#else
 287		uint64_t addr:36;
 288		uint64_t reserved_36_63:28;
 289#endif
 290	} cn61xx;
 291	struct cvmx_dpi_dmax_naddr_cn61xx cn63xx;
 292	struct cvmx_dpi_dmax_naddr_cn61xx cn63xxp1;
 293	struct cvmx_dpi_dmax_naddr_cn61xx cn66xx;
 294	struct cvmx_dpi_dmax_naddr_s cn68xx;
 295	struct cvmx_dpi_dmax_naddr_s cn68xxp1;
 296	struct cvmx_dpi_dmax_naddr_cn61xx cnf71xx;
 297};
 298
 299union cvmx_dpi_dmax_reqbnk0 {
 300	uint64_t u64;
 301	struct cvmx_dpi_dmax_reqbnk0_s {
 302#ifdef __BIG_ENDIAN_BITFIELD
 303		uint64_t state:64;
 304#else
 305		uint64_t state:64;
 306#endif
 307	} s;
 308	struct cvmx_dpi_dmax_reqbnk0_s cn61xx;
 309	struct cvmx_dpi_dmax_reqbnk0_s cn63xx;
 310	struct cvmx_dpi_dmax_reqbnk0_s cn63xxp1;
 311	struct cvmx_dpi_dmax_reqbnk0_s cn66xx;
 312	struct cvmx_dpi_dmax_reqbnk0_s cn68xx;
 313	struct cvmx_dpi_dmax_reqbnk0_s cn68xxp1;
 314	struct cvmx_dpi_dmax_reqbnk0_s cnf71xx;
 315};
 316
 317union cvmx_dpi_dmax_reqbnk1 {
 318	uint64_t u64;
 319	struct cvmx_dpi_dmax_reqbnk1_s {
 320#ifdef __BIG_ENDIAN_BITFIELD
 321		uint64_t state:64;
 322#else
 323		uint64_t state:64;
 324#endif
 325	} s;
 326	struct cvmx_dpi_dmax_reqbnk1_s cn61xx;
 327	struct cvmx_dpi_dmax_reqbnk1_s cn63xx;
 328	struct cvmx_dpi_dmax_reqbnk1_s cn63xxp1;
 329	struct cvmx_dpi_dmax_reqbnk1_s cn66xx;
 330	struct cvmx_dpi_dmax_reqbnk1_s cn68xx;
 331	struct cvmx_dpi_dmax_reqbnk1_s cn68xxp1;
 332	struct cvmx_dpi_dmax_reqbnk1_s cnf71xx;
 333};
 334
 335union cvmx_dpi_dma_control {
 336	uint64_t u64;
 337	struct cvmx_dpi_dma_control_s {
 338#ifdef __BIG_ENDIAN_BITFIELD
 339		uint64_t reserved_62_63:2;
 340		uint64_t dici_mode:1;
 341		uint64_t pkt_en1:1;
 342		uint64_t ffp_dis:1;
 343		uint64_t commit_mode:1;
 344		uint64_t pkt_hp:1;
 345		uint64_t pkt_en:1;
 346		uint64_t reserved_54_55:2;
 347		uint64_t dma_enb:6;
 348		uint64_t reserved_34_47:14;
 349		uint64_t b0_lend:1;
 350		uint64_t dwb_denb:1;
 351		uint64_t dwb_ichk:9;
 352		uint64_t fpa_que:3;
 353		uint64_t o_add1:1;
 354		uint64_t o_ro:1;
 355		uint64_t o_ns:1;
 356		uint64_t o_es:2;
 357		uint64_t o_mode:1;
 358		uint64_t reserved_0_13:14;
 359#else
 360		uint64_t reserved_0_13:14;
 361		uint64_t o_mode:1;
 362		uint64_t o_es:2;
 363		uint64_t o_ns:1;
 364		uint64_t o_ro:1;
 365		uint64_t o_add1:1;
 366		uint64_t fpa_que:3;
 367		uint64_t dwb_ichk:9;
 368		uint64_t dwb_denb:1;
 369		uint64_t b0_lend:1;
 370		uint64_t reserved_34_47:14;
 371		uint64_t dma_enb:6;
 372		uint64_t reserved_54_55:2;
 373		uint64_t pkt_en:1;
 374		uint64_t pkt_hp:1;
 375		uint64_t commit_mode:1;
 376		uint64_t ffp_dis:1;
 377		uint64_t pkt_en1:1;
 378		uint64_t dici_mode:1;
 379		uint64_t reserved_62_63:2;
 380#endif
 381	} s;
 382	struct cvmx_dpi_dma_control_s cn61xx;
 383	struct cvmx_dpi_dma_control_cn63xx {
 384#ifdef __BIG_ENDIAN_BITFIELD
 385		uint64_t reserved_61_63:3;
 386		uint64_t pkt_en1:1;
 387		uint64_t ffp_dis:1;
 388		uint64_t commit_mode:1;
 389		uint64_t pkt_hp:1;
 390		uint64_t pkt_en:1;
 391		uint64_t reserved_54_55:2;
 392		uint64_t dma_enb:6;
 393		uint64_t reserved_34_47:14;
 394		uint64_t b0_lend:1;
 395		uint64_t dwb_denb:1;
 396		uint64_t dwb_ichk:9;
 397		uint64_t fpa_que:3;
 398		uint64_t o_add1:1;
 399		uint64_t o_ro:1;
 400		uint64_t o_ns:1;
 401		uint64_t o_es:2;
 402		uint64_t o_mode:1;
 403		uint64_t reserved_0_13:14;
 404#else
 405		uint64_t reserved_0_13:14;
 406		uint64_t o_mode:1;
 407		uint64_t o_es:2;
 408		uint64_t o_ns:1;
 409		uint64_t o_ro:1;
 410		uint64_t o_add1:1;
 411		uint64_t fpa_que:3;
 412		uint64_t dwb_ichk:9;
 413		uint64_t dwb_denb:1;
 414		uint64_t b0_lend:1;
 415		uint64_t reserved_34_47:14;
 416		uint64_t dma_enb:6;
 417		uint64_t reserved_54_55:2;
 418		uint64_t pkt_en:1;
 419		uint64_t pkt_hp:1;
 420		uint64_t commit_mode:1;
 421		uint64_t ffp_dis:1;
 422		uint64_t pkt_en1:1;
 423		uint64_t reserved_61_63:3;
 424#endif
 425	} cn63xx;
 426	struct cvmx_dpi_dma_control_cn63xxp1 {
 427#ifdef __BIG_ENDIAN_BITFIELD
 428		uint64_t reserved_59_63:5;
 429		uint64_t commit_mode:1;
 430		uint64_t pkt_hp:1;
 431		uint64_t pkt_en:1;
 432		uint64_t reserved_54_55:2;
 433		uint64_t dma_enb:6;
 434		uint64_t reserved_34_47:14;
 435		uint64_t b0_lend:1;
 436		uint64_t dwb_denb:1;
 437		uint64_t dwb_ichk:9;
 438		uint64_t fpa_que:3;
 439		uint64_t o_add1:1;
 440		uint64_t o_ro:1;
 441		uint64_t o_ns:1;
 442		uint64_t o_es:2;
 443		uint64_t o_mode:1;
 444		uint64_t reserved_0_13:14;
 445#else
 446		uint64_t reserved_0_13:14;
 447		uint64_t o_mode:1;
 448		uint64_t o_es:2;
 449		uint64_t o_ns:1;
 450		uint64_t o_ro:1;
 451		uint64_t o_add1:1;
 452		uint64_t fpa_que:3;
 453		uint64_t dwb_ichk:9;
 454		uint64_t dwb_denb:1;
 455		uint64_t b0_lend:1;
 456		uint64_t reserved_34_47:14;
 457		uint64_t dma_enb:6;
 458		uint64_t reserved_54_55:2;
 459		uint64_t pkt_en:1;
 460		uint64_t pkt_hp:1;
 461		uint64_t commit_mode:1;
 462		uint64_t reserved_59_63:5;
 463#endif
 464	} cn63xxp1;
 465	struct cvmx_dpi_dma_control_cn63xx cn66xx;
 466	struct cvmx_dpi_dma_control_s cn68xx;
 467	struct cvmx_dpi_dma_control_cn63xx cn68xxp1;
 468	struct cvmx_dpi_dma_control_s cnf71xx;
 469};
 470
 471union cvmx_dpi_dma_engx_en {
 472	uint64_t u64;
 473	struct cvmx_dpi_dma_engx_en_s {
 474#ifdef __BIG_ENDIAN_BITFIELD
 475		uint64_t reserved_8_63:56;
 476		uint64_t qen:8;
 477#else
 478		uint64_t qen:8;
 479		uint64_t reserved_8_63:56;
 480#endif
 481	} s;
 482	struct cvmx_dpi_dma_engx_en_s cn61xx;
 483	struct cvmx_dpi_dma_engx_en_s cn63xx;
 484	struct cvmx_dpi_dma_engx_en_s cn63xxp1;
 485	struct cvmx_dpi_dma_engx_en_s cn66xx;
 486	struct cvmx_dpi_dma_engx_en_s cn68xx;
 487	struct cvmx_dpi_dma_engx_en_s cn68xxp1;
 488	struct cvmx_dpi_dma_engx_en_s cnf71xx;
 489};
 490
 491union cvmx_dpi_dma_ppx_cnt {
 492	uint64_t u64;
 493	struct cvmx_dpi_dma_ppx_cnt_s {
 494#ifdef __BIG_ENDIAN_BITFIELD
 495		uint64_t reserved_16_63:48;
 496		uint64_t cnt:16;
 497#else
 498		uint64_t cnt:16;
 499		uint64_t reserved_16_63:48;
 500#endif
 501	} s;
 502	struct cvmx_dpi_dma_ppx_cnt_s cn61xx;
 503	struct cvmx_dpi_dma_ppx_cnt_s cn68xx;
 504	struct cvmx_dpi_dma_ppx_cnt_s cnf71xx;
 505};
 506
 507union cvmx_dpi_engx_buf {
 508	uint64_t u64;
 509	struct cvmx_dpi_engx_buf_s {
 510#ifdef __BIG_ENDIAN_BITFIELD
 511		uint64_t reserved_37_63:27;
 512		uint64_t compblks:5;
 513		uint64_t reserved_9_31:23;
 514		uint64_t base:5;
 515		uint64_t blks:4;
 516#else
 517		uint64_t blks:4;
 518		uint64_t base:5;
 519		uint64_t reserved_9_31:23;
 520		uint64_t compblks:5;
 521		uint64_t reserved_37_63:27;
 522#endif
 523	} s;
 524	struct cvmx_dpi_engx_buf_s cn61xx;
 525	struct cvmx_dpi_engx_buf_cn63xx {
 526#ifdef __BIG_ENDIAN_BITFIELD
 527		uint64_t reserved_8_63:56;
 528		uint64_t base:4;
 529		uint64_t blks:4;
 530#else
 531		uint64_t blks:4;
 532		uint64_t base:4;
 533		uint64_t reserved_8_63:56;
 534#endif
 535	} cn63xx;
 536	struct cvmx_dpi_engx_buf_cn63xx cn63xxp1;
 537	struct cvmx_dpi_engx_buf_s cn66xx;
 538	struct cvmx_dpi_engx_buf_s cn68xx;
 539	struct cvmx_dpi_engx_buf_s cn68xxp1;
 540	struct cvmx_dpi_engx_buf_s cnf71xx;
 541};
 542
 543union cvmx_dpi_info_reg {
 544	uint64_t u64;
 545	struct cvmx_dpi_info_reg_s {
 546#ifdef __BIG_ENDIAN_BITFIELD
 547		uint64_t reserved_8_63:56;
 548		uint64_t ffp:4;
 549		uint64_t reserved_2_3:2;
 550		uint64_t ncb:1;
 551		uint64_t rsl:1;
 552#else
 553		uint64_t rsl:1;
 554		uint64_t ncb:1;
 555		uint64_t reserved_2_3:2;
 556		uint64_t ffp:4;
 557		uint64_t reserved_8_63:56;
 558#endif
 559	} s;
 560	struct cvmx_dpi_info_reg_s cn61xx;
 561	struct cvmx_dpi_info_reg_s cn63xx;
 562	struct cvmx_dpi_info_reg_cn63xxp1 {
 563#ifdef __BIG_ENDIAN_BITFIELD
 564		uint64_t reserved_2_63:62;
 565		uint64_t ncb:1;
 566		uint64_t rsl:1;
 567#else
 568		uint64_t rsl:1;
 569		uint64_t ncb:1;
 570		uint64_t reserved_2_63:62;
 571#endif
 572	} cn63xxp1;
 573	struct cvmx_dpi_info_reg_s cn66xx;
 574	struct cvmx_dpi_info_reg_s cn68xx;
 575	struct cvmx_dpi_info_reg_s cn68xxp1;
 576	struct cvmx_dpi_info_reg_s cnf71xx;
 577};
 578
 579union cvmx_dpi_int_en {
 580	uint64_t u64;
 581	struct cvmx_dpi_int_en_s {
 582#ifdef __BIG_ENDIAN_BITFIELD
 583		uint64_t reserved_28_63:36;
 584		uint64_t sprt3_rst:1;
 585		uint64_t sprt2_rst:1;
 586		uint64_t sprt1_rst:1;
 587		uint64_t sprt0_rst:1;
 588		uint64_t reserved_23_23:1;
 589		uint64_t req_badfil:1;
 590		uint64_t req_inull:1;
 591		uint64_t req_anull:1;
 592		uint64_t req_undflw:1;
 593		uint64_t req_ovrflw:1;
 594		uint64_t req_badlen:1;
 595		uint64_t req_badadr:1;
 596		uint64_t dmadbo:8;
 597		uint64_t reserved_2_7:6;
 598		uint64_t nfovr:1;
 599		uint64_t nderr:1;
 600#else
 601		uint64_t nderr:1;
 602		uint64_t nfovr:1;
 603		uint64_t reserved_2_7:6;
 604		uint64_t dmadbo:8;
 605		uint64_t req_badadr:1;
 606		uint64_t req_badlen:1;
 607		uint64_t req_ovrflw:1;
 608		uint64_t req_undflw:1;
 609		uint64_t req_anull:1;
 610		uint64_t req_inull:1;
 611		uint64_t req_badfil:1;
 612		uint64_t reserved_23_23:1;
 613		uint64_t sprt0_rst:1;
 614		uint64_t sprt1_rst:1;
 615		uint64_t sprt2_rst:1;
 616		uint64_t sprt3_rst:1;
 617		uint64_t reserved_28_63:36;
 618#endif
 619	} s;
 620	struct cvmx_dpi_int_en_s cn61xx;
 621	struct cvmx_dpi_int_en_cn63xx {
 622#ifdef __BIG_ENDIAN_BITFIELD
 623		uint64_t reserved_26_63:38;
 624		uint64_t sprt1_rst:1;
 625		uint64_t sprt0_rst:1;
 626		uint64_t reserved_23_23:1;
 627		uint64_t req_badfil:1;
 628		uint64_t req_inull:1;
 629		uint64_t req_anull:1;
 630		uint64_t req_undflw:1;
 631		uint64_t req_ovrflw:1;
 632		uint64_t req_badlen:1;
 633		uint64_t req_badadr:1;
 634		uint64_t dmadbo:8;
 635		uint64_t reserved_2_7:6;
 636		uint64_t nfovr:1;
 637		uint64_t nderr:1;
 638#else
 639		uint64_t nderr:1;
 640		uint64_t nfovr:1;
 641		uint64_t reserved_2_7:6;
 642		uint64_t dmadbo:8;
 643		uint64_t req_badadr:1;
 644		uint64_t req_badlen:1;
 645		uint64_t req_ovrflw:1;
 646		uint64_t req_undflw:1;
 647		uint64_t req_anull:1;
 648		uint64_t req_inull:1;
 649		uint64_t req_badfil:1;
 650		uint64_t reserved_23_23:1;
 651		uint64_t sprt0_rst:1;
 652		uint64_t sprt1_rst:1;
 653		uint64_t reserved_26_63:38;
 654#endif
 655	} cn63xx;
 656	struct cvmx_dpi_int_en_cn63xx cn63xxp1;
 657	struct cvmx_dpi_int_en_s cn66xx;
 658	struct cvmx_dpi_int_en_cn63xx cn68xx;
 659	struct cvmx_dpi_int_en_cn63xx cn68xxp1;
 660	struct cvmx_dpi_int_en_s cnf71xx;
 661};
 662
 663union cvmx_dpi_int_reg {
 664	uint64_t u64;
 665	struct cvmx_dpi_int_reg_s {
 666#ifdef __BIG_ENDIAN_BITFIELD
 667		uint64_t reserved_28_63:36;
 668		uint64_t sprt3_rst:1;
 669		uint64_t sprt2_rst:1;
 670		uint64_t sprt1_rst:1;
 671		uint64_t sprt0_rst:1;
 672		uint64_t reserved_23_23:1;
 673		uint64_t req_badfil:1;
 674		uint64_t req_inull:1;
 675		uint64_t req_anull:1;
 676		uint64_t req_undflw:1;
 677		uint64_t req_ovrflw:1;
 678		uint64_t req_badlen:1;
 679		uint64_t req_badadr:1;
 680		uint64_t dmadbo:8;
 681		uint64_t reserved_2_7:6;
 682		uint64_t nfovr:1;
 683		uint64_t nderr:1;
 684#else
 685		uint64_t nderr:1;
 686		uint64_t nfovr:1;
 687		uint64_t reserved_2_7:6;
 688		uint64_t dmadbo:8;
 689		uint64_t req_badadr:1;
 690		uint64_t req_badlen:1;
 691		uint64_t req_ovrflw:1;
 692		uint64_t req_undflw:1;
 693		uint64_t req_anull:1;
 694		uint64_t req_inull:1;
 695		uint64_t req_badfil:1;
 696		uint64_t reserved_23_23:1;
 697		uint64_t sprt0_rst:1;
 698		uint64_t sprt1_rst:1;
 699		uint64_t sprt2_rst:1;
 700		uint64_t sprt3_rst:1;
 701		uint64_t reserved_28_63:36;
 702#endif
 703	} s;
 704	struct cvmx_dpi_int_reg_s cn61xx;
 705	struct cvmx_dpi_int_reg_cn63xx {
 706#ifdef __BIG_ENDIAN_BITFIELD
 707		uint64_t reserved_26_63:38;
 708		uint64_t sprt1_rst:1;
 709		uint64_t sprt0_rst:1;
 710		uint64_t reserved_23_23:1;
 711		uint64_t req_badfil:1;
 712		uint64_t req_inull:1;
 713		uint64_t req_anull:1;
 714		uint64_t req_undflw:1;
 715		uint64_t req_ovrflw:1;
 716		uint64_t req_badlen:1;
 717		uint64_t req_badadr:1;
 718		uint64_t dmadbo:8;
 719		uint64_t reserved_2_7:6;
 720		uint64_t nfovr:1;
 721		uint64_t nderr:1;
 722#else
 723		uint64_t nderr:1;
 724		uint64_t nfovr:1;
 725		uint64_t reserved_2_7:6;
 726		uint64_t dmadbo:8;
 727		uint64_t req_badadr:1;
 728		uint64_t req_badlen:1;
 729		uint64_t req_ovrflw:1;
 730		uint64_t req_undflw:1;
 731		uint64_t req_anull:1;
 732		uint64_t req_inull:1;
 733		uint64_t req_badfil:1;
 734		uint64_t reserved_23_23:1;
 735		uint64_t sprt0_rst:1;
 736		uint64_t sprt1_rst:1;
 737		uint64_t reserved_26_63:38;
 738#endif
 739	} cn63xx;
 740	struct cvmx_dpi_int_reg_cn63xx cn63xxp1;
 741	struct cvmx_dpi_int_reg_s cn66xx;
 742	struct cvmx_dpi_int_reg_cn63xx cn68xx;
 743	struct cvmx_dpi_int_reg_cn63xx cn68xxp1;
 744	struct cvmx_dpi_int_reg_s cnf71xx;
 745};
 746
 747union cvmx_dpi_ncbx_cfg {
 748	uint64_t u64;
 749	struct cvmx_dpi_ncbx_cfg_s {
 750#ifdef __BIG_ENDIAN_BITFIELD
 751		uint64_t reserved_6_63:58;
 752		uint64_t molr:6;
 753#else
 754		uint64_t molr:6;
 755		uint64_t reserved_6_63:58;
 756#endif
 757	} s;
 758	struct cvmx_dpi_ncbx_cfg_s cn61xx;
 759	struct cvmx_dpi_ncbx_cfg_s cn66xx;
 760	struct cvmx_dpi_ncbx_cfg_s cn68xx;
 761	struct cvmx_dpi_ncbx_cfg_s cnf71xx;
 762};
 763
 764union cvmx_dpi_pint_info {
 765	uint64_t u64;
 766	struct cvmx_dpi_pint_info_s {
 767#ifdef __BIG_ENDIAN_BITFIELD
 768		uint64_t reserved_14_63:50;
 769		uint64_t iinfo:6;
 770		uint64_t reserved_6_7:2;
 771		uint64_t sinfo:6;
 772#else
 773		uint64_t sinfo:6;
 774		uint64_t reserved_6_7:2;
 775		uint64_t iinfo:6;
 776		uint64_t reserved_14_63:50;
 777#endif
 778	} s;
 779	struct cvmx_dpi_pint_info_s cn61xx;
 780	struct cvmx_dpi_pint_info_s cn63xx;
 781	struct cvmx_dpi_pint_info_s cn63xxp1;
 782	struct cvmx_dpi_pint_info_s cn66xx;
 783	struct cvmx_dpi_pint_info_s cn68xx;
 784	struct cvmx_dpi_pint_info_s cn68xxp1;
 785	struct cvmx_dpi_pint_info_s cnf71xx;
 786};
 787
 788union cvmx_dpi_pkt_err_rsp {
 789	uint64_t u64;
 790	struct cvmx_dpi_pkt_err_rsp_s {
 791#ifdef __BIG_ENDIAN_BITFIELD
 792		uint64_t reserved_1_63:63;
 793		uint64_t pkterr:1;
 794#else
 795		uint64_t pkterr:1;
 796		uint64_t reserved_1_63:63;
 797#endif
 798	} s;
 799	struct cvmx_dpi_pkt_err_rsp_s cn61xx;
 800	struct cvmx_dpi_pkt_err_rsp_s cn63xx;
 801	struct cvmx_dpi_pkt_err_rsp_s cn63xxp1;
 802	struct cvmx_dpi_pkt_err_rsp_s cn66xx;
 803	struct cvmx_dpi_pkt_err_rsp_s cn68xx;
 804	struct cvmx_dpi_pkt_err_rsp_s cn68xxp1;
 805	struct cvmx_dpi_pkt_err_rsp_s cnf71xx;
 806};
 807
 808union cvmx_dpi_req_err_rsp {
 809	uint64_t u64;
 810	struct cvmx_dpi_req_err_rsp_s {
 811#ifdef __BIG_ENDIAN_BITFIELD
 812		uint64_t reserved_8_63:56;
 813		uint64_t qerr:8;
 814#else
 815		uint64_t qerr:8;
 816		uint64_t reserved_8_63:56;
 817#endif
 818	} s;
 819	struct cvmx_dpi_req_err_rsp_s cn61xx;
 820	struct cvmx_dpi_req_err_rsp_s cn63xx;
 821	struct cvmx_dpi_req_err_rsp_s cn63xxp1;
 822	struct cvmx_dpi_req_err_rsp_s cn66xx;
 823	struct cvmx_dpi_req_err_rsp_s cn68xx;
 824	struct cvmx_dpi_req_err_rsp_s cn68xxp1;
 825	struct cvmx_dpi_req_err_rsp_s cnf71xx;
 826};
 827
 828union cvmx_dpi_req_err_rsp_en {
 829	uint64_t u64;
 830	struct cvmx_dpi_req_err_rsp_en_s {
 831#ifdef __BIG_ENDIAN_BITFIELD
 832		uint64_t reserved_8_63:56;
 833		uint64_t en:8;
 834#else
 835		uint64_t en:8;
 836		uint64_t reserved_8_63:56;
 837#endif
 838	} s;
 839	struct cvmx_dpi_req_err_rsp_en_s cn61xx;
 840	struct cvmx_dpi_req_err_rsp_en_s cn63xx;
 841	struct cvmx_dpi_req_err_rsp_en_s cn63xxp1;
 842	struct cvmx_dpi_req_err_rsp_en_s cn66xx;
 843	struct cvmx_dpi_req_err_rsp_en_s cn68xx;
 844	struct cvmx_dpi_req_err_rsp_en_s cn68xxp1;
 845	struct cvmx_dpi_req_err_rsp_en_s cnf71xx;
 846};
 847
 848union cvmx_dpi_req_err_rst {
 849	uint64_t u64;
 850	struct cvmx_dpi_req_err_rst_s {
 851#ifdef __BIG_ENDIAN_BITFIELD
 852		uint64_t reserved_8_63:56;
 853		uint64_t qerr:8;
 854#else
 855		uint64_t qerr:8;
 856		uint64_t reserved_8_63:56;
 857#endif
 858	} s;
 859	struct cvmx_dpi_req_err_rst_s cn61xx;
 860	struct cvmx_dpi_req_err_rst_s cn63xx;
 861	struct cvmx_dpi_req_err_rst_s cn63xxp1;
 862	struct cvmx_dpi_req_err_rst_s cn66xx;
 863	struct cvmx_dpi_req_err_rst_s cn68xx;
 864	struct cvmx_dpi_req_err_rst_s cn68xxp1;
 865	struct cvmx_dpi_req_err_rst_s cnf71xx;
 866};
 867
 868union cvmx_dpi_req_err_rst_en {
 869	uint64_t u64;
 870	struct cvmx_dpi_req_err_rst_en_s {
 871#ifdef __BIG_ENDIAN_BITFIELD
 872		uint64_t reserved_8_63:56;
 873		uint64_t en:8;
 874#else
 875		uint64_t en:8;
 876		uint64_t reserved_8_63:56;
 877#endif
 878	} s;
 879	struct cvmx_dpi_req_err_rst_en_s cn61xx;
 880	struct cvmx_dpi_req_err_rst_en_s cn63xx;
 881	struct cvmx_dpi_req_err_rst_en_s cn63xxp1;
 882	struct cvmx_dpi_req_err_rst_en_s cn66xx;
 883	struct cvmx_dpi_req_err_rst_en_s cn68xx;
 884	struct cvmx_dpi_req_err_rst_en_s cn68xxp1;
 885	struct cvmx_dpi_req_err_rst_en_s cnf71xx;
 886};
 887
 888union cvmx_dpi_req_err_skip_comp {
 889	uint64_t u64;
 890	struct cvmx_dpi_req_err_skip_comp_s {
 891#ifdef __BIG_ENDIAN_BITFIELD
 892		uint64_t reserved_24_63:40;
 893		uint64_t en_rst:8;
 894		uint64_t reserved_8_15:8;
 895		uint64_t en_rsp:8;
 896#else
 897		uint64_t en_rsp:8;
 898		uint64_t reserved_8_15:8;
 899		uint64_t en_rst:8;
 900		uint64_t reserved_24_63:40;
 901#endif
 902	} s;
 903	struct cvmx_dpi_req_err_skip_comp_s cn61xx;
 904	struct cvmx_dpi_req_err_skip_comp_s cn66xx;
 905	struct cvmx_dpi_req_err_skip_comp_s cn68xx;
 906	struct cvmx_dpi_req_err_skip_comp_s cn68xxp1;
 907	struct cvmx_dpi_req_err_skip_comp_s cnf71xx;
 908};
 909
 910union cvmx_dpi_req_gbl_en {
 911	uint64_t u64;
 912	struct cvmx_dpi_req_gbl_en_s {
 913#ifdef __BIG_ENDIAN_BITFIELD
 914		uint64_t reserved_8_63:56;
 915		uint64_t qen:8;
 916#else
 917		uint64_t qen:8;
 918		uint64_t reserved_8_63:56;
 919#endif
 920	} s;
 921	struct cvmx_dpi_req_gbl_en_s cn61xx;
 922	struct cvmx_dpi_req_gbl_en_s cn63xx;
 923	struct cvmx_dpi_req_gbl_en_s cn63xxp1;
 924	struct cvmx_dpi_req_gbl_en_s cn66xx;
 925	struct cvmx_dpi_req_gbl_en_s cn68xx;
 926	struct cvmx_dpi_req_gbl_en_s cn68xxp1;
 927	struct cvmx_dpi_req_gbl_en_s cnf71xx;
 928};
 929
 930union cvmx_dpi_sli_prtx_cfg {
 931	uint64_t u64;
 932	struct cvmx_dpi_sli_prtx_cfg_s {
 933#ifdef __BIG_ENDIAN_BITFIELD
 934		uint64_t reserved_25_63:39;
 935		uint64_t halt:1;
 936		uint64_t qlm_cfg:4;
 937		uint64_t reserved_17_19:3;
 938		uint64_t rd_mode:1;
 939		uint64_t reserved_14_15:2;
 940		uint64_t molr:6;
 941		uint64_t mps_lim:1;
 942		uint64_t reserved_5_6:2;
 943		uint64_t mps:1;
 944		uint64_t mrrs_lim:1;
 945		uint64_t reserved_2_2:1;
 946		uint64_t mrrs:2;
 947#else
 948		uint64_t mrrs:2;
 949		uint64_t reserved_2_2:1;
 950		uint64_t mrrs_lim:1;
 951		uint64_t mps:1;
 952		uint64_t reserved_5_6:2;
 953		uint64_t mps_lim:1;
 954		uint64_t molr:6;
 955		uint64_t reserved_14_15:2;
 956		uint64_t rd_mode:1;
 957		uint64_t reserved_17_19:3;
 958		uint64_t qlm_cfg:4;
 959		uint64_t halt:1;
 960		uint64_t reserved_25_63:39;
 961#endif
 962	} s;
 963	struct cvmx_dpi_sli_prtx_cfg_s cn61xx;
 964	struct cvmx_dpi_sli_prtx_cfg_cn63xx {
 965#ifdef __BIG_ENDIAN_BITFIELD
 966		uint64_t reserved_25_63:39;
 967		uint64_t halt:1;
 968		uint64_t reserved_21_23:3;
 969		uint64_t qlm_cfg:1;
 970		uint64_t reserved_17_19:3;
 971		uint64_t rd_mode:1;
 972		uint64_t reserved_14_15:2;
 973		uint64_t molr:6;
 974		uint64_t mps_lim:1;
 975		uint64_t reserved_5_6:2;
 976		uint64_t mps:1;
 977		uint64_t mrrs_lim:1;
 978		uint64_t reserved_2_2:1;
 979		uint64_t mrrs:2;
 980#else
 981		uint64_t mrrs:2;
 982		uint64_t reserved_2_2:1;
 983		uint64_t mrrs_lim:1;
 984		uint64_t mps:1;
 985		uint64_t reserved_5_6:2;
 986		uint64_t mps_lim:1;
 987		uint64_t molr:6;
 988		uint64_t reserved_14_15:2;
 989		uint64_t rd_mode:1;
 990		uint64_t reserved_17_19:3;
 991		uint64_t qlm_cfg:1;
 992		uint64_t reserved_21_23:3;
 993		uint64_t halt:1;
 994		uint64_t reserved_25_63:39;
 995#endif
 996	} cn63xx;
 997	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn63xxp1;
 998	struct cvmx_dpi_sli_prtx_cfg_s cn66xx;
 999	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn68xx;
1000	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn68xxp1;
1001	struct cvmx_dpi_sli_prtx_cfg_s cnf71xx;
1002};
1003
1004union cvmx_dpi_sli_prtx_err {
1005	uint64_t u64;
1006	struct cvmx_dpi_sli_prtx_err_s {
1007#ifdef __BIG_ENDIAN_BITFIELD
1008		uint64_t addr:61;
1009		uint64_t reserved_0_2:3;
1010#else
1011		uint64_t reserved_0_2:3;
1012		uint64_t addr:61;
1013#endif
1014	} s;
1015	struct cvmx_dpi_sli_prtx_err_s cn61xx;
1016	struct cvmx_dpi_sli_prtx_err_s cn63xx;
1017	struct cvmx_dpi_sli_prtx_err_s cn63xxp1;
1018	struct cvmx_dpi_sli_prtx_err_s cn66xx;
1019	struct cvmx_dpi_sli_prtx_err_s cn68xx;
1020	struct cvmx_dpi_sli_prtx_err_s cn68xxp1;
1021	struct cvmx_dpi_sli_prtx_err_s cnf71xx;
1022};
1023
1024union cvmx_dpi_sli_prtx_err_info {
1025	uint64_t u64;
1026	struct cvmx_dpi_sli_prtx_err_info_s {
1027#ifdef __BIG_ENDIAN_BITFIELD
1028		uint64_t reserved_9_63:55;
1029		uint64_t lock:1;
1030		uint64_t reserved_5_7:3;
1031		uint64_t type:1;
1032		uint64_t reserved_3_3:1;
1033		uint64_t reqq:3;
1034#else
1035		uint64_t reqq:3;
1036		uint64_t reserved_3_3:1;
1037		uint64_t type:1;
1038		uint64_t reserved_5_7:3;
1039		uint64_t lock:1;
1040		uint64_t reserved_9_63:55;
1041#endif
1042	} s;
1043	struct cvmx_dpi_sli_prtx_err_info_s cn61xx;
1044	struct cvmx_dpi_sli_prtx_err_info_s cn63xx;
1045	struct cvmx_dpi_sli_prtx_err_info_s cn63xxp1;
1046	struct cvmx_dpi_sli_prtx_err_info_s cn66xx;
1047	struct cvmx_dpi_sli_prtx_err_info_s cn68xx;
1048	struct cvmx_dpi_sli_prtx_err_info_s cn68xxp1;
1049	struct cvmx_dpi_sli_prtx_err_info_s cnf71xx;
1050};
1051
1052#endif
v3.5.6
  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-2011 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_DPI_DEFS_H__
 29#define __CVMX_DPI_DEFS_H__
 30
 31#define CVMX_DPI_BIST_STATUS (CVMX_ADD_IO_SEG(0x0001DF0000000000ull))
 32#define CVMX_DPI_CTL (CVMX_ADD_IO_SEG(0x0001DF0000000040ull))
 33#define CVMX_DPI_DMAX_COUNTS(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000300ull) + ((offset) & 7) * 8)
 34#define CVMX_DPI_DMAX_DBELL(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000200ull) + ((offset) & 7) * 8)
 35#define CVMX_DPI_DMAX_ERR_RSP_STATUS(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000A80ull) + ((offset) & 7) * 8)
 36#define CVMX_DPI_DMAX_IBUFF_SADDR(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000280ull) + ((offset) & 7) * 8)
 37#define CVMX_DPI_DMAX_IFLIGHT(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000A00ull) + ((offset) & 7) * 8)
 38#define CVMX_DPI_DMAX_NADDR(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000380ull) + ((offset) & 7) * 8)
 39#define CVMX_DPI_DMAX_REQBNK0(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000400ull) + ((offset) & 7) * 8)
 40#define CVMX_DPI_DMAX_REQBNK1(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000480ull) + ((offset) & 7) * 8)
 41#define CVMX_DPI_DMA_CONTROL (CVMX_ADD_IO_SEG(0x0001DF0000000048ull))
 42#define CVMX_DPI_DMA_ENGX_EN(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000080ull) + ((offset) & 7) * 8)
 43#define CVMX_DPI_DMA_PPX_CNT(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000B00ull) + ((offset) & 31) * 8)
 44#define CVMX_DPI_ENGX_BUF(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000880ull) + ((offset) & 7) * 8)
 45#define CVMX_DPI_INFO_REG (CVMX_ADD_IO_SEG(0x0001DF0000000980ull))
 46#define CVMX_DPI_INT_EN (CVMX_ADD_IO_SEG(0x0001DF0000000010ull))
 47#define CVMX_DPI_INT_REG (CVMX_ADD_IO_SEG(0x0001DF0000000008ull))
 48#define CVMX_DPI_NCBX_CFG(block_id) (CVMX_ADD_IO_SEG(0x0001DF0000000800ull))
 49#define CVMX_DPI_PINT_INFO (CVMX_ADD_IO_SEG(0x0001DF0000000830ull))
 50#define CVMX_DPI_PKT_ERR_RSP (CVMX_ADD_IO_SEG(0x0001DF0000000078ull))
 51#define CVMX_DPI_REQ_ERR_RSP (CVMX_ADD_IO_SEG(0x0001DF0000000058ull))
 52#define CVMX_DPI_REQ_ERR_RSP_EN (CVMX_ADD_IO_SEG(0x0001DF0000000068ull))
 53#define CVMX_DPI_REQ_ERR_RST (CVMX_ADD_IO_SEG(0x0001DF0000000060ull))
 54#define CVMX_DPI_REQ_ERR_RST_EN (CVMX_ADD_IO_SEG(0x0001DF0000000070ull))
 55#define CVMX_DPI_REQ_ERR_SKIP_COMP (CVMX_ADD_IO_SEG(0x0001DF0000000838ull))
 56#define CVMX_DPI_REQ_GBL_EN (CVMX_ADD_IO_SEG(0x0001DF0000000050ull))
 57#define CVMX_DPI_SLI_PRTX_CFG(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000900ull) + ((offset) & 3) * 8)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 58#define CVMX_DPI_SLI_PRTX_ERR_INFO(offset) (CVMX_ADD_IO_SEG(0x0001DF0000000940ull) + ((offset) & 3) * 8)
 59
 60union cvmx_dpi_bist_status {
 61	uint64_t u64;
 62	struct cvmx_dpi_bist_status_s {
 
 63		uint64_t reserved_47_63:17;
 64		uint64_t bist:47;
 
 
 
 
 65	} s;
 66	struct cvmx_dpi_bist_status_s cn61xx;
 67	struct cvmx_dpi_bist_status_cn63xx {
 
 68		uint64_t reserved_45_63:19;
 69		uint64_t bist:45;
 
 
 
 
 70	} cn63xx;
 71	struct cvmx_dpi_bist_status_cn63xxp1 {
 
 72		uint64_t reserved_37_63:27;
 73		uint64_t bist:37;
 
 
 
 
 74	} cn63xxp1;
 75	struct cvmx_dpi_bist_status_s cn66xx;
 76	struct cvmx_dpi_bist_status_cn63xx cn68xx;
 77	struct cvmx_dpi_bist_status_cn63xx cn68xxp1;
 
 78};
 79
 80union cvmx_dpi_ctl {
 81	uint64_t u64;
 82	struct cvmx_dpi_ctl_s {
 
 83		uint64_t reserved_2_63:62;
 84		uint64_t clk:1;
 85		uint64_t en:1;
 
 
 
 
 
 86	} s;
 87	struct cvmx_dpi_ctl_cn61xx {
 
 88		uint64_t reserved_1_63:63;
 89		uint64_t en:1;
 
 
 
 
 90	} cn61xx;
 91	struct cvmx_dpi_ctl_s cn63xx;
 92	struct cvmx_dpi_ctl_s cn63xxp1;
 93	struct cvmx_dpi_ctl_s cn66xx;
 94	struct cvmx_dpi_ctl_s cn68xx;
 95	struct cvmx_dpi_ctl_s cn68xxp1;
 
 96};
 97
 98union cvmx_dpi_dmax_counts {
 99	uint64_t u64;
100	struct cvmx_dpi_dmax_counts_s {
 
101		uint64_t reserved_39_63:25;
102		uint64_t fcnt:7;
103		uint64_t dbell:32;
 
 
 
 
 
104	} s;
105	struct cvmx_dpi_dmax_counts_s cn61xx;
106	struct cvmx_dpi_dmax_counts_s cn63xx;
107	struct cvmx_dpi_dmax_counts_s cn63xxp1;
108	struct cvmx_dpi_dmax_counts_s cn66xx;
109	struct cvmx_dpi_dmax_counts_s cn68xx;
110	struct cvmx_dpi_dmax_counts_s cn68xxp1;
 
111};
112
113union cvmx_dpi_dmax_dbell {
114	uint64_t u64;
115	struct cvmx_dpi_dmax_dbell_s {
 
116		uint64_t reserved_16_63:48;
117		uint64_t dbell:16;
 
 
 
 
118	} s;
119	struct cvmx_dpi_dmax_dbell_s cn61xx;
120	struct cvmx_dpi_dmax_dbell_s cn63xx;
121	struct cvmx_dpi_dmax_dbell_s cn63xxp1;
122	struct cvmx_dpi_dmax_dbell_s cn66xx;
123	struct cvmx_dpi_dmax_dbell_s cn68xx;
124	struct cvmx_dpi_dmax_dbell_s cn68xxp1;
 
125};
126
127union cvmx_dpi_dmax_err_rsp_status {
128	uint64_t u64;
129	struct cvmx_dpi_dmax_err_rsp_status_s {
 
130		uint64_t reserved_6_63:58;
131		uint64_t status:6;
 
 
 
 
132	} s;
133	struct cvmx_dpi_dmax_err_rsp_status_s cn61xx;
134	struct cvmx_dpi_dmax_err_rsp_status_s cn66xx;
135	struct cvmx_dpi_dmax_err_rsp_status_s cn68xx;
136	struct cvmx_dpi_dmax_err_rsp_status_s cn68xxp1;
 
137};
138
139union cvmx_dpi_dmax_ibuff_saddr {
140	uint64_t u64;
141	struct cvmx_dpi_dmax_ibuff_saddr_s {
 
142		uint64_t reserved_62_63:2;
143		uint64_t csize:14;
144		uint64_t reserved_41_47:7;
145		uint64_t idle:1;
146		uint64_t saddr:33;
147		uint64_t reserved_0_6:7;
 
 
 
 
 
 
 
 
148	} s;
149	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx {
 
150		uint64_t reserved_62_63:2;
151		uint64_t csize:14;
152		uint64_t reserved_41_47:7;
153		uint64_t idle:1;
154		uint64_t reserved_36_39:4;
155		uint64_t saddr:29;
156		uint64_t reserved_0_6:7;
 
 
 
 
 
 
 
 
 
157	} cn61xx;
158	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn63xx;
159	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn63xxp1;
160	struct cvmx_dpi_dmax_ibuff_saddr_cn61xx cn66xx;
161	struct cvmx_dpi_dmax_ibuff_saddr_s cn68xx;
162	struct cvmx_dpi_dmax_ibuff_saddr_s cn68xxp1;
 
163};
164
165union cvmx_dpi_dmax_iflight {
166	uint64_t u64;
167	struct cvmx_dpi_dmax_iflight_s {
 
168		uint64_t reserved_3_63:61;
169		uint64_t cnt:3;
 
 
 
 
170	} s;
171	struct cvmx_dpi_dmax_iflight_s cn61xx;
172	struct cvmx_dpi_dmax_iflight_s cn66xx;
173	struct cvmx_dpi_dmax_iflight_s cn68xx;
174	struct cvmx_dpi_dmax_iflight_s cn68xxp1;
 
175};
176
177union cvmx_dpi_dmax_naddr {
178	uint64_t u64;
179	struct cvmx_dpi_dmax_naddr_s {
 
180		uint64_t reserved_40_63:24;
181		uint64_t addr:40;
 
 
 
 
182	} s;
183	struct cvmx_dpi_dmax_naddr_cn61xx {
 
184		uint64_t reserved_36_63:28;
185		uint64_t addr:36;
 
 
 
 
186	} cn61xx;
187	struct cvmx_dpi_dmax_naddr_cn61xx cn63xx;
188	struct cvmx_dpi_dmax_naddr_cn61xx cn63xxp1;
189	struct cvmx_dpi_dmax_naddr_cn61xx cn66xx;
190	struct cvmx_dpi_dmax_naddr_s cn68xx;
191	struct cvmx_dpi_dmax_naddr_s cn68xxp1;
 
192};
193
194union cvmx_dpi_dmax_reqbnk0 {
195	uint64_t u64;
196	struct cvmx_dpi_dmax_reqbnk0_s {
 
197		uint64_t state:64;
 
 
 
198	} s;
199	struct cvmx_dpi_dmax_reqbnk0_s cn61xx;
200	struct cvmx_dpi_dmax_reqbnk0_s cn63xx;
201	struct cvmx_dpi_dmax_reqbnk0_s cn63xxp1;
202	struct cvmx_dpi_dmax_reqbnk0_s cn66xx;
203	struct cvmx_dpi_dmax_reqbnk0_s cn68xx;
204	struct cvmx_dpi_dmax_reqbnk0_s cn68xxp1;
 
205};
206
207union cvmx_dpi_dmax_reqbnk1 {
208	uint64_t u64;
209	struct cvmx_dpi_dmax_reqbnk1_s {
 
 
 
210		uint64_t state:64;
 
211	} s;
212	struct cvmx_dpi_dmax_reqbnk1_s cn61xx;
213	struct cvmx_dpi_dmax_reqbnk1_s cn63xx;
214	struct cvmx_dpi_dmax_reqbnk1_s cn63xxp1;
215	struct cvmx_dpi_dmax_reqbnk1_s cn66xx;
216	struct cvmx_dpi_dmax_reqbnk1_s cn68xx;
217	struct cvmx_dpi_dmax_reqbnk1_s cn68xxp1;
 
218};
219
220union cvmx_dpi_dma_control {
221	uint64_t u64;
222	struct cvmx_dpi_dma_control_s {
 
223		uint64_t reserved_62_63:2;
224		uint64_t dici_mode:1;
225		uint64_t pkt_en1:1;
226		uint64_t ffp_dis:1;
227		uint64_t commit_mode:1;
228		uint64_t pkt_hp:1;
229		uint64_t pkt_en:1;
230		uint64_t reserved_54_55:2;
231		uint64_t dma_enb:6;
232		uint64_t reserved_34_47:14;
233		uint64_t b0_lend:1;
234		uint64_t dwb_denb:1;
235		uint64_t dwb_ichk:9;
236		uint64_t fpa_que:3;
237		uint64_t o_add1:1;
238		uint64_t o_ro:1;
239		uint64_t o_ns:1;
240		uint64_t o_es:2;
241		uint64_t o_mode:1;
242		uint64_t reserved_0_13:14;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
243	} s;
244	struct cvmx_dpi_dma_control_s cn61xx;
245	struct cvmx_dpi_dma_control_cn63xx {
 
246		uint64_t reserved_61_63:3;
247		uint64_t pkt_en1:1;
248		uint64_t ffp_dis:1;
249		uint64_t commit_mode:1;
250		uint64_t pkt_hp:1;
251		uint64_t pkt_en:1;
252		uint64_t reserved_54_55:2;
253		uint64_t dma_enb:6;
254		uint64_t reserved_34_47:14;
255		uint64_t b0_lend:1;
256		uint64_t dwb_denb:1;
257		uint64_t dwb_ichk:9;
258		uint64_t fpa_que:3;
259		uint64_t o_add1:1;
260		uint64_t o_ro:1;
261		uint64_t o_ns:1;
262		uint64_t o_es:2;
263		uint64_t o_mode:1;
264		uint64_t reserved_0_13:14;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
265	} cn63xx;
266	struct cvmx_dpi_dma_control_cn63xxp1 {
 
267		uint64_t reserved_59_63:5;
268		uint64_t commit_mode:1;
269		uint64_t pkt_hp:1;
270		uint64_t pkt_en:1;
271		uint64_t reserved_54_55:2;
272		uint64_t dma_enb:6;
273		uint64_t reserved_34_47:14;
274		uint64_t b0_lend:1;
275		uint64_t dwb_denb:1;
276		uint64_t dwb_ichk:9;
277		uint64_t fpa_que:3;
278		uint64_t o_add1:1;
279		uint64_t o_ro:1;
280		uint64_t o_ns:1;
281		uint64_t o_es:2;
282		uint64_t o_mode:1;
283		uint64_t reserved_0_13:14;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
284	} cn63xxp1;
285	struct cvmx_dpi_dma_control_cn63xx cn66xx;
286	struct cvmx_dpi_dma_control_s cn68xx;
287	struct cvmx_dpi_dma_control_cn63xx cn68xxp1;
 
288};
289
290union cvmx_dpi_dma_engx_en {
291	uint64_t u64;
292	struct cvmx_dpi_dma_engx_en_s {
 
293		uint64_t reserved_8_63:56;
294		uint64_t qen:8;
 
 
 
 
295	} s;
296	struct cvmx_dpi_dma_engx_en_s cn61xx;
297	struct cvmx_dpi_dma_engx_en_s cn63xx;
298	struct cvmx_dpi_dma_engx_en_s cn63xxp1;
299	struct cvmx_dpi_dma_engx_en_s cn66xx;
300	struct cvmx_dpi_dma_engx_en_s cn68xx;
301	struct cvmx_dpi_dma_engx_en_s cn68xxp1;
 
302};
303
304union cvmx_dpi_dma_ppx_cnt {
305	uint64_t u64;
306	struct cvmx_dpi_dma_ppx_cnt_s {
 
307		uint64_t reserved_16_63:48;
308		uint64_t cnt:16;
 
 
 
 
309	} s;
310	struct cvmx_dpi_dma_ppx_cnt_s cn61xx;
311	struct cvmx_dpi_dma_ppx_cnt_s cn68xx;
 
312};
313
314union cvmx_dpi_engx_buf {
315	uint64_t u64;
316	struct cvmx_dpi_engx_buf_s {
 
317		uint64_t reserved_37_63:27;
318		uint64_t compblks:5;
319		uint64_t reserved_9_31:23;
320		uint64_t base:5;
321		uint64_t blks:4;
 
 
 
 
 
 
 
322	} s;
323	struct cvmx_dpi_engx_buf_s cn61xx;
324	struct cvmx_dpi_engx_buf_cn63xx {
 
325		uint64_t reserved_8_63:56;
326		uint64_t base:4;
327		uint64_t blks:4;
 
 
 
 
 
328	} cn63xx;
329	struct cvmx_dpi_engx_buf_cn63xx cn63xxp1;
330	struct cvmx_dpi_engx_buf_s cn66xx;
331	struct cvmx_dpi_engx_buf_s cn68xx;
332	struct cvmx_dpi_engx_buf_s cn68xxp1;
 
333};
334
335union cvmx_dpi_info_reg {
336	uint64_t u64;
337	struct cvmx_dpi_info_reg_s {
 
338		uint64_t reserved_8_63:56;
339		uint64_t ffp:4;
340		uint64_t reserved_2_3:2;
341		uint64_t ncb:1;
342		uint64_t rsl:1;
 
 
 
 
 
 
 
343	} s;
344	struct cvmx_dpi_info_reg_s cn61xx;
345	struct cvmx_dpi_info_reg_s cn63xx;
346	struct cvmx_dpi_info_reg_cn63xxp1 {
 
347		uint64_t reserved_2_63:62;
348		uint64_t ncb:1;
349		uint64_t rsl:1;
 
 
 
 
 
350	} cn63xxp1;
351	struct cvmx_dpi_info_reg_s cn66xx;
352	struct cvmx_dpi_info_reg_s cn68xx;
353	struct cvmx_dpi_info_reg_s cn68xxp1;
 
354};
355
356union cvmx_dpi_int_en {
357	uint64_t u64;
358	struct cvmx_dpi_int_en_s {
 
359		uint64_t reserved_28_63:36;
360		uint64_t sprt3_rst:1;
361		uint64_t sprt2_rst:1;
362		uint64_t sprt1_rst:1;
363		uint64_t sprt0_rst:1;
364		uint64_t reserved_23_23:1;
365		uint64_t req_badfil:1;
366		uint64_t req_inull:1;
367		uint64_t req_anull:1;
368		uint64_t req_undflw:1;
369		uint64_t req_ovrflw:1;
370		uint64_t req_badlen:1;
371		uint64_t req_badadr:1;
372		uint64_t dmadbo:8;
373		uint64_t reserved_2_7:6;
374		uint64_t nfovr:1;
375		uint64_t nderr:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
376	} s;
377	struct cvmx_dpi_int_en_s cn61xx;
378	struct cvmx_dpi_int_en_cn63xx {
 
379		uint64_t reserved_26_63:38;
380		uint64_t sprt1_rst:1;
381		uint64_t sprt0_rst:1;
382		uint64_t reserved_23_23:1;
383		uint64_t req_badfil:1;
384		uint64_t req_inull:1;
385		uint64_t req_anull:1;
386		uint64_t req_undflw:1;
387		uint64_t req_ovrflw:1;
388		uint64_t req_badlen:1;
389		uint64_t req_badadr:1;
390		uint64_t dmadbo:8;
391		uint64_t reserved_2_7:6;
392		uint64_t nfovr:1;
393		uint64_t nderr:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
394	} cn63xx;
395	struct cvmx_dpi_int_en_cn63xx cn63xxp1;
396	struct cvmx_dpi_int_en_s cn66xx;
397	struct cvmx_dpi_int_en_cn63xx cn68xx;
398	struct cvmx_dpi_int_en_cn63xx cn68xxp1;
 
399};
400
401union cvmx_dpi_int_reg {
402	uint64_t u64;
403	struct cvmx_dpi_int_reg_s {
 
404		uint64_t reserved_28_63:36;
405		uint64_t sprt3_rst:1;
406		uint64_t sprt2_rst:1;
407		uint64_t sprt1_rst:1;
408		uint64_t sprt0_rst:1;
409		uint64_t reserved_23_23:1;
410		uint64_t req_badfil:1;
411		uint64_t req_inull:1;
412		uint64_t req_anull:1;
413		uint64_t req_undflw:1;
414		uint64_t req_ovrflw:1;
415		uint64_t req_badlen:1;
416		uint64_t req_badadr:1;
417		uint64_t dmadbo:8;
418		uint64_t reserved_2_7:6;
419		uint64_t nfovr:1;
420		uint64_t nderr:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
421	} s;
422	struct cvmx_dpi_int_reg_s cn61xx;
423	struct cvmx_dpi_int_reg_cn63xx {
 
424		uint64_t reserved_26_63:38;
425		uint64_t sprt1_rst:1;
426		uint64_t sprt0_rst:1;
427		uint64_t reserved_23_23:1;
428		uint64_t req_badfil:1;
429		uint64_t req_inull:1;
430		uint64_t req_anull:1;
431		uint64_t req_undflw:1;
432		uint64_t req_ovrflw:1;
433		uint64_t req_badlen:1;
434		uint64_t req_badadr:1;
435		uint64_t dmadbo:8;
436		uint64_t reserved_2_7:6;
437		uint64_t nfovr:1;
438		uint64_t nderr:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
439	} cn63xx;
440	struct cvmx_dpi_int_reg_cn63xx cn63xxp1;
441	struct cvmx_dpi_int_reg_s cn66xx;
442	struct cvmx_dpi_int_reg_cn63xx cn68xx;
443	struct cvmx_dpi_int_reg_cn63xx cn68xxp1;
 
444};
445
446union cvmx_dpi_ncbx_cfg {
447	uint64_t u64;
448	struct cvmx_dpi_ncbx_cfg_s {
 
449		uint64_t reserved_6_63:58;
450		uint64_t molr:6;
 
 
 
 
451	} s;
452	struct cvmx_dpi_ncbx_cfg_s cn61xx;
453	struct cvmx_dpi_ncbx_cfg_s cn66xx;
454	struct cvmx_dpi_ncbx_cfg_s cn68xx;
 
455};
456
457union cvmx_dpi_pint_info {
458	uint64_t u64;
459	struct cvmx_dpi_pint_info_s {
 
460		uint64_t reserved_14_63:50;
461		uint64_t iinfo:6;
462		uint64_t reserved_6_7:2;
463		uint64_t sinfo:6;
 
 
 
 
 
 
464	} s;
465	struct cvmx_dpi_pint_info_s cn61xx;
466	struct cvmx_dpi_pint_info_s cn63xx;
467	struct cvmx_dpi_pint_info_s cn63xxp1;
468	struct cvmx_dpi_pint_info_s cn66xx;
469	struct cvmx_dpi_pint_info_s cn68xx;
470	struct cvmx_dpi_pint_info_s cn68xxp1;
 
471};
472
473union cvmx_dpi_pkt_err_rsp {
474	uint64_t u64;
475	struct cvmx_dpi_pkt_err_rsp_s {
 
476		uint64_t reserved_1_63:63;
477		uint64_t pkterr:1;
 
 
 
 
478	} s;
479	struct cvmx_dpi_pkt_err_rsp_s cn61xx;
480	struct cvmx_dpi_pkt_err_rsp_s cn63xx;
481	struct cvmx_dpi_pkt_err_rsp_s cn63xxp1;
482	struct cvmx_dpi_pkt_err_rsp_s cn66xx;
483	struct cvmx_dpi_pkt_err_rsp_s cn68xx;
484	struct cvmx_dpi_pkt_err_rsp_s cn68xxp1;
 
485};
486
487union cvmx_dpi_req_err_rsp {
488	uint64_t u64;
489	struct cvmx_dpi_req_err_rsp_s {
 
490		uint64_t reserved_8_63:56;
491		uint64_t qerr:8;
 
 
 
 
492	} s;
493	struct cvmx_dpi_req_err_rsp_s cn61xx;
494	struct cvmx_dpi_req_err_rsp_s cn63xx;
495	struct cvmx_dpi_req_err_rsp_s cn63xxp1;
496	struct cvmx_dpi_req_err_rsp_s cn66xx;
497	struct cvmx_dpi_req_err_rsp_s cn68xx;
498	struct cvmx_dpi_req_err_rsp_s cn68xxp1;
 
499};
500
501union cvmx_dpi_req_err_rsp_en {
502	uint64_t u64;
503	struct cvmx_dpi_req_err_rsp_en_s {
 
504		uint64_t reserved_8_63:56;
505		uint64_t en:8;
 
 
 
 
506	} s;
507	struct cvmx_dpi_req_err_rsp_en_s cn61xx;
508	struct cvmx_dpi_req_err_rsp_en_s cn63xx;
509	struct cvmx_dpi_req_err_rsp_en_s cn63xxp1;
510	struct cvmx_dpi_req_err_rsp_en_s cn66xx;
511	struct cvmx_dpi_req_err_rsp_en_s cn68xx;
512	struct cvmx_dpi_req_err_rsp_en_s cn68xxp1;
 
513};
514
515union cvmx_dpi_req_err_rst {
516	uint64_t u64;
517	struct cvmx_dpi_req_err_rst_s {
 
518		uint64_t reserved_8_63:56;
519		uint64_t qerr:8;
 
 
 
 
520	} s;
521	struct cvmx_dpi_req_err_rst_s cn61xx;
522	struct cvmx_dpi_req_err_rst_s cn63xx;
523	struct cvmx_dpi_req_err_rst_s cn63xxp1;
524	struct cvmx_dpi_req_err_rst_s cn66xx;
525	struct cvmx_dpi_req_err_rst_s cn68xx;
526	struct cvmx_dpi_req_err_rst_s cn68xxp1;
 
527};
528
529union cvmx_dpi_req_err_rst_en {
530	uint64_t u64;
531	struct cvmx_dpi_req_err_rst_en_s {
 
532		uint64_t reserved_8_63:56;
533		uint64_t en:8;
 
 
 
 
534	} s;
535	struct cvmx_dpi_req_err_rst_en_s cn61xx;
536	struct cvmx_dpi_req_err_rst_en_s cn63xx;
537	struct cvmx_dpi_req_err_rst_en_s cn63xxp1;
538	struct cvmx_dpi_req_err_rst_en_s cn66xx;
539	struct cvmx_dpi_req_err_rst_en_s cn68xx;
540	struct cvmx_dpi_req_err_rst_en_s cn68xxp1;
 
541};
542
543union cvmx_dpi_req_err_skip_comp {
544	uint64_t u64;
545	struct cvmx_dpi_req_err_skip_comp_s {
 
546		uint64_t reserved_24_63:40;
547		uint64_t en_rst:8;
548		uint64_t reserved_8_15:8;
549		uint64_t en_rsp:8;
 
 
 
 
 
 
550	} s;
551	struct cvmx_dpi_req_err_skip_comp_s cn61xx;
552	struct cvmx_dpi_req_err_skip_comp_s cn66xx;
553	struct cvmx_dpi_req_err_skip_comp_s cn68xx;
554	struct cvmx_dpi_req_err_skip_comp_s cn68xxp1;
 
555};
556
557union cvmx_dpi_req_gbl_en {
558	uint64_t u64;
559	struct cvmx_dpi_req_gbl_en_s {
 
560		uint64_t reserved_8_63:56;
561		uint64_t qen:8;
 
 
 
 
562	} s;
563	struct cvmx_dpi_req_gbl_en_s cn61xx;
564	struct cvmx_dpi_req_gbl_en_s cn63xx;
565	struct cvmx_dpi_req_gbl_en_s cn63xxp1;
566	struct cvmx_dpi_req_gbl_en_s cn66xx;
567	struct cvmx_dpi_req_gbl_en_s cn68xx;
568	struct cvmx_dpi_req_gbl_en_s cn68xxp1;
 
569};
570
571union cvmx_dpi_sli_prtx_cfg {
572	uint64_t u64;
573	struct cvmx_dpi_sli_prtx_cfg_s {
 
574		uint64_t reserved_25_63:39;
575		uint64_t halt:1;
576		uint64_t qlm_cfg:4;
577		uint64_t reserved_17_19:3;
578		uint64_t rd_mode:1;
579		uint64_t reserved_14_15:2;
580		uint64_t molr:6;
581		uint64_t mps_lim:1;
582		uint64_t reserved_5_6:2;
583		uint64_t mps:1;
584		uint64_t mrrs_lim:1;
585		uint64_t reserved_2_2:1;
586		uint64_t mrrs:2;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
587	} s;
588	struct cvmx_dpi_sli_prtx_cfg_s cn61xx;
589	struct cvmx_dpi_sli_prtx_cfg_cn63xx {
 
590		uint64_t reserved_25_63:39;
591		uint64_t halt:1;
592		uint64_t reserved_21_23:3;
593		uint64_t qlm_cfg:1;
594		uint64_t reserved_17_19:3;
595		uint64_t rd_mode:1;
596		uint64_t reserved_14_15:2;
597		uint64_t molr:6;
598		uint64_t mps_lim:1;
599		uint64_t reserved_5_6:2;
600		uint64_t mps:1;
601		uint64_t mrrs_lim:1;
602		uint64_t reserved_2_2:1;
603		uint64_t mrrs:2;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
604	} cn63xx;
605	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn63xxp1;
606	struct cvmx_dpi_sli_prtx_cfg_s cn66xx;
607	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn68xx;
608	struct cvmx_dpi_sli_prtx_cfg_cn63xx cn68xxp1;
 
609};
610
611union cvmx_dpi_sli_prtx_err {
612	uint64_t u64;
613	struct cvmx_dpi_sli_prtx_err_s {
 
614		uint64_t addr:61;
615		uint64_t reserved_0_2:3;
 
 
 
 
616	} s;
617	struct cvmx_dpi_sli_prtx_err_s cn61xx;
618	struct cvmx_dpi_sli_prtx_err_s cn63xx;
619	struct cvmx_dpi_sli_prtx_err_s cn63xxp1;
620	struct cvmx_dpi_sli_prtx_err_s cn66xx;
621	struct cvmx_dpi_sli_prtx_err_s cn68xx;
622	struct cvmx_dpi_sli_prtx_err_s cn68xxp1;
 
623};
624
625union cvmx_dpi_sli_prtx_err_info {
626	uint64_t u64;
627	struct cvmx_dpi_sli_prtx_err_info_s {
 
628		uint64_t reserved_9_63:55;
629		uint64_t lock:1;
630		uint64_t reserved_5_7:3;
631		uint64_t type:1;
632		uint64_t reserved_3_3:1;
633		uint64_t reqq:3;
 
 
 
 
 
 
 
 
634	} s;
635	struct cvmx_dpi_sli_prtx_err_info_s cn61xx;
636	struct cvmx_dpi_sli_prtx_err_info_s cn63xx;
637	struct cvmx_dpi_sli_prtx_err_info_s cn63xxp1;
638	struct cvmx_dpi_sli_prtx_err_info_s cn66xx;
639	struct cvmx_dpi_sli_prtx_err_info_s cn68xx;
640	struct cvmx_dpi_sli_prtx_err_info_s cn68xxp1;
 
641};
642
643#endif