Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
   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_PKO_DEFS_H__
  29#define __CVMX_PKO_DEFS_H__
  30
  31#define CVMX_PKO_MEM_COUNT0 (CVMX_ADD_IO_SEG(0x0001180050001080ull))
  32#define CVMX_PKO_MEM_COUNT1 (CVMX_ADD_IO_SEG(0x0001180050001088ull))
  33#define CVMX_PKO_MEM_DEBUG0 (CVMX_ADD_IO_SEG(0x0001180050001100ull))
  34#define CVMX_PKO_MEM_DEBUG1 (CVMX_ADD_IO_SEG(0x0001180050001108ull))
  35#define CVMX_PKO_MEM_DEBUG10 (CVMX_ADD_IO_SEG(0x0001180050001150ull))
  36#define CVMX_PKO_MEM_DEBUG11 (CVMX_ADD_IO_SEG(0x0001180050001158ull))
  37#define CVMX_PKO_MEM_DEBUG12 (CVMX_ADD_IO_SEG(0x0001180050001160ull))
  38#define CVMX_PKO_MEM_DEBUG13 (CVMX_ADD_IO_SEG(0x0001180050001168ull))
  39#define CVMX_PKO_MEM_DEBUG14 (CVMX_ADD_IO_SEG(0x0001180050001170ull))
  40#define CVMX_PKO_MEM_DEBUG2 (CVMX_ADD_IO_SEG(0x0001180050001110ull))
  41#define CVMX_PKO_MEM_DEBUG3 (CVMX_ADD_IO_SEG(0x0001180050001118ull))
  42#define CVMX_PKO_MEM_DEBUG4 (CVMX_ADD_IO_SEG(0x0001180050001120ull))
  43#define CVMX_PKO_MEM_DEBUG5 (CVMX_ADD_IO_SEG(0x0001180050001128ull))
  44#define CVMX_PKO_MEM_DEBUG6 (CVMX_ADD_IO_SEG(0x0001180050001130ull))
  45#define CVMX_PKO_MEM_DEBUG7 (CVMX_ADD_IO_SEG(0x0001180050001138ull))
  46#define CVMX_PKO_MEM_DEBUG8 (CVMX_ADD_IO_SEG(0x0001180050001140ull))
  47#define CVMX_PKO_MEM_DEBUG9 (CVMX_ADD_IO_SEG(0x0001180050001148ull))
  48#define CVMX_PKO_MEM_IPORT_PTRS (CVMX_ADD_IO_SEG(0x0001180050001030ull))
  49#define CVMX_PKO_MEM_IPORT_QOS (CVMX_ADD_IO_SEG(0x0001180050001038ull))
  50#define CVMX_PKO_MEM_IQUEUE_PTRS (CVMX_ADD_IO_SEG(0x0001180050001040ull))
  51#define CVMX_PKO_MEM_IQUEUE_QOS (CVMX_ADD_IO_SEG(0x0001180050001048ull))
  52#define CVMX_PKO_MEM_PORT_PTRS (CVMX_ADD_IO_SEG(0x0001180050001010ull))
  53#define CVMX_PKO_MEM_PORT_QOS (CVMX_ADD_IO_SEG(0x0001180050001018ull))
  54#define CVMX_PKO_MEM_PORT_RATE0 (CVMX_ADD_IO_SEG(0x0001180050001020ull))
  55#define CVMX_PKO_MEM_PORT_RATE1 (CVMX_ADD_IO_SEG(0x0001180050001028ull))
  56#define CVMX_PKO_MEM_QUEUE_PTRS (CVMX_ADD_IO_SEG(0x0001180050001000ull))
  57#define CVMX_PKO_MEM_QUEUE_QOS (CVMX_ADD_IO_SEG(0x0001180050001008ull))
  58#define CVMX_PKO_MEM_THROTTLE_INT (CVMX_ADD_IO_SEG(0x0001180050001058ull))
  59#define CVMX_PKO_MEM_THROTTLE_PIPE (CVMX_ADD_IO_SEG(0x0001180050001050ull))
  60#define CVMX_PKO_REG_BIST_RESULT (CVMX_ADD_IO_SEG(0x0001180050000080ull))
  61#define CVMX_PKO_REG_CMD_BUF (CVMX_ADD_IO_SEG(0x0001180050000010ull))
  62#define CVMX_PKO_REG_CRC_CTLX(offset) (CVMX_ADD_IO_SEG(0x0001180050000028ull) + ((offset) & 1) * 8)
  63#define CVMX_PKO_REG_CRC_ENABLE (CVMX_ADD_IO_SEG(0x0001180050000020ull))
  64#define CVMX_PKO_REG_CRC_IVX(offset) (CVMX_ADD_IO_SEG(0x0001180050000038ull) + ((offset) & 1) * 8)
  65#define CVMX_PKO_REG_DEBUG0 (CVMX_ADD_IO_SEG(0x0001180050000098ull))
  66#define CVMX_PKO_REG_DEBUG1 (CVMX_ADD_IO_SEG(0x00011800500000A0ull))
  67#define CVMX_PKO_REG_DEBUG2 (CVMX_ADD_IO_SEG(0x00011800500000A8ull))
  68#define CVMX_PKO_REG_DEBUG3 (CVMX_ADD_IO_SEG(0x00011800500000B0ull))
  69#define CVMX_PKO_REG_DEBUG4 (CVMX_ADD_IO_SEG(0x00011800500000B8ull))
  70#define CVMX_PKO_REG_ENGINE_INFLIGHT (CVMX_ADD_IO_SEG(0x0001180050000050ull))
  71#define CVMX_PKO_REG_ENGINE_INFLIGHT1 (CVMX_ADD_IO_SEG(0x0001180050000318ull))
  72#define CVMX_PKO_REG_ENGINE_STORAGEX(offset) (CVMX_ADD_IO_SEG(0x0001180050000300ull) + ((offset) & 1) * 8)
  73#define CVMX_PKO_REG_ENGINE_THRESH (CVMX_ADD_IO_SEG(0x0001180050000058ull))
  74#define CVMX_PKO_REG_ERROR (CVMX_ADD_IO_SEG(0x0001180050000088ull))
  75#define CVMX_PKO_REG_FLAGS (CVMX_ADD_IO_SEG(0x0001180050000000ull))
  76#define CVMX_PKO_REG_GMX_PORT_MODE (CVMX_ADD_IO_SEG(0x0001180050000018ull))
  77#define CVMX_PKO_REG_INT_MASK (CVMX_ADD_IO_SEG(0x0001180050000090ull))
  78#define CVMX_PKO_REG_LOOPBACK_BPID (CVMX_ADD_IO_SEG(0x0001180050000118ull))
  79#define CVMX_PKO_REG_LOOPBACK_PKIND (CVMX_ADD_IO_SEG(0x0001180050000068ull))
  80#define CVMX_PKO_REG_MIN_PKT (CVMX_ADD_IO_SEG(0x0001180050000070ull))
  81#define CVMX_PKO_REG_PREEMPT (CVMX_ADD_IO_SEG(0x0001180050000110ull))
  82#define CVMX_PKO_REG_QUEUE_MODE (CVMX_ADD_IO_SEG(0x0001180050000048ull))
  83#define CVMX_PKO_REG_QUEUE_PREEMPT (CVMX_ADD_IO_SEG(0x0001180050000108ull))
  84#define CVMX_PKO_REG_QUEUE_PTRS1 (CVMX_ADD_IO_SEG(0x0001180050000100ull))
  85#define CVMX_PKO_REG_READ_IDX (CVMX_ADD_IO_SEG(0x0001180050000008ull))
  86#define CVMX_PKO_REG_THROTTLE (CVMX_ADD_IO_SEG(0x0001180050000078ull))
  87#define CVMX_PKO_REG_TIMESTAMP (CVMX_ADD_IO_SEG(0x0001180050000060ull))
  88
  89union cvmx_pko_mem_count0 {
  90	uint64_t u64;
  91	struct cvmx_pko_mem_count0_s {
  92#ifdef __BIG_ENDIAN_BITFIELD
  93		uint64_t reserved_32_63:32;
  94		uint64_t count:32;
  95#else
  96		uint64_t count:32;
  97		uint64_t reserved_32_63:32;
  98#endif
  99	} s;
 100	struct cvmx_pko_mem_count0_s cn30xx;
 101	struct cvmx_pko_mem_count0_s cn31xx;
 102	struct cvmx_pko_mem_count0_s cn38xx;
 103	struct cvmx_pko_mem_count0_s cn38xxp2;
 104	struct cvmx_pko_mem_count0_s cn50xx;
 105	struct cvmx_pko_mem_count0_s cn52xx;
 106	struct cvmx_pko_mem_count0_s cn52xxp1;
 107	struct cvmx_pko_mem_count0_s cn56xx;
 108	struct cvmx_pko_mem_count0_s cn56xxp1;
 109	struct cvmx_pko_mem_count0_s cn58xx;
 110	struct cvmx_pko_mem_count0_s cn58xxp1;
 111	struct cvmx_pko_mem_count0_s cn61xx;
 112	struct cvmx_pko_mem_count0_s cn63xx;
 113	struct cvmx_pko_mem_count0_s cn63xxp1;
 114	struct cvmx_pko_mem_count0_s cn66xx;
 115	struct cvmx_pko_mem_count0_s cn68xx;
 116	struct cvmx_pko_mem_count0_s cn68xxp1;
 117	struct cvmx_pko_mem_count0_s cnf71xx;
 118};
 119
 120union cvmx_pko_mem_count1 {
 121	uint64_t u64;
 122	struct cvmx_pko_mem_count1_s {
 123#ifdef __BIG_ENDIAN_BITFIELD
 124		uint64_t reserved_48_63:16;
 125		uint64_t count:48;
 126#else
 127		uint64_t count:48;
 128		uint64_t reserved_48_63:16;
 129#endif
 130	} s;
 131	struct cvmx_pko_mem_count1_s cn30xx;
 132	struct cvmx_pko_mem_count1_s cn31xx;
 133	struct cvmx_pko_mem_count1_s cn38xx;
 134	struct cvmx_pko_mem_count1_s cn38xxp2;
 135	struct cvmx_pko_mem_count1_s cn50xx;
 136	struct cvmx_pko_mem_count1_s cn52xx;
 137	struct cvmx_pko_mem_count1_s cn52xxp1;
 138	struct cvmx_pko_mem_count1_s cn56xx;
 139	struct cvmx_pko_mem_count1_s cn56xxp1;
 140	struct cvmx_pko_mem_count1_s cn58xx;
 141	struct cvmx_pko_mem_count1_s cn58xxp1;
 142	struct cvmx_pko_mem_count1_s cn61xx;
 143	struct cvmx_pko_mem_count1_s cn63xx;
 144	struct cvmx_pko_mem_count1_s cn63xxp1;
 145	struct cvmx_pko_mem_count1_s cn66xx;
 146	struct cvmx_pko_mem_count1_s cn68xx;
 147	struct cvmx_pko_mem_count1_s cn68xxp1;
 148	struct cvmx_pko_mem_count1_s cnf71xx;
 149};
 150
 151union cvmx_pko_mem_debug0 {
 152	uint64_t u64;
 153	struct cvmx_pko_mem_debug0_s {
 154#ifdef __BIG_ENDIAN_BITFIELD
 155		uint64_t fau:28;
 156		uint64_t cmd:14;
 157		uint64_t segs:6;
 158		uint64_t size:16;
 159#else
 160		uint64_t size:16;
 161		uint64_t segs:6;
 162		uint64_t cmd:14;
 163		uint64_t fau:28;
 164#endif
 165	} s;
 166	struct cvmx_pko_mem_debug0_s cn30xx;
 167	struct cvmx_pko_mem_debug0_s cn31xx;
 168	struct cvmx_pko_mem_debug0_s cn38xx;
 169	struct cvmx_pko_mem_debug0_s cn38xxp2;
 170	struct cvmx_pko_mem_debug0_s cn50xx;
 171	struct cvmx_pko_mem_debug0_s cn52xx;
 172	struct cvmx_pko_mem_debug0_s cn52xxp1;
 173	struct cvmx_pko_mem_debug0_s cn56xx;
 174	struct cvmx_pko_mem_debug0_s cn56xxp1;
 175	struct cvmx_pko_mem_debug0_s cn58xx;
 176	struct cvmx_pko_mem_debug0_s cn58xxp1;
 177	struct cvmx_pko_mem_debug0_s cn61xx;
 178	struct cvmx_pko_mem_debug0_s cn63xx;
 179	struct cvmx_pko_mem_debug0_s cn63xxp1;
 180	struct cvmx_pko_mem_debug0_s cn66xx;
 181	struct cvmx_pko_mem_debug0_s cn68xx;
 182	struct cvmx_pko_mem_debug0_s cn68xxp1;
 183	struct cvmx_pko_mem_debug0_s cnf71xx;
 184};
 185
 186union cvmx_pko_mem_debug1 {
 187	uint64_t u64;
 188	struct cvmx_pko_mem_debug1_s {
 189#ifdef __BIG_ENDIAN_BITFIELD
 190		uint64_t i:1;
 191		uint64_t back:4;
 192		uint64_t pool:3;
 193		uint64_t size:16;
 194		uint64_t ptr:40;
 195#else
 196		uint64_t ptr:40;
 197		uint64_t size:16;
 198		uint64_t pool:3;
 199		uint64_t back:4;
 200		uint64_t i:1;
 201#endif
 202	} s;
 203	struct cvmx_pko_mem_debug1_s cn30xx;
 204	struct cvmx_pko_mem_debug1_s cn31xx;
 205	struct cvmx_pko_mem_debug1_s cn38xx;
 206	struct cvmx_pko_mem_debug1_s cn38xxp2;
 207	struct cvmx_pko_mem_debug1_s cn50xx;
 208	struct cvmx_pko_mem_debug1_s cn52xx;
 209	struct cvmx_pko_mem_debug1_s cn52xxp1;
 210	struct cvmx_pko_mem_debug1_s cn56xx;
 211	struct cvmx_pko_mem_debug1_s cn56xxp1;
 212	struct cvmx_pko_mem_debug1_s cn58xx;
 213	struct cvmx_pko_mem_debug1_s cn58xxp1;
 214	struct cvmx_pko_mem_debug1_s cn61xx;
 215	struct cvmx_pko_mem_debug1_s cn63xx;
 216	struct cvmx_pko_mem_debug1_s cn63xxp1;
 217	struct cvmx_pko_mem_debug1_s cn66xx;
 218	struct cvmx_pko_mem_debug1_s cn68xx;
 219	struct cvmx_pko_mem_debug1_s cn68xxp1;
 220	struct cvmx_pko_mem_debug1_s cnf71xx;
 221};
 222
 223union cvmx_pko_mem_debug10 {
 224	uint64_t u64;
 225	struct cvmx_pko_mem_debug10_s {
 226#ifdef __BIG_ENDIAN_BITFIELD
 227		uint64_t reserved_0_63:64;
 228#else
 229		uint64_t reserved_0_63:64;
 230#endif
 231	} s;
 232	struct cvmx_pko_mem_debug10_cn30xx {
 233#ifdef __BIG_ENDIAN_BITFIELD
 234		uint64_t fau:28;
 235		uint64_t cmd:14;
 236		uint64_t segs:6;
 237		uint64_t size:16;
 238#else
 239		uint64_t size:16;
 240		uint64_t segs:6;
 241		uint64_t cmd:14;
 242		uint64_t fau:28;
 243#endif
 244	} cn30xx;
 245	struct cvmx_pko_mem_debug10_cn30xx cn31xx;
 246	struct cvmx_pko_mem_debug10_cn30xx cn38xx;
 247	struct cvmx_pko_mem_debug10_cn30xx cn38xxp2;
 248	struct cvmx_pko_mem_debug10_cn50xx {
 249#ifdef __BIG_ENDIAN_BITFIELD
 250		uint64_t reserved_49_63:15;
 251		uint64_t ptrs1:17;
 252		uint64_t reserved_17_31:15;
 253		uint64_t ptrs2:17;
 254#else
 255		uint64_t ptrs2:17;
 256		uint64_t reserved_17_31:15;
 257		uint64_t ptrs1:17;
 258		uint64_t reserved_49_63:15;
 259#endif
 260	} cn50xx;
 261	struct cvmx_pko_mem_debug10_cn50xx cn52xx;
 262	struct cvmx_pko_mem_debug10_cn50xx cn52xxp1;
 263	struct cvmx_pko_mem_debug10_cn50xx cn56xx;
 264	struct cvmx_pko_mem_debug10_cn50xx cn56xxp1;
 265	struct cvmx_pko_mem_debug10_cn50xx cn58xx;
 266	struct cvmx_pko_mem_debug10_cn50xx cn58xxp1;
 267	struct cvmx_pko_mem_debug10_cn50xx cn61xx;
 268	struct cvmx_pko_mem_debug10_cn50xx cn63xx;
 269	struct cvmx_pko_mem_debug10_cn50xx cn63xxp1;
 270	struct cvmx_pko_mem_debug10_cn50xx cn66xx;
 271	struct cvmx_pko_mem_debug10_cn50xx cn68xx;
 272	struct cvmx_pko_mem_debug10_cn50xx cn68xxp1;
 273	struct cvmx_pko_mem_debug10_cn50xx cnf71xx;
 274};
 275
 276union cvmx_pko_mem_debug11 {
 277	uint64_t u64;
 278	struct cvmx_pko_mem_debug11_s {
 279#ifdef __BIG_ENDIAN_BITFIELD
 280		uint64_t i:1;
 281		uint64_t back:4;
 282		uint64_t pool:3;
 283		uint64_t size:16;
 284		uint64_t reserved_0_39:40;
 285#else
 286		uint64_t reserved_0_39:40;
 287		uint64_t size:16;
 288		uint64_t pool:3;
 289		uint64_t back:4;
 290		uint64_t i:1;
 291#endif
 292	} s;
 293	struct cvmx_pko_mem_debug11_cn30xx {
 294#ifdef __BIG_ENDIAN_BITFIELD
 295		uint64_t i:1;
 296		uint64_t back:4;
 297		uint64_t pool:3;
 298		uint64_t size:16;
 299		uint64_t ptr:40;
 300#else
 301		uint64_t ptr:40;
 302		uint64_t size:16;
 303		uint64_t pool:3;
 304		uint64_t back:4;
 305		uint64_t i:1;
 306#endif
 307	} cn30xx;
 308	struct cvmx_pko_mem_debug11_cn30xx cn31xx;
 309	struct cvmx_pko_mem_debug11_cn30xx cn38xx;
 310	struct cvmx_pko_mem_debug11_cn30xx cn38xxp2;
 311	struct cvmx_pko_mem_debug11_cn50xx {
 312#ifdef __BIG_ENDIAN_BITFIELD
 313		uint64_t reserved_23_63:41;
 314		uint64_t maj:1;
 315		uint64_t uid:3;
 316		uint64_t sop:1;
 317		uint64_t len:1;
 318		uint64_t chk:1;
 319		uint64_t cnt:13;
 320		uint64_t mod:3;
 321#else
 322		uint64_t mod:3;
 323		uint64_t cnt:13;
 324		uint64_t chk:1;
 325		uint64_t len:1;
 326		uint64_t sop:1;
 327		uint64_t uid:3;
 328		uint64_t maj:1;
 329		uint64_t reserved_23_63:41;
 330#endif
 331	} cn50xx;
 332	struct cvmx_pko_mem_debug11_cn50xx cn52xx;
 333	struct cvmx_pko_mem_debug11_cn50xx cn52xxp1;
 334	struct cvmx_pko_mem_debug11_cn50xx cn56xx;
 335	struct cvmx_pko_mem_debug11_cn50xx cn56xxp1;
 336	struct cvmx_pko_mem_debug11_cn50xx cn58xx;
 337	struct cvmx_pko_mem_debug11_cn50xx cn58xxp1;
 338	struct cvmx_pko_mem_debug11_cn50xx cn61xx;
 339	struct cvmx_pko_mem_debug11_cn50xx cn63xx;
 340	struct cvmx_pko_mem_debug11_cn50xx cn63xxp1;
 341	struct cvmx_pko_mem_debug11_cn50xx cn66xx;
 342	struct cvmx_pko_mem_debug11_cn50xx cn68xx;
 343	struct cvmx_pko_mem_debug11_cn50xx cn68xxp1;
 344	struct cvmx_pko_mem_debug11_cn50xx cnf71xx;
 345};
 346
 347union cvmx_pko_mem_debug12 {
 348	uint64_t u64;
 349	struct cvmx_pko_mem_debug12_s {
 350#ifdef __BIG_ENDIAN_BITFIELD
 351		uint64_t reserved_0_63:64;
 352#else
 353		uint64_t reserved_0_63:64;
 354#endif
 355	} s;
 356	struct cvmx_pko_mem_debug12_cn30xx {
 357#ifdef __BIG_ENDIAN_BITFIELD
 358		uint64_t data:64;
 359#else
 360		uint64_t data:64;
 361#endif
 362	} cn30xx;
 363	struct cvmx_pko_mem_debug12_cn30xx cn31xx;
 364	struct cvmx_pko_mem_debug12_cn30xx cn38xx;
 365	struct cvmx_pko_mem_debug12_cn30xx cn38xxp2;
 366	struct cvmx_pko_mem_debug12_cn50xx {
 367#ifdef __BIG_ENDIAN_BITFIELD
 368		uint64_t fau:28;
 369		uint64_t cmd:14;
 370		uint64_t segs:6;
 371		uint64_t size:16;
 372#else
 373		uint64_t size:16;
 374		uint64_t segs:6;
 375		uint64_t cmd:14;
 376		uint64_t fau:28;
 377#endif
 378	} cn50xx;
 379	struct cvmx_pko_mem_debug12_cn50xx cn52xx;
 380	struct cvmx_pko_mem_debug12_cn50xx cn52xxp1;
 381	struct cvmx_pko_mem_debug12_cn50xx cn56xx;
 382	struct cvmx_pko_mem_debug12_cn50xx cn56xxp1;
 383	struct cvmx_pko_mem_debug12_cn50xx cn58xx;
 384	struct cvmx_pko_mem_debug12_cn50xx cn58xxp1;
 385	struct cvmx_pko_mem_debug12_cn50xx cn61xx;
 386	struct cvmx_pko_mem_debug12_cn50xx cn63xx;
 387	struct cvmx_pko_mem_debug12_cn50xx cn63xxp1;
 388	struct cvmx_pko_mem_debug12_cn50xx cn66xx;
 389	struct cvmx_pko_mem_debug12_cn68xx {
 390#ifdef __BIG_ENDIAN_BITFIELD
 391		uint64_t state:64;
 392#else
 393		uint64_t state:64;
 394#endif
 395	} cn68xx;
 396	struct cvmx_pko_mem_debug12_cn68xx cn68xxp1;
 397	struct cvmx_pko_mem_debug12_cn50xx cnf71xx;
 398};
 399
 400union cvmx_pko_mem_debug13 {
 401	uint64_t u64;
 402	struct cvmx_pko_mem_debug13_s {
 403#ifdef __BIG_ENDIAN_BITFIELD
 404		uint64_t reserved_0_63:64;
 405#else
 406		uint64_t reserved_0_63:64;
 407#endif
 408	} s;
 409	struct cvmx_pko_mem_debug13_cn30xx {
 410#ifdef __BIG_ENDIAN_BITFIELD
 411		uint64_t reserved_51_63:13;
 412		uint64_t widx:17;
 413		uint64_t ridx2:17;
 414		uint64_t widx2:17;
 415#else
 416		uint64_t widx2:17;
 417		uint64_t ridx2:17;
 418		uint64_t widx:17;
 419		uint64_t reserved_51_63:13;
 420#endif
 421	} cn30xx;
 422	struct cvmx_pko_mem_debug13_cn30xx cn31xx;
 423	struct cvmx_pko_mem_debug13_cn30xx cn38xx;
 424	struct cvmx_pko_mem_debug13_cn30xx cn38xxp2;
 425	struct cvmx_pko_mem_debug13_cn50xx {
 426#ifdef __BIG_ENDIAN_BITFIELD
 427		uint64_t i:1;
 428		uint64_t back:4;
 429		uint64_t pool:3;
 430		uint64_t size:16;
 431		uint64_t ptr:40;
 432#else
 433		uint64_t ptr:40;
 434		uint64_t size:16;
 435		uint64_t pool:3;
 436		uint64_t back:4;
 437		uint64_t i:1;
 438#endif
 439	} cn50xx;
 440	struct cvmx_pko_mem_debug13_cn50xx cn52xx;
 441	struct cvmx_pko_mem_debug13_cn50xx cn52xxp1;
 442	struct cvmx_pko_mem_debug13_cn50xx cn56xx;
 443	struct cvmx_pko_mem_debug13_cn50xx cn56xxp1;
 444	struct cvmx_pko_mem_debug13_cn50xx cn58xx;
 445	struct cvmx_pko_mem_debug13_cn50xx cn58xxp1;
 446	struct cvmx_pko_mem_debug13_cn50xx cn61xx;
 447	struct cvmx_pko_mem_debug13_cn50xx cn63xx;
 448	struct cvmx_pko_mem_debug13_cn50xx cn63xxp1;
 449	struct cvmx_pko_mem_debug13_cn50xx cn66xx;
 450	struct cvmx_pko_mem_debug13_cn68xx {
 451#ifdef __BIG_ENDIAN_BITFIELD
 452		uint64_t state:64;
 453#else
 454		uint64_t state:64;
 455#endif
 456	} cn68xx;
 457	struct cvmx_pko_mem_debug13_cn68xx cn68xxp1;
 458	struct cvmx_pko_mem_debug13_cn50xx cnf71xx;
 459};
 460
 461union cvmx_pko_mem_debug14 {
 462	uint64_t u64;
 463	struct cvmx_pko_mem_debug14_s {
 464#ifdef __BIG_ENDIAN_BITFIELD
 465		uint64_t reserved_0_63:64;
 466#else
 467		uint64_t reserved_0_63:64;
 468#endif
 469	} s;
 470	struct cvmx_pko_mem_debug14_cn30xx {
 471#ifdef __BIG_ENDIAN_BITFIELD
 472		uint64_t reserved_17_63:47;
 473		uint64_t ridx:17;
 474#else
 475		uint64_t ridx:17;
 476		uint64_t reserved_17_63:47;
 477#endif
 478	} cn30xx;
 479	struct cvmx_pko_mem_debug14_cn30xx cn31xx;
 480	struct cvmx_pko_mem_debug14_cn30xx cn38xx;
 481	struct cvmx_pko_mem_debug14_cn30xx cn38xxp2;
 482	struct cvmx_pko_mem_debug14_cn52xx {
 483#ifdef __BIG_ENDIAN_BITFIELD
 484		uint64_t data:64;
 485#else
 486		uint64_t data:64;
 487#endif
 488	} cn52xx;
 489	struct cvmx_pko_mem_debug14_cn52xx cn52xxp1;
 490	struct cvmx_pko_mem_debug14_cn52xx cn56xx;
 491	struct cvmx_pko_mem_debug14_cn52xx cn56xxp1;
 492	struct cvmx_pko_mem_debug14_cn52xx cn61xx;
 493	struct cvmx_pko_mem_debug14_cn52xx cn63xx;
 494	struct cvmx_pko_mem_debug14_cn52xx cn63xxp1;
 495	struct cvmx_pko_mem_debug14_cn52xx cn66xx;
 496	struct cvmx_pko_mem_debug14_cn52xx cnf71xx;
 497};
 498
 499union cvmx_pko_mem_debug2 {
 500	uint64_t u64;
 501	struct cvmx_pko_mem_debug2_s {
 502#ifdef __BIG_ENDIAN_BITFIELD
 503		uint64_t i:1;
 504		uint64_t back:4;
 505		uint64_t pool:3;
 506		uint64_t size:16;
 507		uint64_t ptr:40;
 508#else
 509		uint64_t ptr:40;
 510		uint64_t size:16;
 511		uint64_t pool:3;
 512		uint64_t back:4;
 513		uint64_t i:1;
 514#endif
 515	} s;
 516	struct cvmx_pko_mem_debug2_s cn30xx;
 517	struct cvmx_pko_mem_debug2_s cn31xx;
 518	struct cvmx_pko_mem_debug2_s cn38xx;
 519	struct cvmx_pko_mem_debug2_s cn38xxp2;
 520	struct cvmx_pko_mem_debug2_s cn50xx;
 521	struct cvmx_pko_mem_debug2_s cn52xx;
 522	struct cvmx_pko_mem_debug2_s cn52xxp1;
 523	struct cvmx_pko_mem_debug2_s cn56xx;
 524	struct cvmx_pko_mem_debug2_s cn56xxp1;
 525	struct cvmx_pko_mem_debug2_s cn58xx;
 526	struct cvmx_pko_mem_debug2_s cn58xxp1;
 527	struct cvmx_pko_mem_debug2_s cn61xx;
 528	struct cvmx_pko_mem_debug2_s cn63xx;
 529	struct cvmx_pko_mem_debug2_s cn63xxp1;
 530	struct cvmx_pko_mem_debug2_s cn66xx;
 531	struct cvmx_pko_mem_debug2_s cn68xx;
 532	struct cvmx_pko_mem_debug2_s cn68xxp1;
 533	struct cvmx_pko_mem_debug2_s cnf71xx;
 534};
 535
 536union cvmx_pko_mem_debug3 {
 537	uint64_t u64;
 538	struct cvmx_pko_mem_debug3_s {
 539#ifdef __BIG_ENDIAN_BITFIELD
 540		uint64_t reserved_0_63:64;
 541#else
 542		uint64_t reserved_0_63:64;
 543#endif
 544	} s;
 545	struct cvmx_pko_mem_debug3_cn30xx {
 546#ifdef __BIG_ENDIAN_BITFIELD
 547		uint64_t i:1;
 548		uint64_t back:4;
 549		uint64_t pool:3;
 550		uint64_t size:16;
 551		uint64_t ptr:40;
 552#else
 553		uint64_t ptr:40;
 554		uint64_t size:16;
 555		uint64_t pool:3;
 556		uint64_t back:4;
 557		uint64_t i:1;
 558#endif
 559	} cn30xx;
 560	struct cvmx_pko_mem_debug3_cn30xx cn31xx;
 561	struct cvmx_pko_mem_debug3_cn30xx cn38xx;
 562	struct cvmx_pko_mem_debug3_cn30xx cn38xxp2;
 563	struct cvmx_pko_mem_debug3_cn50xx {
 564#ifdef __BIG_ENDIAN_BITFIELD
 565		uint64_t data:64;
 566#else
 567		uint64_t data:64;
 568#endif
 569	} cn50xx;
 570	struct cvmx_pko_mem_debug3_cn50xx cn52xx;
 571	struct cvmx_pko_mem_debug3_cn50xx cn52xxp1;
 572	struct cvmx_pko_mem_debug3_cn50xx cn56xx;
 573	struct cvmx_pko_mem_debug3_cn50xx cn56xxp1;
 574	struct cvmx_pko_mem_debug3_cn50xx cn58xx;
 575	struct cvmx_pko_mem_debug3_cn50xx cn58xxp1;
 576	struct cvmx_pko_mem_debug3_cn50xx cn61xx;
 577	struct cvmx_pko_mem_debug3_cn50xx cn63xx;
 578	struct cvmx_pko_mem_debug3_cn50xx cn63xxp1;
 579	struct cvmx_pko_mem_debug3_cn50xx cn66xx;
 580	struct cvmx_pko_mem_debug3_cn50xx cn68xx;
 581	struct cvmx_pko_mem_debug3_cn50xx cn68xxp1;
 582	struct cvmx_pko_mem_debug3_cn50xx cnf71xx;
 583};
 584
 585union cvmx_pko_mem_debug4 {
 586	uint64_t u64;
 587	struct cvmx_pko_mem_debug4_s {
 588#ifdef __BIG_ENDIAN_BITFIELD
 589		uint64_t reserved_0_63:64;
 590#else
 591		uint64_t reserved_0_63:64;
 592#endif
 593	} s;
 594	struct cvmx_pko_mem_debug4_cn30xx {
 595#ifdef __BIG_ENDIAN_BITFIELD
 596		uint64_t data:64;
 597#else
 598		uint64_t data:64;
 599#endif
 600	} cn30xx;
 601	struct cvmx_pko_mem_debug4_cn30xx cn31xx;
 602	struct cvmx_pko_mem_debug4_cn30xx cn38xx;
 603	struct cvmx_pko_mem_debug4_cn30xx cn38xxp2;
 604	struct cvmx_pko_mem_debug4_cn50xx {
 605#ifdef __BIG_ENDIAN_BITFIELD
 606		uint64_t cmnd_segs:3;
 607		uint64_t cmnd_siz:16;
 608		uint64_t cmnd_off:6;
 609		uint64_t uid:3;
 610		uint64_t dread_sop:1;
 611		uint64_t init_dwrite:1;
 612		uint64_t chk_once:1;
 613		uint64_t chk_mode:1;
 614		uint64_t active:1;
 615		uint64_t static_p:1;
 616		uint64_t qos:3;
 617		uint64_t qcb_ridx:5;
 618		uint64_t qid_off_max:4;
 619		uint64_t qid_off:4;
 620		uint64_t qid_base:8;
 621		uint64_t wait:1;
 622		uint64_t minor:2;
 623		uint64_t major:3;
 624#else
 625		uint64_t major:3;
 626		uint64_t minor:2;
 627		uint64_t wait:1;
 628		uint64_t qid_base:8;
 629		uint64_t qid_off:4;
 630		uint64_t qid_off_max:4;
 631		uint64_t qcb_ridx:5;
 632		uint64_t qos:3;
 633		uint64_t static_p:1;
 634		uint64_t active:1;
 635		uint64_t chk_mode:1;
 636		uint64_t chk_once:1;
 637		uint64_t init_dwrite:1;
 638		uint64_t dread_sop:1;
 639		uint64_t uid:3;
 640		uint64_t cmnd_off:6;
 641		uint64_t cmnd_siz:16;
 642		uint64_t cmnd_segs:3;
 643#endif
 644	} cn50xx;
 645	struct cvmx_pko_mem_debug4_cn52xx {
 646#ifdef __BIG_ENDIAN_BITFIELD
 647		uint64_t curr_siz:8;
 648		uint64_t curr_off:16;
 649		uint64_t cmnd_segs:6;
 650		uint64_t cmnd_siz:16;
 651		uint64_t cmnd_off:6;
 652		uint64_t uid:2;
 653		uint64_t dread_sop:1;
 654		uint64_t init_dwrite:1;
 655		uint64_t chk_once:1;
 656		uint64_t chk_mode:1;
 657		uint64_t wait:1;
 658		uint64_t minor:2;
 659		uint64_t major:3;
 660#else
 661		uint64_t major:3;
 662		uint64_t minor:2;
 663		uint64_t wait:1;
 664		uint64_t chk_mode:1;
 665		uint64_t chk_once:1;
 666		uint64_t init_dwrite:1;
 667		uint64_t dread_sop:1;
 668		uint64_t uid:2;
 669		uint64_t cmnd_off:6;
 670		uint64_t cmnd_siz:16;
 671		uint64_t cmnd_segs:6;
 672		uint64_t curr_off:16;
 673		uint64_t curr_siz:8;
 674#endif
 675	} cn52xx;
 676	struct cvmx_pko_mem_debug4_cn52xx cn52xxp1;
 677	struct cvmx_pko_mem_debug4_cn52xx cn56xx;
 678	struct cvmx_pko_mem_debug4_cn52xx cn56xxp1;
 679	struct cvmx_pko_mem_debug4_cn50xx cn58xx;
 680	struct cvmx_pko_mem_debug4_cn50xx cn58xxp1;
 681	struct cvmx_pko_mem_debug4_cn52xx cn61xx;
 682	struct cvmx_pko_mem_debug4_cn52xx cn63xx;
 683	struct cvmx_pko_mem_debug4_cn52xx cn63xxp1;
 684	struct cvmx_pko_mem_debug4_cn52xx cn66xx;
 685	struct cvmx_pko_mem_debug4_cn52xx cn68xx;
 686	struct cvmx_pko_mem_debug4_cn52xx cn68xxp1;
 687	struct cvmx_pko_mem_debug4_cn52xx cnf71xx;
 688};
 689
 690union cvmx_pko_mem_debug5 {
 691	uint64_t u64;
 692	struct cvmx_pko_mem_debug5_s {
 693#ifdef __BIG_ENDIAN_BITFIELD
 694		uint64_t reserved_0_63:64;
 695#else
 696		uint64_t reserved_0_63:64;
 697#endif
 698	} s;
 699	struct cvmx_pko_mem_debug5_cn30xx {
 700#ifdef __BIG_ENDIAN_BITFIELD
 701		uint64_t dwri_mod:1;
 702		uint64_t dwri_sop:1;
 703		uint64_t dwri_len:1;
 704		uint64_t dwri_cnt:13;
 705		uint64_t cmnd_siz:16;
 706		uint64_t uid:1;
 707		uint64_t xfer_wor:1;
 708		uint64_t xfer_dwr:1;
 709		uint64_t cbuf_fre:1;
 710		uint64_t reserved_27_27:1;
 711		uint64_t chk_mode:1;
 712		uint64_t active:1;
 713		uint64_t qos:3;
 714		uint64_t qcb_ridx:5;
 715		uint64_t qid_off:3;
 716		uint64_t qid_base:7;
 717		uint64_t wait:1;
 718		uint64_t minor:2;
 719		uint64_t major:4;
 720#else
 721		uint64_t major:4;
 722		uint64_t minor:2;
 723		uint64_t wait:1;
 724		uint64_t qid_base:7;
 725		uint64_t qid_off:3;
 726		uint64_t qcb_ridx:5;
 727		uint64_t qos:3;
 728		uint64_t active:1;
 729		uint64_t chk_mode:1;
 730		uint64_t reserved_27_27:1;
 731		uint64_t cbuf_fre:1;
 732		uint64_t xfer_dwr:1;
 733		uint64_t xfer_wor:1;
 734		uint64_t uid:1;
 735		uint64_t cmnd_siz:16;
 736		uint64_t dwri_cnt:13;
 737		uint64_t dwri_len:1;
 738		uint64_t dwri_sop:1;
 739		uint64_t dwri_mod:1;
 740#endif
 741	} cn30xx;
 742	struct cvmx_pko_mem_debug5_cn30xx cn31xx;
 743	struct cvmx_pko_mem_debug5_cn30xx cn38xx;
 744	struct cvmx_pko_mem_debug5_cn30xx cn38xxp2;
 745	struct cvmx_pko_mem_debug5_cn50xx {
 746#ifdef __BIG_ENDIAN_BITFIELD
 747		uint64_t curr_ptr:29;
 748		uint64_t curr_siz:16;
 749		uint64_t curr_off:16;
 750		uint64_t cmnd_segs:3;
 751#else
 752		uint64_t cmnd_segs:3;
 753		uint64_t curr_off:16;
 754		uint64_t curr_siz:16;
 755		uint64_t curr_ptr:29;
 756#endif
 757	} cn50xx;
 758	struct cvmx_pko_mem_debug5_cn52xx {
 759#ifdef __BIG_ENDIAN_BITFIELD
 760		uint64_t reserved_54_63:10;
 761		uint64_t nxt_inflt:6;
 762		uint64_t curr_ptr:40;
 763		uint64_t curr_siz:8;
 764#else
 765		uint64_t curr_siz:8;
 766		uint64_t curr_ptr:40;
 767		uint64_t nxt_inflt:6;
 768		uint64_t reserved_54_63:10;
 769#endif
 770	} cn52xx;
 771	struct cvmx_pko_mem_debug5_cn52xx cn52xxp1;
 772	struct cvmx_pko_mem_debug5_cn52xx cn56xx;
 773	struct cvmx_pko_mem_debug5_cn52xx cn56xxp1;
 774	struct cvmx_pko_mem_debug5_cn50xx cn58xx;
 775	struct cvmx_pko_mem_debug5_cn50xx cn58xxp1;
 776	struct cvmx_pko_mem_debug5_cn61xx {
 777#ifdef __BIG_ENDIAN_BITFIELD
 778		uint64_t reserved_56_63:8;
 779		uint64_t ptp:1;
 780		uint64_t major_3:1;
 781		uint64_t nxt_inflt:6;
 782		uint64_t curr_ptr:40;
 783		uint64_t curr_siz:8;
 784#else
 785		uint64_t curr_siz:8;
 786		uint64_t curr_ptr:40;
 787		uint64_t nxt_inflt:6;
 788		uint64_t major_3:1;
 789		uint64_t ptp:1;
 790		uint64_t reserved_56_63:8;
 791#endif
 792	} cn61xx;
 793	struct cvmx_pko_mem_debug5_cn61xx cn63xx;
 794	struct cvmx_pko_mem_debug5_cn61xx cn63xxp1;
 795	struct cvmx_pko_mem_debug5_cn61xx cn66xx;
 796	struct cvmx_pko_mem_debug5_cn68xx {
 797#ifdef __BIG_ENDIAN_BITFIELD
 798		uint64_t reserved_57_63:7;
 799		uint64_t uid_2:1;
 800		uint64_t ptp:1;
 801		uint64_t major_3:1;
 802		uint64_t nxt_inflt:6;
 803		uint64_t curr_ptr:40;
 804		uint64_t curr_siz:8;
 805#else
 806		uint64_t curr_siz:8;
 807		uint64_t curr_ptr:40;
 808		uint64_t nxt_inflt:6;
 809		uint64_t major_3:1;
 810		uint64_t ptp:1;
 811		uint64_t uid_2:1;
 812		uint64_t reserved_57_63:7;
 813#endif
 814	} cn68xx;
 815	struct cvmx_pko_mem_debug5_cn68xx cn68xxp1;
 816	struct cvmx_pko_mem_debug5_cn61xx cnf71xx;
 817};
 818
 819union cvmx_pko_mem_debug6 {
 820	uint64_t u64;
 821	struct cvmx_pko_mem_debug6_s {
 822#ifdef __BIG_ENDIAN_BITFIELD
 823		uint64_t reserved_37_63:27;
 824		uint64_t qid_offres:4;
 825		uint64_t qid_offths:4;
 826		uint64_t preempter:1;
 827		uint64_t preemptee:1;
 828		uint64_t preempted:1;
 829		uint64_t active:1;
 830		uint64_t statc:1;
 831		uint64_t qos:3;
 832		uint64_t qcb_ridx:5;
 833		uint64_t qid_offmax:4;
 834		uint64_t reserved_0_11:12;
 835#else
 836		uint64_t reserved_0_11:12;
 837		uint64_t qid_offmax:4;
 838		uint64_t qcb_ridx:5;
 839		uint64_t qos:3;
 840		uint64_t statc:1;
 841		uint64_t active:1;
 842		uint64_t preempted:1;
 843		uint64_t preemptee:1;
 844		uint64_t preempter:1;
 845		uint64_t qid_offths:4;
 846		uint64_t qid_offres:4;
 847		uint64_t reserved_37_63:27;
 848#endif
 849	} s;
 850	struct cvmx_pko_mem_debug6_cn30xx {
 851#ifdef __BIG_ENDIAN_BITFIELD
 852		uint64_t reserved_11_63:53;
 853		uint64_t qid_offm:3;
 854		uint64_t static_p:1;
 855		uint64_t work_min:3;
 856		uint64_t dwri_chk:1;
 857		uint64_t dwri_uid:1;
 858		uint64_t dwri_mod:2;
 859#else
 860		uint64_t dwri_mod:2;
 861		uint64_t dwri_uid:1;
 862		uint64_t dwri_chk:1;
 863		uint64_t work_min:3;
 864		uint64_t static_p:1;
 865		uint64_t qid_offm:3;
 866		uint64_t reserved_11_63:53;
 867#endif
 868	} cn30xx;
 869	struct cvmx_pko_mem_debug6_cn30xx cn31xx;
 870	struct cvmx_pko_mem_debug6_cn30xx cn38xx;
 871	struct cvmx_pko_mem_debug6_cn30xx cn38xxp2;
 872	struct cvmx_pko_mem_debug6_cn50xx {
 873#ifdef __BIG_ENDIAN_BITFIELD
 874		uint64_t reserved_11_63:53;
 875		uint64_t curr_ptr:11;
 876#else
 877		uint64_t curr_ptr:11;
 878		uint64_t reserved_11_63:53;
 879#endif
 880	} cn50xx;
 881	struct cvmx_pko_mem_debug6_cn52xx {
 882#ifdef __BIG_ENDIAN_BITFIELD
 883		uint64_t reserved_37_63:27;
 884		uint64_t qid_offres:4;
 885		uint64_t qid_offths:4;
 886		uint64_t preempter:1;
 887		uint64_t preemptee:1;
 888		uint64_t preempted:1;
 889		uint64_t active:1;
 890		uint64_t statc:1;
 891		uint64_t qos:3;
 892		uint64_t qcb_ridx:5;
 893		uint64_t qid_offmax:4;
 894		uint64_t qid_off:4;
 895		uint64_t qid_base:8;
 896#else
 897		uint64_t qid_base:8;
 898		uint64_t qid_off:4;
 899		uint64_t qid_offmax:4;
 900		uint64_t qcb_ridx:5;
 901		uint64_t qos:3;
 902		uint64_t statc:1;
 903		uint64_t active:1;
 904		uint64_t preempted:1;
 905		uint64_t preemptee:1;
 906		uint64_t preempter:1;
 907		uint64_t qid_offths:4;
 908		uint64_t qid_offres:4;
 909		uint64_t reserved_37_63:27;
 910#endif
 911	} cn52xx;
 912	struct cvmx_pko_mem_debug6_cn52xx cn52xxp1;
 913	struct cvmx_pko_mem_debug6_cn52xx cn56xx;
 914	struct cvmx_pko_mem_debug6_cn52xx cn56xxp1;
 915	struct cvmx_pko_mem_debug6_cn50xx cn58xx;
 916	struct cvmx_pko_mem_debug6_cn50xx cn58xxp1;
 917	struct cvmx_pko_mem_debug6_cn52xx cn61xx;
 918	struct cvmx_pko_mem_debug6_cn52xx cn63xx;
 919	struct cvmx_pko_mem_debug6_cn52xx cn63xxp1;
 920	struct cvmx_pko_mem_debug6_cn52xx cn66xx;
 921	struct cvmx_pko_mem_debug6_cn52xx cn68xx;
 922	struct cvmx_pko_mem_debug6_cn52xx cn68xxp1;
 923	struct cvmx_pko_mem_debug6_cn52xx cnf71xx;
 924};
 925
 926union cvmx_pko_mem_debug7 {
 927	uint64_t u64;
 928	struct cvmx_pko_mem_debug7_s {
 929#ifdef __BIG_ENDIAN_BITFIELD
 930		uint64_t reserved_0_63:64;
 931#else
 932		uint64_t reserved_0_63:64;
 933#endif
 934	} s;
 935	struct cvmx_pko_mem_debug7_cn30xx {
 936#ifdef __BIG_ENDIAN_BITFIELD
 937		uint64_t reserved_58_63:6;
 938		uint64_t dwb:9;
 939		uint64_t start:33;
 940		uint64_t size:16;
 941#else
 942		uint64_t size:16;
 943		uint64_t start:33;
 944		uint64_t dwb:9;
 945		uint64_t reserved_58_63:6;
 946#endif
 947	} cn30xx;
 948	struct cvmx_pko_mem_debug7_cn30xx cn31xx;
 949	struct cvmx_pko_mem_debug7_cn30xx cn38xx;
 950	struct cvmx_pko_mem_debug7_cn30xx cn38xxp2;
 951	struct cvmx_pko_mem_debug7_cn50xx {
 952#ifdef __BIG_ENDIAN_BITFIELD
 953		uint64_t qos:5;
 954		uint64_t tail:1;
 955		uint64_t buf_siz:13;
 956		uint64_t buf_ptr:33;
 957		uint64_t qcb_widx:6;
 958		uint64_t qcb_ridx:6;
 959#else
 960		uint64_t qcb_ridx:6;
 961		uint64_t qcb_widx:6;
 962		uint64_t buf_ptr:33;
 963		uint64_t buf_siz:13;
 964		uint64_t tail:1;
 965		uint64_t qos:5;
 966#endif
 967	} cn50xx;
 968	struct cvmx_pko_mem_debug7_cn50xx cn52xx;
 969	struct cvmx_pko_mem_debug7_cn50xx cn52xxp1;
 970	struct cvmx_pko_mem_debug7_cn50xx cn56xx;
 971	struct cvmx_pko_mem_debug7_cn50xx cn56xxp1;
 972	struct cvmx_pko_mem_debug7_cn50xx cn58xx;
 973	struct cvmx_pko_mem_debug7_cn50xx cn58xxp1;
 974	struct cvmx_pko_mem_debug7_cn50xx cn61xx;
 975	struct cvmx_pko_mem_debug7_cn50xx cn63xx;
 976	struct cvmx_pko_mem_debug7_cn50xx cn63xxp1;
 977	struct cvmx_pko_mem_debug7_cn50xx cn66xx;
 978	struct cvmx_pko_mem_debug7_cn68xx {
 979#ifdef __BIG_ENDIAN_BITFIELD
 980		uint64_t qos:3;
 981		uint64_t tail:1;
 982		uint64_t buf_siz:13;
 983		uint64_t buf_ptr:33;
 984		uint64_t qcb_widx:7;
 985		uint64_t qcb_ridx:7;
 986#else
 987		uint64_t qcb_ridx:7;
 988		uint64_t qcb_widx:7;
 989		uint64_t buf_ptr:33;
 990		uint64_t buf_siz:13;
 991		uint64_t tail:1;
 992		uint64_t qos:3;
 993#endif
 994	} cn68xx;
 995	struct cvmx_pko_mem_debug7_cn68xx cn68xxp1;
 996	struct cvmx_pko_mem_debug7_cn50xx cnf71xx;
 997};
 998
 999union cvmx_pko_mem_debug8 {
1000	uint64_t u64;
1001	struct cvmx_pko_mem_debug8_s {
1002#ifdef __BIG_ENDIAN_BITFIELD
1003		uint64_t reserved_59_63:5;
1004		uint64_t tail:1;
1005		uint64_t buf_siz:13;
1006		uint64_t reserved_0_44:45;
1007#else
1008		uint64_t reserved_0_44:45;
1009		uint64_t buf_siz:13;
1010		uint64_t tail:1;
1011		uint64_t reserved_59_63:5;
1012#endif
1013	} s;
1014	struct cvmx_pko_mem_debug8_cn30xx {
1015#ifdef __BIG_ENDIAN_BITFIELD
1016		uint64_t qos:5;
1017		uint64_t tail:1;
1018		uint64_t buf_siz:13;
1019		uint64_t buf_ptr:33;
1020		uint64_t qcb_widx:6;
1021		uint64_t qcb_ridx:6;
1022#else
1023		uint64_t qcb_ridx:6;
1024		uint64_t qcb_widx:6;
1025		uint64_t buf_ptr:33;
1026		uint64_t buf_siz:13;
1027		uint64_t tail:1;
1028		uint64_t qos:5;
1029#endif
1030	} cn30xx;
1031	struct cvmx_pko_mem_debug8_cn30xx cn31xx;
1032	struct cvmx_pko_mem_debug8_cn30xx cn38xx;
1033	struct cvmx_pko_mem_debug8_cn30xx cn38xxp2;
1034	struct cvmx_pko_mem_debug8_cn50xx {
1035#ifdef __BIG_ENDIAN_BITFIELD
1036		uint64_t reserved_28_63:36;
1037		uint64_t doorbell:20;
1038		uint64_t reserved_6_7:2;
1039		uint64_t static_p:1;
1040		uint64_t s_tail:1;
1041		uint64_t static_q:1;
1042		uint64_t qos:3;
1043#else
1044		uint64_t qos:3;
1045		uint64_t static_q:1;
1046		uint64_t s_tail:1;
1047		uint64_t static_p:1;
1048		uint64_t reserved_6_7:2;
1049		uint64_t doorbell:20;
1050		uint64_t reserved_28_63:36;
1051#endif
1052	} cn50xx;
1053	struct cvmx_pko_mem_debug8_cn52xx {
1054#ifdef __BIG_ENDIAN_BITFIELD
1055		uint64_t reserved_29_63:35;
1056		uint64_t preempter:1;
1057		uint64_t doorbell:20;
1058		uint64_t reserved_7_7:1;
1059		uint64_t preemptee:1;
1060		uint64_t static_p:1;
1061		uint64_t s_tail:1;
1062		uint64_t static_q:1;
1063		uint64_t qos:3;
1064#else
1065		uint64_t qos:3;
1066		uint64_t static_q:1;
1067		uint64_t s_tail:1;
1068		uint64_t static_p:1;
1069		uint64_t preemptee:1;
1070		uint64_t reserved_7_7:1;
1071		uint64_t doorbell:20;
1072		uint64_t preempter:1;
1073		uint64_t reserved_29_63:35;
1074#endif
1075	} cn52xx;
1076	struct cvmx_pko_mem_debug8_cn52xx cn52xxp1;
1077	struct cvmx_pko_mem_debug8_cn52xx cn56xx;
1078	struct cvmx_pko_mem_debug8_cn52xx cn56xxp1;
1079	struct cvmx_pko_mem_debug8_cn50xx cn58xx;
1080	struct cvmx_pko_mem_debug8_cn50xx cn58xxp1;
1081	struct cvmx_pko_mem_debug8_cn61xx {
1082#ifdef __BIG_ENDIAN_BITFIELD
1083		uint64_t reserved_42_63:22;
1084		uint64_t qid_qqos:8;
1085		uint64_t reserved_33_33:1;
1086		uint64_t qid_idx:4;
1087		uint64_t preempter:1;
1088		uint64_t doorbell:20;
1089		uint64_t reserved_7_7:1;
1090		uint64_t preemptee:1;
1091		uint64_t static_p:1;
1092		uint64_t s_tail:1;
1093		uint64_t static_q:1;
1094		uint64_t qos:3;
1095#else
1096		uint64_t qos:3;
1097		uint64_t static_q:1;
1098		uint64_t s_tail:1;
1099		uint64_t static_p:1;
1100		uint64_t preemptee:1;
1101		uint64_t reserved_7_7:1;
1102		uint64_t doorbell:20;
1103		uint64_t preempter:1;
1104		uint64_t qid_idx:4;
1105		uint64_t reserved_33_33:1;
1106		uint64_t qid_qqos:8;
1107		uint64_t reserved_42_63:22;
1108#endif
1109	} cn61xx;
1110	struct cvmx_pko_mem_debug8_cn52xx cn63xx;
1111	struct cvmx_pko_mem_debug8_cn52xx cn63xxp1;
1112	struct cvmx_pko_mem_debug8_cn61xx cn66xx;
1113	struct cvmx_pko_mem_debug8_cn68xx {
1114#ifdef __BIG_ENDIAN_BITFIELD
1115		uint64_t reserved_37_63:27;
1116		uint64_t preempter:1;
1117		uint64_t doorbell:20;
1118		uint64_t reserved_9_15:7;
1119		uint64_t preemptee:1;
1120		uint64_t static_p:1;
1121		uint64_t s_tail:1;
1122		uint64_t static_q:1;
1123		uint64_t qos:5;
1124#else
1125		uint64_t qos:5;
1126		uint64_t static_q:1;
1127		uint64_t s_tail:1;
1128		uint64_t static_p:1;
1129		uint64_t preemptee:1;
1130		uint64_t reserved_9_15:7;
1131		uint64_t doorbell:20;
1132		uint64_t preempter:1;
1133		uint64_t reserved_37_63:27;
1134#endif
1135	} cn68xx;
1136	struct cvmx_pko_mem_debug8_cn68xx cn68xxp1;
1137	struct cvmx_pko_mem_debug8_cn61xx cnf71xx;
1138};
1139
1140union cvmx_pko_mem_debug9 {
1141	uint64_t u64;
1142	struct cvmx_pko_mem_debug9_s {
1143#ifdef __BIG_ENDIAN_BITFIELD
1144		uint64_t reserved_49_63:15;
1145		uint64_t ptrs0:17;
1146		uint64_t reserved_0_31:32;
1147#else
1148		uint64_t reserved_0_31:32;
1149		uint64_t ptrs0:17;
1150		uint64_t reserved_49_63:15;
1151#endif
1152	} s;
1153	struct cvmx_pko_mem_debug9_cn30xx {
1154#ifdef __BIG_ENDIAN_BITFIELD
1155		uint64_t reserved_28_63:36;
1156		uint64_t doorbell:20;
1157		uint64_t reserved_5_7:3;
1158		uint64_t s_tail:1;
1159		uint64_t static_q:1;
1160		uint64_t qos:3;
1161#else
1162		uint64_t qos:3;
1163		uint64_t static_q:1;
1164		uint64_t s_tail:1;
1165		uint64_t reserved_5_7:3;
1166		uint64_t doorbell:20;
1167		uint64_t reserved_28_63:36;
1168#endif
1169	} cn30xx;
1170	struct cvmx_pko_mem_debug9_cn30xx cn31xx;
1171	struct cvmx_pko_mem_debug9_cn38xx {
1172#ifdef __BIG_ENDIAN_BITFIELD
1173		uint64_t reserved_28_63:36;
1174		uint64_t doorbell:20;
1175		uint64_t reserved_6_7:2;
1176		uint64_t static_p:1;
1177		uint64_t s_tail:1;
1178		uint64_t static_q:1;
1179		uint64_t qos:3;
1180#else
1181		uint64_t qos:3;
1182		uint64_t static_q:1;
1183		uint64_t s_tail:1;
1184		uint64_t static_p:1;
1185		uint64_t reserved_6_7:2;
1186		uint64_t doorbell:20;
1187		uint64_t reserved_28_63:36;
1188#endif
1189	} cn38xx;
1190	struct cvmx_pko_mem_debug9_cn38xx cn38xxp2;
1191	struct cvmx_pko_mem_debug9_cn50xx {
1192#ifdef __BIG_ENDIAN_BITFIELD
1193		uint64_t reserved_49_63:15;
1194		uint64_t ptrs0:17;
1195		uint64_t reserved_17_31:15;
1196		uint64_t ptrs3:17;
1197#else
1198		uint64_t ptrs3:17;
1199		uint64_t reserved_17_31:15;
1200		uint64_t ptrs0:17;
1201		uint64_t reserved_49_63:15;
1202#endif
1203	} cn50xx;
1204	struct cvmx_pko_mem_debug9_cn50xx cn52xx;
1205	struct cvmx_pko_mem_debug9_cn50xx cn52xxp1;
1206	struct cvmx_pko_mem_debug9_cn50xx cn56xx;
1207	struct cvmx_pko_mem_debug9_cn50xx cn56xxp1;
1208	struct cvmx_pko_mem_debug9_cn50xx cn58xx;
1209	struct cvmx_pko_mem_debug9_cn50xx cn58xxp1;
1210	struct cvmx_pko_mem_debug9_cn50xx cn61xx;
1211	struct cvmx_pko_mem_debug9_cn50xx cn63xx;
1212	struct cvmx_pko_mem_debug9_cn50xx cn63xxp1;
1213	struct cvmx_pko_mem_debug9_cn50xx cn66xx;
1214	struct cvmx_pko_mem_debug9_cn50xx cn68xx;
1215	struct cvmx_pko_mem_debug9_cn50xx cn68xxp1;
1216	struct cvmx_pko_mem_debug9_cn50xx cnf71xx;
1217};
1218
1219union cvmx_pko_mem_iport_ptrs {
1220	uint64_t u64;
1221	struct cvmx_pko_mem_iport_ptrs_s {
1222#ifdef __BIG_ENDIAN_BITFIELD
1223		uint64_t reserved_63_63:1;
1224		uint64_t crc:1;
1225		uint64_t static_p:1;
1226		uint64_t qos_mask:8;
1227		uint64_t min_pkt:3;
1228		uint64_t reserved_31_49:19;
1229		uint64_t pipe:7;
1230		uint64_t reserved_21_23:3;
1231		uint64_t intr:5;
1232		uint64_t reserved_13_15:3;
1233		uint64_t eid:5;
1234		uint64_t reserved_7_7:1;
1235		uint64_t ipid:7;
1236#else
1237		uint64_t ipid:7;
1238		uint64_t reserved_7_7:1;
1239		uint64_t eid:5;
1240		uint64_t reserved_13_15:3;
1241		uint64_t intr:5;
1242		uint64_t reserved_21_23:3;
1243		uint64_t pipe:7;
1244		uint64_t reserved_31_49:19;
1245		uint64_t min_pkt:3;
1246		uint64_t qos_mask:8;
1247		uint64_t static_p:1;
1248		uint64_t crc:1;
1249		uint64_t reserved_63_63:1;
1250#endif
1251	} s;
1252	struct cvmx_pko_mem_iport_ptrs_s cn68xx;
1253	struct cvmx_pko_mem_iport_ptrs_s cn68xxp1;
1254};
1255
1256union cvmx_pko_mem_iport_qos {
1257	uint64_t u64;
1258	struct cvmx_pko_mem_iport_qos_s {
1259#ifdef __BIG_ENDIAN_BITFIELD
1260		uint64_t reserved_61_63:3;
1261		uint64_t qos_mask:8;
1262		uint64_t reserved_13_52:40;
1263		uint64_t eid:5;
1264		uint64_t reserved_7_7:1;
1265		uint64_t ipid:7;
1266#else
1267		uint64_t ipid:7;
1268		uint64_t reserved_7_7:1;
1269		uint64_t eid:5;
1270		uint64_t reserved_13_52:40;
1271		uint64_t qos_mask:8;
1272		uint64_t reserved_61_63:3;
1273#endif
1274	} s;
1275	struct cvmx_pko_mem_iport_qos_s cn68xx;
1276	struct cvmx_pko_mem_iport_qos_s cn68xxp1;
1277};
1278
1279union cvmx_pko_mem_iqueue_ptrs {
1280	uint64_t u64;
1281	struct cvmx_pko_mem_iqueue_ptrs_s {
1282#ifdef __BIG_ENDIAN_BITFIELD
1283		uint64_t s_tail:1;
1284		uint64_t static_p:1;
1285		uint64_t static_q:1;
1286		uint64_t qos_mask:8;
1287		uint64_t buf_ptr:31;
1288		uint64_t tail:1;
1289		uint64_t index:5;
1290		uint64_t reserved_15_15:1;
1291		uint64_t ipid:7;
1292		uint64_t qid:8;
1293#else
1294		uint64_t qid:8;
1295		uint64_t ipid:7;
1296		uint64_t reserved_15_15:1;
1297		uint64_t index:5;
1298		uint64_t tail:1;
1299		uint64_t buf_ptr:31;
1300		uint64_t qos_mask:8;
1301		uint64_t static_q:1;
1302		uint64_t static_p:1;
1303		uint64_t s_tail:1;
1304#endif
1305	} s;
1306	struct cvmx_pko_mem_iqueue_ptrs_s cn68xx;
1307	struct cvmx_pko_mem_iqueue_ptrs_s cn68xxp1;
1308};
1309
1310union cvmx_pko_mem_iqueue_qos {
1311	uint64_t u64;
1312	struct cvmx_pko_mem_iqueue_qos_s {
1313#ifdef __BIG_ENDIAN_BITFIELD
1314		uint64_t reserved_61_63:3;
1315		uint64_t qos_mask:8;
1316		uint64_t reserved_15_52:38;
1317		uint64_t ipid:7;
1318		uint64_t qid:8;
1319#else
1320		uint64_t qid:8;
1321		uint64_t ipid:7;
1322		uint64_t reserved_15_52:38;
1323		uint64_t qos_mask:8;
1324		uint64_t reserved_61_63:3;
1325#endif
1326	} s;
1327	struct cvmx_pko_mem_iqueue_qos_s cn68xx;
1328	struct cvmx_pko_mem_iqueue_qos_s cn68xxp1;
1329};
1330
1331union cvmx_pko_mem_port_ptrs {
1332	uint64_t u64;
1333	struct cvmx_pko_mem_port_ptrs_s {
1334#ifdef __BIG_ENDIAN_BITFIELD
1335		uint64_t reserved_62_63:2;
1336		uint64_t static_p:1;
1337		uint64_t qos_mask:8;
1338		uint64_t reserved_16_52:37;
1339		uint64_t bp_port:6;
1340		uint64_t eid:4;
1341		uint64_t pid:6;
1342#else
1343		uint64_t pid:6;
1344		uint64_t eid:4;
1345		uint64_t bp_port:6;
1346		uint64_t reserved_16_52:37;
1347		uint64_t qos_mask:8;
1348		uint64_t static_p:1;
1349		uint64_t reserved_62_63:2;
1350#endif
1351	} s;
1352	struct cvmx_pko_mem_port_ptrs_s cn52xx;
1353	struct cvmx_pko_mem_port_ptrs_s cn52xxp1;
1354	struct cvmx_pko_mem_port_ptrs_s cn56xx;
1355	struct cvmx_pko_mem_port_ptrs_s cn56xxp1;
1356	struct cvmx_pko_mem_port_ptrs_s cn61xx;
1357	struct cvmx_pko_mem_port_ptrs_s cn63xx;
1358	struct cvmx_pko_mem_port_ptrs_s cn63xxp1;
1359	struct cvmx_pko_mem_port_ptrs_s cn66xx;
1360	struct cvmx_pko_mem_port_ptrs_s cnf71xx;
1361};
1362
1363union cvmx_pko_mem_port_qos {
1364	uint64_t u64;
1365	struct cvmx_pko_mem_port_qos_s {
1366#ifdef __BIG_ENDIAN_BITFIELD
1367		uint64_t reserved_61_63:3;
1368		uint64_t qos_mask:8;
1369		uint64_t reserved_10_52:43;
1370		uint64_t eid:4;
1371		uint64_t pid:6;
1372#else
1373		uint64_t pid:6;
1374		uint64_t eid:4;
1375		uint64_t reserved_10_52:43;
1376		uint64_t qos_mask:8;
1377		uint64_t reserved_61_63:3;
1378#endif
1379	} s;
1380	struct cvmx_pko_mem_port_qos_s cn52xx;
1381	struct cvmx_pko_mem_port_qos_s cn52xxp1;
1382	struct cvmx_pko_mem_port_qos_s cn56xx;
1383	struct cvmx_pko_mem_port_qos_s cn56xxp1;
1384	struct cvmx_pko_mem_port_qos_s cn61xx;
1385	struct cvmx_pko_mem_port_qos_s cn63xx;
1386	struct cvmx_pko_mem_port_qos_s cn63xxp1;
1387	struct cvmx_pko_mem_port_qos_s cn66xx;
1388	struct cvmx_pko_mem_port_qos_s cnf71xx;
1389};
1390
1391union cvmx_pko_mem_port_rate0 {
1392	uint64_t u64;
1393	struct cvmx_pko_mem_port_rate0_s {
1394#ifdef __BIG_ENDIAN_BITFIELD
1395		uint64_t reserved_51_63:13;
1396		uint64_t rate_word:19;
1397		uint64_t rate_pkt:24;
1398		uint64_t reserved_7_7:1;
1399		uint64_t pid:7;
1400#else
1401		uint64_t pid:7;
1402		uint64_t reserved_7_7:1;
1403		uint64_t rate_pkt:24;
1404		uint64_t rate_word:19;
1405		uint64_t reserved_51_63:13;
1406#endif
1407	} s;
1408	struct cvmx_pko_mem_port_rate0_cn52xx {
1409#ifdef __BIG_ENDIAN_BITFIELD
1410		uint64_t reserved_51_63:13;
1411		uint64_t rate_word:19;
1412		uint64_t rate_pkt:24;
1413		uint64_t reserved_6_7:2;
1414		uint64_t pid:6;
1415#else
1416		uint64_t pid:6;
1417		uint64_t reserved_6_7:2;
1418		uint64_t rate_pkt:24;
1419		uint64_t rate_word:19;
1420		uint64_t reserved_51_63:13;
1421#endif
1422	} cn52xx;
1423	struct cvmx_pko_mem_port_rate0_cn52xx cn52xxp1;
1424	struct cvmx_pko_mem_port_rate0_cn52xx cn56xx;
1425	struct cvmx_pko_mem_port_rate0_cn52xx cn56xxp1;
1426	struct cvmx_pko_mem_port_rate0_cn52xx cn61xx;
1427	struct cvmx_pko_mem_port_rate0_cn52xx cn63xx;
1428	struct cvmx_pko_mem_port_rate0_cn52xx cn63xxp1;
1429	struct cvmx_pko_mem_port_rate0_cn52xx cn66xx;
1430	struct cvmx_pko_mem_port_rate0_s cn68xx;
1431	struct cvmx_pko_mem_port_rate0_s cn68xxp1;
1432	struct cvmx_pko_mem_port_rate0_cn52xx cnf71xx;
1433};
1434
1435union cvmx_pko_mem_port_rate1 {
1436	uint64_t u64;
1437	struct cvmx_pko_mem_port_rate1_s {
1438#ifdef __BIG_ENDIAN_BITFIELD
1439		uint64_t reserved_32_63:32;
1440		uint64_t rate_lim:24;
1441		uint64_t reserved_7_7:1;
1442		uint64_t pid:7;
1443#else
1444		uint64_t pid:7;
1445		uint64_t reserved_7_7:1;
1446		uint64_t rate_lim:24;
1447		uint64_t reserved_32_63:32;
1448#endif
1449	} s;
1450	struct cvmx_pko_mem_port_rate1_cn52xx {
1451#ifdef __BIG_ENDIAN_BITFIELD
1452		uint64_t reserved_32_63:32;
1453		uint64_t rate_lim:24;
1454		uint64_t reserved_6_7:2;
1455		uint64_t pid:6;
1456#else
1457		uint64_t pid:6;
1458		uint64_t reserved_6_7:2;
1459		uint64_t rate_lim:24;
1460		uint64_t reserved_32_63:32;
1461#endif
1462	} cn52xx;
1463	struct cvmx_pko_mem_port_rate1_cn52xx cn52xxp1;
1464	struct cvmx_pko_mem_port_rate1_cn52xx cn56xx;
1465	struct cvmx_pko_mem_port_rate1_cn52xx cn56xxp1;
1466	struct cvmx_pko_mem_port_rate1_cn52xx cn61xx;
1467	struct cvmx_pko_mem_port_rate1_cn52xx cn63xx;
1468	struct cvmx_pko_mem_port_rate1_cn52xx cn63xxp1;
1469	struct cvmx_pko_mem_port_rate1_cn52xx cn66xx;
1470	struct cvmx_pko_mem_port_rate1_s cn68xx;
1471	struct cvmx_pko_mem_port_rate1_s cn68xxp1;
1472	struct cvmx_pko_mem_port_rate1_cn52xx cnf71xx;
1473};
1474
1475union cvmx_pko_mem_queue_ptrs {
1476	uint64_t u64;
1477	struct cvmx_pko_mem_queue_ptrs_s {
1478#ifdef __BIG_ENDIAN_BITFIELD
1479		uint64_t s_tail:1;
1480		uint64_t static_p:1;
1481		uint64_t static_q:1;
1482		uint64_t qos_mask:8;
1483		uint64_t buf_ptr:36;
1484		uint64_t tail:1;
1485		uint64_t index:3;
1486		uint64_t port:6;
1487		uint64_t queue:7;
1488#else
1489		uint64_t queue:7;
1490		uint64_t port:6;
1491		uint64_t index:3;
1492		uint64_t tail:1;
1493		uint64_t buf_ptr:36;
1494		uint64_t qos_mask:8;
1495		uint64_t static_q:1;
1496		uint64_t static_p:1;
1497		uint64_t s_tail:1;
1498#endif
1499	} s;
1500	struct cvmx_pko_mem_queue_ptrs_s cn30xx;
1501	struct cvmx_pko_mem_queue_ptrs_s cn31xx;
1502	struct cvmx_pko_mem_queue_ptrs_s cn38xx;
1503	struct cvmx_pko_mem_queue_ptrs_s cn38xxp2;
1504	struct cvmx_pko_mem_queue_ptrs_s cn50xx;
1505	struct cvmx_pko_mem_queue_ptrs_s cn52xx;
1506	struct cvmx_pko_mem_queue_ptrs_s cn52xxp1;
1507	struct cvmx_pko_mem_queue_ptrs_s cn56xx;
1508	struct cvmx_pko_mem_queue_ptrs_s cn56xxp1;
1509	struct cvmx_pko_mem_queue_ptrs_s cn58xx;
1510	struct cvmx_pko_mem_queue_ptrs_s cn58xxp1;
1511	struct cvmx_pko_mem_queue_ptrs_s cn61xx;
1512	struct cvmx_pko_mem_queue_ptrs_s cn63xx;
1513	struct cvmx_pko_mem_queue_ptrs_s cn63xxp1;
1514	struct cvmx_pko_mem_queue_ptrs_s cn66xx;
1515	struct cvmx_pko_mem_queue_ptrs_s cnf71xx;
1516};
1517
1518union cvmx_pko_mem_queue_qos {
1519	uint64_t u64;
1520	struct cvmx_pko_mem_queue_qos_s {
1521#ifdef __BIG_ENDIAN_BITFIELD
1522		uint64_t reserved_61_63:3;
1523		uint64_t qos_mask:8;
1524		uint64_t reserved_13_52:40;
1525		uint64_t pid:6;
1526		uint64_t qid:7;
1527#else
1528		uint64_t qid:7;
1529		uint64_t pid:6;
1530		uint64_t reserved_13_52:40;
1531		uint64_t qos_mask:8;
1532		uint64_t reserved_61_63:3;
1533#endif
1534	} s;
1535	struct cvmx_pko_mem_queue_qos_s cn30xx;
1536	struct cvmx_pko_mem_queue_qos_s cn31xx;
1537	struct cvmx_pko_mem_queue_qos_s cn38xx;
1538	struct cvmx_pko_mem_queue_qos_s cn38xxp2;
1539	struct cvmx_pko_mem_queue_qos_s cn50xx;
1540	struct cvmx_pko_mem_queue_qos_s cn52xx;
1541	struct cvmx_pko_mem_queue_qos_s cn52xxp1;
1542	struct cvmx_pko_mem_queue_qos_s cn56xx;
1543	struct cvmx_pko_mem_queue_qos_s cn56xxp1;
1544	struct cvmx_pko_mem_queue_qos_s cn58xx;
1545	struct cvmx_pko_mem_queue_qos_s cn58xxp1;
1546	struct cvmx_pko_mem_queue_qos_s cn61xx;
1547	struct cvmx_pko_mem_queue_qos_s cn63xx;
1548	struct cvmx_pko_mem_queue_qos_s cn63xxp1;
1549	struct cvmx_pko_mem_queue_qos_s cn66xx;
1550	struct cvmx_pko_mem_queue_qos_s cnf71xx;
1551};
1552
1553union cvmx_pko_mem_throttle_int {
1554	uint64_t u64;
1555	struct cvmx_pko_mem_throttle_int_s {
1556#ifdef __BIG_ENDIAN_BITFIELD
1557		uint64_t reserved_47_63:17;
1558		uint64_t word:15;
1559		uint64_t reserved_14_31:18;
1560		uint64_t packet:6;
1561		uint64_t reserved_5_7:3;
1562		uint64_t intr:5;
1563#else
1564		uint64_t intr:5;
1565		uint64_t reserved_5_7:3;
1566		uint64_t packet:6;
1567		uint64_t reserved_14_31:18;
1568		uint64_t word:15;
1569		uint64_t reserved_47_63:17;
1570#endif
1571	} s;
1572	struct cvmx_pko_mem_throttle_int_s cn68xx;
1573	struct cvmx_pko_mem_throttle_int_s cn68xxp1;
1574};
1575
1576union cvmx_pko_mem_throttle_pipe {
1577	uint64_t u64;
1578	struct cvmx_pko_mem_throttle_pipe_s {
1579#ifdef __BIG_ENDIAN_BITFIELD
1580		uint64_t reserved_47_63:17;
1581		uint64_t word:15;
1582		uint64_t reserved_14_31:18;
1583		uint64_t packet:6;
1584		uint64_t reserved_7_7:1;
1585		uint64_t pipe:7;
1586#else
1587		uint64_t pipe:7;
1588		uint64_t reserved_7_7:1;
1589		uint64_t packet:6;
1590		uint64_t reserved_14_31:18;
1591		uint64_t word:15;
1592		uint64_t reserved_47_63:17;
1593#endif
1594	} s;
1595	struct cvmx_pko_mem_throttle_pipe_s cn68xx;
1596	struct cvmx_pko_mem_throttle_pipe_s cn68xxp1;
1597};
1598
1599union cvmx_pko_reg_bist_result {
1600	uint64_t u64;
1601	struct cvmx_pko_reg_bist_result_s {
1602#ifdef __BIG_ENDIAN_BITFIELD
1603		uint64_t reserved_0_63:64;
1604#else
1605		uint64_t reserved_0_63:64;
1606#endif
1607	} s;
1608	struct cvmx_pko_reg_bist_result_cn30xx {
1609#ifdef __BIG_ENDIAN_BITFIELD
1610		uint64_t reserved_27_63:37;
1611		uint64_t psb2:5;
1612		uint64_t count:1;
1613		uint64_t rif:1;
1614		uint64_t wif:1;
1615		uint64_t ncb:1;
1616		uint64_t out:1;
1617		uint64_t crc:1;
1618		uint64_t chk:1;
1619		uint64_t qsb:2;
1620		uint64_t qcb:2;
1621		uint64_t pdb:4;
1622		uint64_t psb:7;
1623#else
1624		uint64_t psb:7;
1625		uint64_t pdb:4;
1626		uint64_t qcb:2;
1627		uint64_t qsb:2;
1628		uint64_t chk:1;
1629		uint64_t crc:1;
1630		uint64_t out:1;
1631		uint64_t ncb:1;
1632		uint64_t wif:1;
1633		uint64_t rif:1;
1634		uint64_t count:1;
1635		uint64_t psb2:5;
1636		uint64_t reserved_27_63:37;
1637#endif
1638	} cn30xx;
1639	struct cvmx_pko_reg_bist_result_cn30xx cn31xx;
1640	struct cvmx_pko_reg_bist_result_cn30xx cn38xx;
1641	struct cvmx_pko_reg_bist_result_cn30xx cn38xxp2;
1642	struct cvmx_pko_reg_bist_result_cn50xx {
1643#ifdef __BIG_ENDIAN_BITFIELD
1644		uint64_t reserved_33_63:31;
1645		uint64_t csr:1;
1646		uint64_t iob:1;
1647		uint64_t out_crc:1;
1648		uint64_t out_ctl:3;
1649		uint64_t out_sta:1;
1650		uint64_t out_wif:1;
1651		uint64_t prt_chk:3;
1652		uint64_t prt_nxt:1;
1653		uint64_t prt_psb:6;
1654		uint64_t ncb_inb:2;
1655		uint64_t prt_qcb:2;
1656		uint64_t prt_qsb:3;
1657		uint64_t dat_dat:4;
1658		uint64_t dat_ptr:4;
1659#else
1660		uint64_t dat_ptr:4;
1661		uint64_t dat_dat:4;
1662		uint64_t prt_qsb:3;
1663		uint64_t prt_qcb:2;
1664		uint64_t ncb_inb:2;
1665		uint64_t prt_psb:6;
1666		uint64_t prt_nxt:1;
1667		uint64_t prt_chk:3;
1668		uint64_t out_wif:1;
1669		uint64_t out_sta:1;
1670		uint64_t out_ctl:3;
1671		uint64_t out_crc:1;
1672		uint64_t iob:1;
1673		uint64_t csr:1;
1674		uint64_t reserved_33_63:31;
1675#endif
1676	} cn50xx;
1677	struct cvmx_pko_reg_bist_result_cn52xx {
1678#ifdef __BIG_ENDIAN_BITFIELD
1679		uint64_t reserved_35_63:29;
1680		uint64_t csr:1;
1681		uint64_t iob:1;
1682		uint64_t out_dat:1;
1683		uint64_t out_ctl:3;
1684		uint64_t out_sta:1;
1685		uint64_t out_wif:1;
1686		uint64_t prt_chk:3;
1687		uint64_t prt_nxt:1;
1688		uint64_t prt_psb:8;
1689		uint64_t ncb_inb:2;
1690		uint64_t prt_qcb:2;
1691		uint64_t prt_qsb:3;
1692		uint64_t prt_ctl:2;
1693		uint64_t dat_dat:2;
1694		uint64_t dat_ptr:4;
1695#else
1696		uint64_t dat_ptr:4;
1697		uint64_t dat_dat:2;
1698		uint64_t prt_ctl:2;
1699		uint64_t prt_qsb:3;
1700		uint64_t prt_qcb:2;
1701		uint64_t ncb_inb:2;
1702		uint64_t prt_psb:8;
1703		uint64_t prt_nxt:1;
1704		uint64_t prt_chk:3;
1705		uint64_t out_wif:1;
1706		uint64_t out_sta:1;
1707		uint64_t out_ctl:3;
1708		uint64_t out_dat:1;
1709		uint64_t iob:1;
1710		uint64_t csr:1;
1711		uint64_t reserved_35_63:29;
1712#endif
1713	} cn52xx;
1714	struct cvmx_pko_reg_bist_result_cn52xx cn52xxp1;
1715	struct cvmx_pko_reg_bist_result_cn52xx cn56xx;
1716	struct cvmx_pko_reg_bist_result_cn52xx cn56xxp1;
1717	struct cvmx_pko_reg_bist_result_cn50xx cn58xx;
1718	struct cvmx_pko_reg_bist_result_cn50xx cn58xxp1;
1719	struct cvmx_pko_reg_bist_result_cn52xx cn61xx;
1720	struct cvmx_pko_reg_bist_result_cn52xx cn63xx;
1721	struct cvmx_pko_reg_bist_result_cn52xx cn63xxp1;
1722	struct cvmx_pko_reg_bist_result_cn52xx cn66xx;
1723	struct cvmx_pko_reg_bist_result_cn68xx {
1724#ifdef __BIG_ENDIAN_BITFIELD
1725		uint64_t reserved_36_63:28;
1726		uint64_t crc:1;
1727		uint64_t csr:1;
1728		uint64_t iob:1;
1729		uint64_t out_dat:1;
1730		uint64_t reserved_31_31:1;
1731		uint64_t out_ctl:2;
1732		uint64_t out_sta:1;
1733		uint64_t out_wif:1;
1734		uint64_t prt_chk:3;
1735		uint64_t prt_nxt:1;
1736		uint64_t prt_psb7:1;
1737		uint64_t reserved_21_21:1;
1738		uint64_t prt_psb:6;
1739		uint64_t ncb_inb:2;
1740		uint64_t prt_qcb:2;
1741		uint64_t prt_qsb:3;
1742		uint64_t prt_ctl:2;
1743		uint64_t dat_dat:2;
1744		uint64_t dat_ptr:4;
1745#else
1746		uint64_t dat_ptr:4;
1747		uint64_t dat_dat:2;
1748		uint64_t prt_ctl:2;
1749		uint64_t prt_qsb:3;
1750		uint64_t prt_qcb:2;
1751		uint64_t ncb_inb:2;
1752		uint64_t prt_psb:6;
1753		uint64_t reserved_21_21:1;
1754		uint64_t prt_psb7:1;
1755		uint64_t prt_nxt:1;
1756		uint64_t prt_chk:3;
1757		uint64_t out_wif:1;
1758		uint64_t out_sta:1;
1759		uint64_t out_ctl:2;
1760		uint64_t reserved_31_31:1;
1761		uint64_t out_dat:1;
1762		uint64_t iob:1;
1763		uint64_t csr:1;
1764		uint64_t crc:1;
1765		uint64_t reserved_36_63:28;
1766#endif
1767	} cn68xx;
1768	struct cvmx_pko_reg_bist_result_cn68xxp1 {
1769#ifdef __BIG_ENDIAN_BITFIELD
1770		uint64_t reserved_35_63:29;
1771		uint64_t csr:1;
1772		uint64_t iob:1;
1773		uint64_t out_dat:1;
1774		uint64_t reserved_31_31:1;
1775		uint64_t out_ctl:2;
1776		uint64_t out_sta:1;
1777		uint64_t out_wif:1;
1778		uint64_t prt_chk:3;
1779		uint64_t prt_nxt:1;
1780		uint64_t prt_psb7:1;
1781		uint64_t reserved_21_21:1;
1782		uint64_t prt_psb:6;
1783		uint64_t ncb_inb:2;
1784		uint64_t prt_qcb:2;
1785		uint64_t prt_qsb:3;
1786		uint64_t prt_ctl:2;
1787		uint64_t dat_dat:2;
1788		uint64_t dat_ptr:4;
1789#else
1790		uint64_t dat_ptr:4;
1791		uint64_t dat_dat:2;
1792		uint64_t prt_ctl:2;
1793		uint64_t prt_qsb:3;
1794		uint64_t prt_qcb:2;
1795		uint64_t ncb_inb:2;
1796		uint64_t prt_psb:6;
1797		uint64_t reserved_21_21:1;
1798		uint64_t prt_psb7:1;
1799		uint64_t prt_nxt:1;
1800		uint64_t prt_chk:3;
1801		uint64_t out_wif:1;
1802		uint64_t out_sta:1;
1803		uint64_t out_ctl:2;
1804		uint64_t reserved_31_31:1;
1805		uint64_t out_dat:1;
1806		uint64_t iob:1;
1807		uint64_t csr:1;
1808		uint64_t reserved_35_63:29;
1809#endif
1810	} cn68xxp1;
1811	struct cvmx_pko_reg_bist_result_cn52xx cnf71xx;
1812};
1813
1814union cvmx_pko_reg_cmd_buf {
1815	uint64_t u64;
1816	struct cvmx_pko_reg_cmd_buf_s {
1817#ifdef __BIG_ENDIAN_BITFIELD
1818		uint64_t reserved_23_63:41;
1819		uint64_t pool:3;
1820		uint64_t reserved_13_19:7;
1821		uint64_t size:13;
1822#else
1823		uint64_t size:13;
1824		uint64_t reserved_13_19:7;
1825		uint64_t pool:3;
1826		uint64_t reserved_23_63:41;
1827#endif
1828	} s;
1829	struct cvmx_pko_reg_cmd_buf_s cn30xx;
1830	struct cvmx_pko_reg_cmd_buf_s cn31xx;
1831	struct cvmx_pko_reg_cmd_buf_s cn38xx;
1832	struct cvmx_pko_reg_cmd_buf_s cn38xxp2;
1833	struct cvmx_pko_reg_cmd_buf_s cn50xx;
1834	struct cvmx_pko_reg_cmd_buf_s cn52xx;
1835	struct cvmx_pko_reg_cmd_buf_s cn52xxp1;
1836	struct cvmx_pko_reg_cmd_buf_s cn56xx;
1837	struct cvmx_pko_reg_cmd_buf_s cn56xxp1;
1838	struct cvmx_pko_reg_cmd_buf_s cn58xx;
1839	struct cvmx_pko_reg_cmd_buf_s cn58xxp1;
1840	struct cvmx_pko_reg_cmd_buf_s cn61xx;
1841	struct cvmx_pko_reg_cmd_buf_s cn63xx;
1842	struct cvmx_pko_reg_cmd_buf_s cn63xxp1;
1843	struct cvmx_pko_reg_cmd_buf_s cn66xx;
1844	struct cvmx_pko_reg_cmd_buf_s cn68xx;
1845	struct cvmx_pko_reg_cmd_buf_s cn68xxp1;
1846	struct cvmx_pko_reg_cmd_buf_s cnf71xx;
1847};
1848
1849union cvmx_pko_reg_crc_ctlx {
1850	uint64_t u64;
1851	struct cvmx_pko_reg_crc_ctlx_s {
1852#ifdef __BIG_ENDIAN_BITFIELD
1853		uint64_t reserved_2_63:62;
1854		uint64_t invres:1;
1855		uint64_t refin:1;
1856#else
1857		uint64_t refin:1;
1858		uint64_t invres:1;
1859		uint64_t reserved_2_63:62;
1860#endif
1861	} s;
1862	struct cvmx_pko_reg_crc_ctlx_s cn38xx;
1863	struct cvmx_pko_reg_crc_ctlx_s cn38xxp2;
1864	struct cvmx_pko_reg_crc_ctlx_s cn58xx;
1865	struct cvmx_pko_reg_crc_ctlx_s cn58xxp1;
1866};
1867
1868union cvmx_pko_reg_crc_enable {
1869	uint64_t u64;
1870	struct cvmx_pko_reg_crc_enable_s {
1871#ifdef __BIG_ENDIAN_BITFIELD
1872		uint64_t reserved_32_63:32;
1873		uint64_t enable:32;
1874#else
1875		uint64_t enable:32;
1876		uint64_t reserved_32_63:32;
1877#endif
1878	} s;
1879	struct cvmx_pko_reg_crc_enable_s cn38xx;
1880	struct cvmx_pko_reg_crc_enable_s cn38xxp2;
1881	struct cvmx_pko_reg_crc_enable_s cn58xx;
1882	struct cvmx_pko_reg_crc_enable_s cn58xxp1;
1883};
1884
1885union cvmx_pko_reg_crc_ivx {
1886	uint64_t u64;
1887	struct cvmx_pko_reg_crc_ivx_s {
1888#ifdef __BIG_ENDIAN_BITFIELD
1889		uint64_t reserved_32_63:32;
1890		uint64_t iv:32;
1891#else
1892		uint64_t iv:32;
1893		uint64_t reserved_32_63:32;
1894#endif
1895	} s;
1896	struct cvmx_pko_reg_crc_ivx_s cn38xx;
1897	struct cvmx_pko_reg_crc_ivx_s cn38xxp2;
1898	struct cvmx_pko_reg_crc_ivx_s cn58xx;
1899	struct cvmx_pko_reg_crc_ivx_s cn58xxp1;
1900};
1901
1902union cvmx_pko_reg_debug0 {
1903	uint64_t u64;
1904	struct cvmx_pko_reg_debug0_s {
1905#ifdef __BIG_ENDIAN_BITFIELD
1906		uint64_t asserts:64;
1907#else
1908		uint64_t asserts:64;
1909#endif
1910	} s;
1911	struct cvmx_pko_reg_debug0_cn30xx {
1912#ifdef __BIG_ENDIAN_BITFIELD
1913		uint64_t reserved_17_63:47;
1914		uint64_t asserts:17;
1915#else
1916		uint64_t asserts:17;
1917		uint64_t reserved_17_63:47;
1918#endif
1919	} cn30xx;
1920	struct cvmx_pko_reg_debug0_cn30xx cn31xx;
1921	struct cvmx_pko_reg_debug0_cn30xx cn38xx;
1922	struct cvmx_pko_reg_debug0_cn30xx cn38xxp2;
1923	struct cvmx_pko_reg_debug0_s cn50xx;
1924	struct cvmx_pko_reg_debug0_s cn52xx;
1925	struct cvmx_pko_reg_debug0_s cn52xxp1;
1926	struct cvmx_pko_reg_debug0_s cn56xx;
1927	struct cvmx_pko_reg_debug0_s cn56xxp1;
1928	struct cvmx_pko_reg_debug0_s cn58xx;
1929	struct cvmx_pko_reg_debug0_s cn58xxp1;
1930	struct cvmx_pko_reg_debug0_s cn61xx;
1931	struct cvmx_pko_reg_debug0_s cn63xx;
1932	struct cvmx_pko_reg_debug0_s cn63xxp1;
1933	struct cvmx_pko_reg_debug0_s cn66xx;
1934	struct cvmx_pko_reg_debug0_s cn68xx;
1935	struct cvmx_pko_reg_debug0_s cn68xxp1;
1936	struct cvmx_pko_reg_debug0_s cnf71xx;
1937};
1938
1939union cvmx_pko_reg_debug1 {
1940	uint64_t u64;
1941	struct cvmx_pko_reg_debug1_s {
1942#ifdef __BIG_ENDIAN_BITFIELD
1943		uint64_t asserts:64;
1944#else
1945		uint64_t asserts:64;
1946#endif
1947	} s;
1948	struct cvmx_pko_reg_debug1_s cn50xx;
1949	struct cvmx_pko_reg_debug1_s cn52xx;
1950	struct cvmx_pko_reg_debug1_s cn52xxp1;
1951	struct cvmx_pko_reg_debug1_s cn56xx;
1952	struct cvmx_pko_reg_debug1_s cn56xxp1;
1953	struct cvmx_pko_reg_debug1_s cn58xx;
1954	struct cvmx_pko_reg_debug1_s cn58xxp1;
1955	struct cvmx_pko_reg_debug1_s cn61xx;
1956	struct cvmx_pko_reg_debug1_s cn63xx;
1957	struct cvmx_pko_reg_debug1_s cn63xxp1;
1958	struct cvmx_pko_reg_debug1_s cn66xx;
1959	struct cvmx_pko_reg_debug1_s cn68xx;
1960	struct cvmx_pko_reg_debug1_s cn68xxp1;
1961	struct cvmx_pko_reg_debug1_s cnf71xx;
1962};
1963
1964union cvmx_pko_reg_debug2 {
1965	uint64_t u64;
1966	struct cvmx_pko_reg_debug2_s {
1967#ifdef __BIG_ENDIAN_BITFIELD
1968		uint64_t asserts:64;
1969#else
1970		uint64_t asserts:64;
1971#endif
1972	} s;
1973	struct cvmx_pko_reg_debug2_s cn50xx;
1974	struct cvmx_pko_reg_debug2_s cn52xx;
1975	struct cvmx_pko_reg_debug2_s cn52xxp1;
1976	struct cvmx_pko_reg_debug2_s cn56xx;
1977	struct cvmx_pko_reg_debug2_s cn56xxp1;
1978	struct cvmx_pko_reg_debug2_s cn58xx;
1979	struct cvmx_pko_reg_debug2_s cn58xxp1;
1980	struct cvmx_pko_reg_debug2_s cn61xx;
1981	struct cvmx_pko_reg_debug2_s cn63xx;
1982	struct cvmx_pko_reg_debug2_s cn63xxp1;
1983	struct cvmx_pko_reg_debug2_s cn66xx;
1984	struct cvmx_pko_reg_debug2_s cn68xx;
1985	struct cvmx_pko_reg_debug2_s cn68xxp1;
1986	struct cvmx_pko_reg_debug2_s cnf71xx;
1987};
1988
1989union cvmx_pko_reg_debug3 {
1990	uint64_t u64;
1991	struct cvmx_pko_reg_debug3_s {
1992#ifdef __BIG_ENDIAN_BITFIELD
1993		uint64_t asserts:64;
1994#else
1995		uint64_t asserts:64;
1996#endif
1997	} s;
1998	struct cvmx_pko_reg_debug3_s cn50xx;
1999	struct cvmx_pko_reg_debug3_s cn52xx;
2000	struct cvmx_pko_reg_debug3_s cn52xxp1;
2001	struct cvmx_pko_reg_debug3_s cn56xx;
2002	struct cvmx_pko_reg_debug3_s cn56xxp1;
2003	struct cvmx_pko_reg_debug3_s cn58xx;
2004	struct cvmx_pko_reg_debug3_s cn58xxp1;
2005	struct cvmx_pko_reg_debug3_s cn61xx;
2006	struct cvmx_pko_reg_debug3_s cn63xx;
2007	struct cvmx_pko_reg_debug3_s cn63xxp1;
2008	struct cvmx_pko_reg_debug3_s cn66xx;
2009	struct cvmx_pko_reg_debug3_s cn68xx;
2010	struct cvmx_pko_reg_debug3_s cn68xxp1;
2011	struct cvmx_pko_reg_debug3_s cnf71xx;
2012};
2013
2014union cvmx_pko_reg_debug4 {
2015	uint64_t u64;
2016	struct cvmx_pko_reg_debug4_s {
2017#ifdef __BIG_ENDIAN_BITFIELD
2018		uint64_t asserts:64;
2019#else
2020		uint64_t asserts:64;
2021#endif
2022	} s;
2023	struct cvmx_pko_reg_debug4_s cn68xx;
2024	struct cvmx_pko_reg_debug4_s cn68xxp1;
2025};
2026
2027union cvmx_pko_reg_engine_inflight {
2028	uint64_t u64;
2029	struct cvmx_pko_reg_engine_inflight_s {
2030#ifdef __BIG_ENDIAN_BITFIELD
2031		uint64_t engine15:4;
2032		uint64_t engine14:4;
2033		uint64_t engine13:4;
2034		uint64_t engine12:4;
2035		uint64_t engine11:4;
2036		uint64_t engine10:4;
2037		uint64_t engine9:4;
2038		uint64_t engine8:4;
2039		uint64_t engine7:4;
2040		uint64_t engine6:4;
2041		uint64_t engine5:4;
2042		uint64_t engine4:4;
2043		uint64_t engine3:4;
2044		uint64_t engine2:4;
2045		uint64_t engine1:4;
2046		uint64_t engine0:4;
2047#else
2048		uint64_t engine0:4;
2049		uint64_t engine1:4;
2050		uint64_t engine2:4;
2051		uint64_t engine3:4;
2052		uint64_t engine4:4;
2053		uint64_t engine5:4;
2054		uint64_t engine6:4;
2055		uint64_t engine7:4;
2056		uint64_t engine8:4;
2057		uint64_t engine9:4;
2058		uint64_t engine10:4;
2059		uint64_t engine11:4;
2060		uint64_t engine12:4;
2061		uint64_t engine13:4;
2062		uint64_t engine14:4;
2063		uint64_t engine15:4;
2064#endif
2065	} s;
2066	struct cvmx_pko_reg_engine_inflight_cn52xx {
2067#ifdef __BIG_ENDIAN_BITFIELD
2068		uint64_t reserved_40_63:24;
2069		uint64_t engine9:4;
2070		uint64_t engine8:4;
2071		uint64_t engine7:4;
2072		uint64_t engine6:4;
2073		uint64_t engine5:4;
2074		uint64_t engine4:4;
2075		uint64_t engine3:4;
2076		uint64_t engine2:4;
2077		uint64_t engine1:4;
2078		uint64_t engine0:4;
2079#else
2080		uint64_t engine0:4;
2081		uint64_t engine1:4;
2082		uint64_t engine2:4;
2083		uint64_t engine3:4;
2084		uint64_t engine4:4;
2085		uint64_t engine5:4;
2086		uint64_t engine6:4;
2087		uint64_t engine7:4;
2088		uint64_t engine8:4;
2089		uint64_t engine9:4;
2090		uint64_t reserved_40_63:24;
2091#endif
2092	} cn52xx;
2093	struct cvmx_pko_reg_engine_inflight_cn52xx cn52xxp1;
2094	struct cvmx_pko_reg_engine_inflight_cn52xx cn56xx;
2095	struct cvmx_pko_reg_engine_inflight_cn52xx cn56xxp1;
2096	struct cvmx_pko_reg_engine_inflight_cn61xx {
2097#ifdef __BIG_ENDIAN_BITFIELD
2098		uint64_t reserved_56_63:8;
2099		uint64_t engine13:4;
2100		uint64_t engine12:4;
2101		uint64_t engine11:4;
2102		uint64_t engine10:4;
2103		uint64_t engine9:4;
2104		uint64_t engine8:4;
2105		uint64_t engine7:4;
2106		uint64_t engine6:4;
2107		uint64_t engine5:4;
2108		uint64_t engine4:4;
2109		uint64_t engine3:4;
2110		uint64_t engine2:4;
2111		uint64_t engine1:4;
2112		uint64_t engine0:4;
2113#else
2114		uint64_t engine0:4;
2115		uint64_t engine1:4;
2116		uint64_t engine2:4;
2117		uint64_t engine3:4;
2118		uint64_t engine4:4;
2119		uint64_t engine5:4;
2120		uint64_t engine6:4;
2121		uint64_t engine7:4;
2122		uint64_t engine8:4;
2123		uint64_t engine9:4;
2124		uint64_t engine10:4;
2125		uint64_t engine11:4;
2126		uint64_t engine12:4;
2127		uint64_t engine13:4;
2128		uint64_t reserved_56_63:8;
2129#endif
2130	} cn61xx;
2131	struct cvmx_pko_reg_engine_inflight_cn63xx {
2132#ifdef __BIG_ENDIAN_BITFIELD
2133		uint64_t reserved_48_63:16;
2134		uint64_t engine11:4;
2135		uint64_t engine10:4;
2136		uint64_t engine9:4;
2137		uint64_t engine8:4;
2138		uint64_t engine7:4;
2139		uint64_t engine6:4;
2140		uint64_t engine5:4;
2141		uint64_t engine4:4;
2142		uint64_t engine3:4;
2143		uint64_t engine2:4;
2144		uint64_t engine1:4;
2145		uint64_t engine0:4;
2146#else
2147		uint64_t engine0:4;
2148		uint64_t engine1:4;
2149		uint64_t engine2:4;
2150		uint64_t engine3:4;
2151		uint64_t engine4:4;
2152		uint64_t engine5:4;
2153		uint64_t engine6:4;
2154		uint64_t engine7:4;
2155		uint64_t engine8:4;
2156		uint64_t engine9:4;
2157		uint64_t engine10:4;
2158		uint64_t engine11:4;
2159		uint64_t reserved_48_63:16;
2160#endif
2161	} cn63xx;
2162	struct cvmx_pko_reg_engine_inflight_cn63xx cn63xxp1;
2163	struct cvmx_pko_reg_engine_inflight_cn61xx cn66xx;
2164	struct cvmx_pko_reg_engine_inflight_s cn68xx;
2165	struct cvmx_pko_reg_engine_inflight_s cn68xxp1;
2166	struct cvmx_pko_reg_engine_inflight_cn61xx cnf71xx;
2167};
2168
2169union cvmx_pko_reg_engine_inflight1 {
2170	uint64_t u64;
2171	struct cvmx_pko_reg_engine_inflight1_s {
2172#ifdef __BIG_ENDIAN_BITFIELD
2173		uint64_t reserved_16_63:48;
2174		uint64_t engine19:4;
2175		uint64_t engine18:4;
2176		uint64_t engine17:4;
2177		uint64_t engine16:4;
2178#else
2179		uint64_t engine16:4;
2180		uint64_t engine17:4;
2181		uint64_t engine18:4;
2182		uint64_t engine19:4;
2183		uint64_t reserved_16_63:48;
2184#endif
2185	} s;
2186	struct cvmx_pko_reg_engine_inflight1_s cn68xx;
2187	struct cvmx_pko_reg_engine_inflight1_s cn68xxp1;
2188};
2189
2190union cvmx_pko_reg_engine_storagex {
2191	uint64_t u64;
2192	struct cvmx_pko_reg_engine_storagex_s {
2193#ifdef __BIG_ENDIAN_BITFIELD
2194		uint64_t engine15:4;
2195		uint64_t engine14:4;
2196		uint64_t engine13:4;
2197		uint64_t engine12:4;
2198		uint64_t engine11:4;
2199		uint64_t engine10:4;
2200		uint64_t engine9:4;
2201		uint64_t engine8:4;
2202		uint64_t engine7:4;
2203		uint64_t engine6:4;
2204		uint64_t engine5:4;
2205		uint64_t engine4:4;
2206		uint64_t engine3:4;
2207		uint64_t engine2:4;
2208		uint64_t engine1:4;
2209		uint64_t engine0:4;
2210#else
2211		uint64_t engine0:4;
2212		uint64_t engine1:4;
2213		uint64_t engine2:4;
2214		uint64_t engine3:4;
2215		uint64_t engine4:4;
2216		uint64_t engine5:4;
2217		uint64_t engine6:4;
2218		uint64_t engine7:4;
2219		uint64_t engine8:4;
2220		uint64_t engine9:4;
2221		uint64_t engine10:4;
2222		uint64_t engine11:4;
2223		uint64_t engine12:4;
2224		uint64_t engine13:4;
2225		uint64_t engine14:4;
2226		uint64_t engine15:4;
2227#endif
2228	} s;
2229	struct cvmx_pko_reg_engine_storagex_s cn68xx;
2230	struct cvmx_pko_reg_engine_storagex_s cn68xxp1;
2231};
2232
2233union cvmx_pko_reg_engine_thresh {
2234	uint64_t u64;
2235	struct cvmx_pko_reg_engine_thresh_s {
2236#ifdef __BIG_ENDIAN_BITFIELD
2237		uint64_t reserved_20_63:44;
2238		uint64_t mask:20;
2239#else
2240		uint64_t mask:20;
2241		uint64_t reserved_20_63:44;
2242#endif
2243	} s;
2244	struct cvmx_pko_reg_engine_thresh_cn52xx {
2245#ifdef __BIG_ENDIAN_BITFIELD
2246		uint64_t reserved_10_63:54;
2247		uint64_t mask:10;
2248#else
2249		uint64_t mask:10;
2250		uint64_t reserved_10_63:54;
2251#endif
2252	} cn52xx;
2253	struct cvmx_pko_reg_engine_thresh_cn52xx cn52xxp1;
2254	struct cvmx_pko_reg_engine_thresh_cn52xx cn56xx;
2255	struct cvmx_pko_reg_engine_thresh_cn52xx cn56xxp1;
2256	struct cvmx_pko_reg_engine_thresh_cn61xx {
2257#ifdef __BIG_ENDIAN_BITFIELD
2258		uint64_t reserved_14_63:50;
2259		uint64_t mask:14;
2260#else
2261		uint64_t mask:14;
2262		uint64_t reserved_14_63:50;
2263#endif
2264	} cn61xx;
2265	struct cvmx_pko_reg_engine_thresh_cn63xx {
2266#ifdef __BIG_ENDIAN_BITFIELD
2267		uint64_t reserved_12_63:52;
2268		uint64_t mask:12;
2269#else
2270		uint64_t mask:12;
2271		uint64_t reserved_12_63:52;
2272#endif
2273	} cn63xx;
2274	struct cvmx_pko_reg_engine_thresh_cn63xx cn63xxp1;
2275	struct cvmx_pko_reg_engine_thresh_cn61xx cn66xx;
2276	struct cvmx_pko_reg_engine_thresh_s cn68xx;
2277	struct cvmx_pko_reg_engine_thresh_s cn68xxp1;
2278	struct cvmx_pko_reg_engine_thresh_cn61xx cnf71xx;
2279};
2280
2281union cvmx_pko_reg_error {
2282	uint64_t u64;
2283	struct cvmx_pko_reg_error_s {
2284#ifdef __BIG_ENDIAN_BITFIELD
2285		uint64_t reserved_4_63:60;
2286		uint64_t loopback:1;
2287		uint64_t currzero:1;
2288		uint64_t doorbell:1;
2289		uint64_t parity:1;
2290#else
2291		uint64_t parity:1;
2292		uint64_t doorbell:1;
2293		uint64_t currzero:1;
2294		uint64_t loopback:1;
2295		uint64_t reserved_4_63:60;
2296#endif
2297	} s;
2298	struct cvmx_pko_reg_error_cn30xx {
2299#ifdef __BIG_ENDIAN_BITFIELD
2300		uint64_t reserved_2_63:62;
2301		uint64_t doorbell:1;
2302		uint64_t parity:1;
2303#else
2304		uint64_t parity:1;
2305		uint64_t doorbell:1;
2306		uint64_t reserved_2_63:62;
2307#endif
2308	} cn30xx;
2309	struct cvmx_pko_reg_error_cn30xx cn31xx;
2310	struct cvmx_pko_reg_error_cn30xx cn38xx;
2311	struct cvmx_pko_reg_error_cn30xx cn38xxp2;
2312	struct cvmx_pko_reg_error_cn50xx {
2313#ifdef __BIG_ENDIAN_BITFIELD
2314		uint64_t reserved_3_63:61;
2315		uint64_t currzero:1;
2316		uint64_t doorbell:1;
2317		uint64_t parity:1;
2318#else
2319		uint64_t parity:1;
2320		uint64_t doorbell:1;
2321		uint64_t currzero:1;
2322		uint64_t reserved_3_63:61;
2323#endif
2324	} cn50xx;
2325	struct cvmx_pko_reg_error_cn50xx cn52xx;
2326	struct cvmx_pko_reg_error_cn50xx cn52xxp1;
2327	struct cvmx_pko_reg_error_cn50xx cn56xx;
2328	struct cvmx_pko_reg_error_cn50xx cn56xxp1;
2329	struct cvmx_pko_reg_error_cn50xx cn58xx;
2330	struct cvmx_pko_reg_error_cn50xx cn58xxp1;
2331	struct cvmx_pko_reg_error_cn50xx cn61xx;
2332	struct cvmx_pko_reg_error_cn50xx cn63xx;
2333	struct cvmx_pko_reg_error_cn50xx cn63xxp1;
2334	struct cvmx_pko_reg_error_cn50xx cn66xx;
2335	struct cvmx_pko_reg_error_s cn68xx;
2336	struct cvmx_pko_reg_error_s cn68xxp1;
2337	struct cvmx_pko_reg_error_cn50xx cnf71xx;
2338};
2339
2340union cvmx_pko_reg_flags {
2341	uint64_t u64;
2342	struct cvmx_pko_reg_flags_s {
2343#ifdef __BIG_ENDIAN_BITFIELD
2344		uint64_t reserved_9_63:55;
2345		uint64_t dis_perf3:1;
2346		uint64_t dis_perf2:1;
2347		uint64_t dis_perf1:1;
2348		uint64_t dis_perf0:1;
2349		uint64_t ena_throttle:1;
2350		uint64_t reset:1;
2351		uint64_t store_be:1;
2352		uint64_t ena_dwb:1;
2353		uint64_t ena_pko:1;
2354#else
2355		uint64_t ena_pko:1;
2356		uint64_t ena_dwb:1;
2357		uint64_t store_be:1;
2358		uint64_t reset:1;
2359		uint64_t ena_throttle:1;
2360		uint64_t dis_perf0:1;
2361		uint64_t dis_perf1:1;
2362		uint64_t dis_perf2:1;
2363		uint64_t dis_perf3:1;
2364		uint64_t reserved_9_63:55;
2365#endif
2366	} s;
2367	struct cvmx_pko_reg_flags_cn30xx {
2368#ifdef __BIG_ENDIAN_BITFIELD
2369		uint64_t reserved_4_63:60;
2370		uint64_t reset:1;
2371		uint64_t store_be:1;
2372		uint64_t ena_dwb:1;
2373		uint64_t ena_pko:1;
2374#else
2375		uint64_t ena_pko:1;
2376		uint64_t ena_dwb:1;
2377		uint64_t store_be:1;
2378		uint64_t reset:1;
2379		uint64_t reserved_4_63:60;
2380#endif
2381	} cn30xx;
2382	struct cvmx_pko_reg_flags_cn30xx cn31xx;
2383	struct cvmx_pko_reg_flags_cn30xx cn38xx;
2384	struct cvmx_pko_reg_flags_cn30xx cn38xxp2;
2385	struct cvmx_pko_reg_flags_cn30xx cn50xx;
2386	struct cvmx_pko_reg_flags_cn30xx cn52xx;
2387	struct cvmx_pko_reg_flags_cn30xx cn52xxp1;
2388	struct cvmx_pko_reg_flags_cn30xx cn56xx;
2389	struct cvmx_pko_reg_flags_cn30xx cn56xxp1;
2390	struct cvmx_pko_reg_flags_cn30xx cn58xx;
2391	struct cvmx_pko_reg_flags_cn30xx cn58xxp1;
2392	struct cvmx_pko_reg_flags_cn61xx {
2393#ifdef __BIG_ENDIAN_BITFIELD
2394		uint64_t reserved_9_63:55;
2395		uint64_t dis_perf3:1;
2396		uint64_t dis_perf2:1;
2397		uint64_t reserved_4_6:3;
2398		uint64_t reset:1;
2399		uint64_t store_be:1;
2400		uint64_t ena_dwb:1;
2401		uint64_t ena_pko:1;
2402#else
2403		uint64_t ena_pko:1;
2404		uint64_t ena_dwb:1;
2405		uint64_t store_be:1;
2406		uint64_t reset:1;
2407		uint64_t reserved_4_6:3;
2408		uint64_t dis_perf2:1;
2409		uint64_t dis_perf3:1;
2410		uint64_t reserved_9_63:55;
2411#endif
2412	} cn61xx;
2413	struct cvmx_pko_reg_flags_cn30xx cn63xx;
2414	struct cvmx_pko_reg_flags_cn30xx cn63xxp1;
2415	struct cvmx_pko_reg_flags_cn61xx cn66xx;
2416	struct cvmx_pko_reg_flags_s cn68xx;
2417	struct cvmx_pko_reg_flags_cn68xxp1 {
2418#ifdef __BIG_ENDIAN_BITFIELD
2419		uint64_t reserved_7_63:57;
2420		uint64_t dis_perf1:1;
2421		uint64_t dis_perf0:1;
2422		uint64_t ena_throttle:1;
2423		uint64_t reset:1;
2424		uint64_t store_be:1;
2425		uint64_t ena_dwb:1;
2426		uint64_t ena_pko:1;
2427#else
2428		uint64_t ena_pko:1;
2429		uint64_t ena_dwb:1;
2430		uint64_t store_be:1;
2431		uint64_t reset:1;
2432		uint64_t ena_throttle:1;
2433		uint64_t dis_perf0:1;
2434		uint64_t dis_perf1:1;
2435		uint64_t reserved_7_63:57;
2436#endif
2437	} cn68xxp1;
2438	struct cvmx_pko_reg_flags_cn61xx cnf71xx;
2439};
2440
2441union cvmx_pko_reg_gmx_port_mode {
2442	uint64_t u64;
2443	struct cvmx_pko_reg_gmx_port_mode_s {
2444#ifdef __BIG_ENDIAN_BITFIELD
2445		uint64_t reserved_6_63:58;
2446		uint64_t mode1:3;
2447		uint64_t mode0:3;
2448#else
2449		uint64_t mode0:3;
2450		uint64_t mode1:3;
2451		uint64_t reserved_6_63:58;
2452#endif
2453	} s;
2454	struct cvmx_pko_reg_gmx_port_mode_s cn30xx;
2455	struct cvmx_pko_reg_gmx_port_mode_s cn31xx;
2456	struct cvmx_pko_reg_gmx_port_mode_s cn38xx;
2457	struct cvmx_pko_reg_gmx_port_mode_s cn38xxp2;
2458	struct cvmx_pko_reg_gmx_port_mode_s cn50xx;
2459	struct cvmx_pko_reg_gmx_port_mode_s cn52xx;
2460	struct cvmx_pko_reg_gmx_port_mode_s cn52xxp1;
2461	struct cvmx_pko_reg_gmx_port_mode_s cn56xx;
2462	struct cvmx_pko_reg_gmx_port_mode_s cn56xxp1;
2463	struct cvmx_pko_reg_gmx_port_mode_s cn58xx;
2464	struct cvmx_pko_reg_gmx_port_mode_s cn58xxp1;
2465	struct cvmx_pko_reg_gmx_port_mode_s cn61xx;
2466	struct cvmx_pko_reg_gmx_port_mode_s cn63xx;
2467	struct cvmx_pko_reg_gmx_port_mode_s cn63xxp1;
2468	struct cvmx_pko_reg_gmx_port_mode_s cn66xx;
2469	struct cvmx_pko_reg_gmx_port_mode_s cnf71xx;
2470};
2471
2472union cvmx_pko_reg_int_mask {
2473	uint64_t u64;
2474	struct cvmx_pko_reg_int_mask_s {
2475#ifdef __BIG_ENDIAN_BITFIELD
2476		uint64_t reserved_4_63:60;
2477		uint64_t loopback:1;
2478		uint64_t currzero:1;
2479		uint64_t doorbell:1;
2480		uint64_t parity:1;
2481#else
2482		uint64_t parity:1;
2483		uint64_t doorbell:1;
2484		uint64_t currzero:1;
2485		uint64_t loopback:1;
2486		uint64_t reserved_4_63:60;
2487#endif
2488	} s;
2489	struct cvmx_pko_reg_int_mask_cn30xx {
2490#ifdef __BIG_ENDIAN_BITFIELD
2491		uint64_t reserved_2_63:62;
2492		uint64_t doorbell:1;
2493		uint64_t parity:1;
2494#else
2495		uint64_t parity:1;
2496		uint64_t doorbell:1;
2497		uint64_t reserved_2_63:62;
2498#endif
2499	} cn30xx;
2500	struct cvmx_pko_reg_int_mask_cn30xx cn31xx;
2501	struct cvmx_pko_reg_int_mask_cn30xx cn38xx;
2502	struct cvmx_pko_reg_int_mask_cn30xx cn38xxp2;
2503	struct cvmx_pko_reg_int_mask_cn50xx {
2504#ifdef __BIG_ENDIAN_BITFIELD
2505		uint64_t reserved_3_63:61;
2506		uint64_t currzero:1;
2507		uint64_t doorbell:1;
2508		uint64_t parity:1;
2509#else
2510		uint64_t parity:1;
2511		uint64_t doorbell:1;
2512		uint64_t currzero:1;
2513		uint64_t reserved_3_63:61;
2514#endif
2515	} cn50xx;
2516	struct cvmx_pko_reg_int_mask_cn50xx cn52xx;
2517	struct cvmx_pko_reg_int_mask_cn50xx cn52xxp1;
2518	struct cvmx_pko_reg_int_mask_cn50xx cn56xx;
2519	struct cvmx_pko_reg_int_mask_cn50xx cn56xxp1;
2520	struct cvmx_pko_reg_int_mask_cn50xx cn58xx;
2521	struct cvmx_pko_reg_int_mask_cn50xx cn58xxp1;
2522	struct cvmx_pko_reg_int_mask_cn50xx cn61xx;
2523	struct cvmx_pko_reg_int_mask_cn50xx cn63xx;
2524	struct cvmx_pko_reg_int_mask_cn50xx cn63xxp1;
2525	struct cvmx_pko_reg_int_mask_cn50xx cn66xx;
2526	struct cvmx_pko_reg_int_mask_s cn68xx;
2527	struct cvmx_pko_reg_int_mask_s cn68xxp1;
2528	struct cvmx_pko_reg_int_mask_cn50xx cnf71xx;
2529};
2530
2531union cvmx_pko_reg_loopback_bpid {
2532	uint64_t u64;
2533	struct cvmx_pko_reg_loopback_bpid_s {
2534#ifdef __BIG_ENDIAN_BITFIELD
2535		uint64_t reserved_59_63:5;
2536		uint64_t bpid7:6;
2537		uint64_t reserved_52_52:1;
2538		uint64_t bpid6:6;
2539		uint64_t reserved_45_45:1;
2540		uint64_t bpid5:6;
2541		uint64_t reserved_38_38:1;
2542		uint64_t bpid4:6;
2543		uint64_t reserved_31_31:1;
2544		uint64_t bpid3:6;
2545		uint64_t reserved_24_24:1;
2546		uint64_t bpid2:6;
2547		uint64_t reserved_17_17:1;
2548		uint64_t bpid1:6;
2549		uint64_t reserved_10_10:1;
2550		uint64_t bpid0:6;
2551		uint64_t reserved_0_3:4;
2552#else
2553		uint64_t reserved_0_3:4;
2554		uint64_t bpid0:6;
2555		uint64_t reserved_10_10:1;
2556		uint64_t bpid1:6;
2557		uint64_t reserved_17_17:1;
2558		uint64_t bpid2:6;
2559		uint64_t reserved_24_24:1;
2560		uint64_t bpid3:6;
2561		uint64_t reserved_31_31:1;
2562		uint64_t bpid4:6;
2563		uint64_t reserved_38_38:1;
2564		uint64_t bpid5:6;
2565		uint64_t reserved_45_45:1;
2566		uint64_t bpid6:6;
2567		uint64_t reserved_52_52:1;
2568		uint64_t bpid7:6;
2569		uint64_t reserved_59_63:5;
2570#endif
2571	} s;
2572	struct cvmx_pko_reg_loopback_bpid_s cn68xx;
2573	struct cvmx_pko_reg_loopback_bpid_s cn68xxp1;
2574};
2575
2576union cvmx_pko_reg_loopback_pkind {
2577	uint64_t u64;
2578	struct cvmx_pko_reg_loopback_pkind_s {
2579#ifdef __BIG_ENDIAN_BITFIELD
2580		uint64_t reserved_59_63:5;
2581		uint64_t pkind7:6;
2582		uint64_t reserved_52_52:1;
2583		uint64_t pkind6:6;
2584		uint64_t reserved_45_45:1;
2585		uint64_t pkind5:6;
2586		uint64_t reserved_38_38:1;
2587		uint64_t pkind4:6;
2588		uint64_t reserved_31_31:1;
2589		uint64_t pkind3:6;
2590		uint64_t reserved_24_24:1;
2591		uint64_t pkind2:6;
2592		uint64_t reserved_17_17:1;
2593		uint64_t pkind1:6;
2594		uint64_t reserved_10_10:1;
2595		uint64_t pkind0:6;
2596		uint64_t num_ports:4;
2597#else
2598		uint64_t num_ports:4;
2599		uint64_t pkind0:6;
2600		uint64_t reserved_10_10:1;
2601		uint64_t pkind1:6;
2602		uint64_t reserved_17_17:1;
2603		uint64_t pkind2:6;
2604		uint64_t reserved_24_24:1;
2605		uint64_t pkind3:6;
2606		uint64_t reserved_31_31:1;
2607		uint64_t pkind4:6;
2608		uint64_t reserved_38_38:1;
2609		uint64_t pkind5:6;
2610		uint64_t reserved_45_45:1;
2611		uint64_t pkind6:6;
2612		uint64_t reserved_52_52:1;
2613		uint64_t pkind7:6;
2614		uint64_t reserved_59_63:5;
2615#endif
2616	} s;
2617	struct cvmx_pko_reg_loopback_pkind_s cn68xx;
2618	struct cvmx_pko_reg_loopback_pkind_s cn68xxp1;
2619};
2620
2621union cvmx_pko_reg_min_pkt {
2622	uint64_t u64;
2623	struct cvmx_pko_reg_min_pkt_s {
2624#ifdef __BIG_ENDIAN_BITFIELD
2625		uint64_t size7:8;
2626		uint64_t size6:8;
2627		uint64_t size5:8;
2628		uint64_t size4:8;
2629		uint64_t size3:8;
2630		uint64_t size2:8;
2631		uint64_t size1:8;
2632		uint64_t size0:8;
2633#else
2634		uint64_t size0:8;
2635		uint64_t size1:8;
2636		uint64_t size2:8;
2637		uint64_t size3:8;
2638		uint64_t size4:8;
2639		uint64_t size5:8;
2640		uint64_t size6:8;
2641		uint64_t size7:8;
2642#endif
2643	} s;
2644	struct cvmx_pko_reg_min_pkt_s cn68xx;
2645	struct cvmx_pko_reg_min_pkt_s cn68xxp1;
2646};
2647
2648union cvmx_pko_reg_preempt {
2649	uint64_t u64;
2650	struct cvmx_pko_reg_preempt_s {
2651#ifdef __BIG_ENDIAN_BITFIELD
2652		uint64_t reserved_16_63:48;
2653		uint64_t min_size:16;
2654#else
2655		uint64_t min_size:16;
2656		uint64_t reserved_16_63:48;
2657#endif
2658	} s;
2659	struct cvmx_pko_reg_preempt_s cn52xx;
2660	struct cvmx_pko_reg_preempt_s cn52xxp1;
2661	struct cvmx_pko_reg_preempt_s cn56xx;
2662	struct cvmx_pko_reg_preempt_s cn56xxp1;
2663	struct cvmx_pko_reg_preempt_s cn61xx;
2664	struct cvmx_pko_reg_preempt_s cn63xx;
2665	struct cvmx_pko_reg_preempt_s cn63xxp1;
2666	struct cvmx_pko_reg_preempt_s cn66xx;
2667	struct cvmx_pko_reg_preempt_s cn68xx;
2668	struct cvmx_pko_reg_preempt_s cn68xxp1;
2669	struct cvmx_pko_reg_preempt_s cnf71xx;
2670};
2671
2672union cvmx_pko_reg_queue_mode {
2673	uint64_t u64;
2674	struct cvmx_pko_reg_queue_mode_s {
2675#ifdef __BIG_ENDIAN_BITFIELD
2676		uint64_t reserved_2_63:62;
2677		uint64_t mode:2;
2678#else
2679		uint64_t mode:2;
2680		uint64_t reserved_2_63:62;
2681#endif
2682	} s;
2683	struct cvmx_pko_reg_queue_mode_s cn30xx;
2684	struct cvmx_pko_reg_queue_mode_s cn31xx;
2685	struct cvmx_pko_reg_queue_mode_s cn38xx;
2686	struct cvmx_pko_reg_queue_mode_s cn38xxp2;
2687	struct cvmx_pko_reg_queue_mode_s cn50xx;
2688	struct cvmx_pko_reg_queue_mode_s cn52xx;
2689	struct cvmx_pko_reg_queue_mode_s cn52xxp1;
2690	struct cvmx_pko_reg_queue_mode_s cn56xx;
2691	struct cvmx_pko_reg_queue_mode_s cn56xxp1;
2692	struct cvmx_pko_reg_queue_mode_s cn58xx;
2693	struct cvmx_pko_reg_queue_mode_s cn58xxp1;
2694	struct cvmx_pko_reg_queue_mode_s cn61xx;
2695	struct cvmx_pko_reg_queue_mode_s cn63xx;
2696	struct cvmx_pko_reg_queue_mode_s cn63xxp1;
2697	struct cvmx_pko_reg_queue_mode_s cn66xx;
2698	struct cvmx_pko_reg_queue_mode_s cn68xx;
2699	struct cvmx_pko_reg_queue_mode_s cn68xxp1;
2700	struct cvmx_pko_reg_queue_mode_s cnf71xx;
2701};
2702
2703union cvmx_pko_reg_queue_preempt {
2704	uint64_t u64;
2705	struct cvmx_pko_reg_queue_preempt_s {
2706#ifdef __BIG_ENDIAN_BITFIELD
2707		uint64_t reserved_2_63:62;
2708		uint64_t preemptee:1;
2709		uint64_t preempter:1;
2710#else
2711		uint64_t preempter:1;
2712		uint64_t preemptee:1;
2713		uint64_t reserved_2_63:62;
2714#endif
2715	} s;
2716	struct cvmx_pko_reg_queue_preempt_s cn52xx;
2717	struct cvmx_pko_reg_queue_preempt_s cn52xxp1;
2718	struct cvmx_pko_reg_queue_preempt_s cn56xx;
2719	struct cvmx_pko_reg_queue_preempt_s cn56xxp1;
2720	struct cvmx_pko_reg_queue_preempt_s cn61xx;
2721	struct cvmx_pko_reg_queue_preempt_s cn63xx;
2722	struct cvmx_pko_reg_queue_preempt_s cn63xxp1;
2723	struct cvmx_pko_reg_queue_preempt_s cn66xx;
2724	struct cvmx_pko_reg_queue_preempt_s cn68xx;
2725	struct cvmx_pko_reg_queue_preempt_s cn68xxp1;
2726	struct cvmx_pko_reg_queue_preempt_s cnf71xx;
2727};
2728
2729union cvmx_pko_reg_queue_ptrs1 {
2730	uint64_t u64;
2731	struct cvmx_pko_reg_queue_ptrs1_s {
2732#ifdef __BIG_ENDIAN_BITFIELD
2733		uint64_t reserved_2_63:62;
2734		uint64_t idx3:1;
2735		uint64_t qid7:1;
2736#else
2737		uint64_t qid7:1;
2738		uint64_t idx3:1;
2739		uint64_t reserved_2_63:62;
2740#endif
2741	} s;
2742	struct cvmx_pko_reg_queue_ptrs1_s cn50xx;
2743	struct cvmx_pko_reg_queue_ptrs1_s cn52xx;
2744	struct cvmx_pko_reg_queue_ptrs1_s cn52xxp1;
2745	struct cvmx_pko_reg_queue_ptrs1_s cn56xx;
2746	struct cvmx_pko_reg_queue_ptrs1_s cn56xxp1;
2747	struct cvmx_pko_reg_queue_ptrs1_s cn58xx;
2748	struct cvmx_pko_reg_queue_ptrs1_s cn58xxp1;
2749	struct cvmx_pko_reg_queue_ptrs1_s cn61xx;
2750	struct cvmx_pko_reg_queue_ptrs1_s cn63xx;
2751	struct cvmx_pko_reg_queue_ptrs1_s cn63xxp1;
2752	struct cvmx_pko_reg_queue_ptrs1_s cn66xx;
2753	struct cvmx_pko_reg_queue_ptrs1_s cnf71xx;
2754};
2755
2756union cvmx_pko_reg_read_idx {
2757	uint64_t u64;
2758	struct cvmx_pko_reg_read_idx_s {
2759#ifdef __BIG_ENDIAN_BITFIELD
2760		uint64_t reserved_16_63:48;
2761		uint64_t inc:8;
2762		uint64_t index:8;
2763#else
2764		uint64_t index:8;
2765		uint64_t inc:8;
2766		uint64_t reserved_16_63:48;
2767#endif
2768	} s;
2769	struct cvmx_pko_reg_read_idx_s cn30xx;
2770	struct cvmx_pko_reg_read_idx_s cn31xx;
2771	struct cvmx_pko_reg_read_idx_s cn38xx;
2772	struct cvmx_pko_reg_read_idx_s cn38xxp2;
2773	struct cvmx_pko_reg_read_idx_s cn50xx;
2774	struct cvmx_pko_reg_read_idx_s cn52xx;
2775	struct cvmx_pko_reg_read_idx_s cn52xxp1;
2776	struct cvmx_pko_reg_read_idx_s cn56xx;
2777	struct cvmx_pko_reg_read_idx_s cn56xxp1;
2778	struct cvmx_pko_reg_read_idx_s cn58xx;
2779	struct cvmx_pko_reg_read_idx_s cn58xxp1;
2780	struct cvmx_pko_reg_read_idx_s cn61xx;
2781	struct cvmx_pko_reg_read_idx_s cn63xx;
2782	struct cvmx_pko_reg_read_idx_s cn63xxp1;
2783	struct cvmx_pko_reg_read_idx_s cn66xx;
2784	struct cvmx_pko_reg_read_idx_s cn68xx;
2785	struct cvmx_pko_reg_read_idx_s cn68xxp1;
2786	struct cvmx_pko_reg_read_idx_s cnf71xx;
2787};
2788
2789union cvmx_pko_reg_throttle {
2790	uint64_t u64;
2791	struct cvmx_pko_reg_throttle_s {
2792#ifdef __BIG_ENDIAN_BITFIELD
2793		uint64_t reserved_32_63:32;
2794		uint64_t int_mask:32;
2795#else
2796		uint64_t int_mask:32;
2797		uint64_t reserved_32_63:32;
2798#endif
2799	} s;
2800	struct cvmx_pko_reg_throttle_s cn68xx;
2801	struct cvmx_pko_reg_throttle_s cn68xxp1;
2802};
2803
2804union cvmx_pko_reg_timestamp {
2805	uint64_t u64;
2806	struct cvmx_pko_reg_timestamp_s {
2807#ifdef __BIG_ENDIAN_BITFIELD
2808		uint64_t reserved_4_63:60;
2809		uint64_t wqe_word:4;
2810#else
2811		uint64_t wqe_word:4;
2812		uint64_t reserved_4_63:60;
2813#endif
2814	} s;
2815	struct cvmx_pko_reg_timestamp_s cn61xx;
2816	struct cvmx_pko_reg_timestamp_s cn63xx;
2817	struct cvmx_pko_reg_timestamp_s cn63xxp1;
2818	struct cvmx_pko_reg_timestamp_s cn66xx;
2819	struct cvmx_pko_reg_timestamp_s cn68xx;
2820	struct cvmx_pko_reg_timestamp_s cn68xxp1;
2821	struct cvmx_pko_reg_timestamp_s cnf71xx;
2822};
2823
2824#endif