Linux Audio

Check our new training course

Loading...
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-2010 Cavium Networks
   8 *
   9 * This file is free software; you can redistribute it and/or modify
  10 * it under the terms of the GNU General Public License, Version 2, as
  11 * published by the Free Software Foundation.
  12 *
  13 * This file is distributed in the hope that it will be useful, but
  14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
  15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
  16 * NONINFRINGEMENT.  See the GNU General Public License for more
  17 * details.
  18 *
  19 * You should have received a copy of the GNU General Public License
  20 * along with this file; if not, write to the Free Software
  21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  22 * or visit http://www.gnu.org/licenses/.
  23 *
  24 * This file may also be available under a different license from Cavium.
  25 * Contact Cavium Networks for more information
  26 ***********************license end**************************************/
  27
  28#ifndef __CVMX_L2C_DEFS_H__
  29#define __CVMX_L2C_DEFS_H__
  30
  31#define CVMX_L2C_BIG_CTL (CVMX_ADD_IO_SEG(0x0001180080800030ull))
  32#define CVMX_L2C_BST (CVMX_ADD_IO_SEG(0x00011800808007F8ull))
  33#define CVMX_L2C_BST0 (CVMX_ADD_IO_SEG(0x00011800800007F8ull))
  34#define CVMX_L2C_BST1 (CVMX_ADD_IO_SEG(0x00011800800007F0ull))
  35#define CVMX_L2C_BST2 (CVMX_ADD_IO_SEG(0x00011800800007E8ull))
  36#define CVMX_L2C_BST_MEMX(block_id) (CVMX_ADD_IO_SEG(0x0001180080C007F8ull))
  37#define CVMX_L2C_BST_TDTX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007F0ull))
  38#define CVMX_L2C_BST_TTGX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007F8ull))
  39#define CVMX_L2C_CFG (CVMX_ADD_IO_SEG(0x0001180080000000ull))
  40#define CVMX_L2C_COP0_MAPX(offset) (CVMX_ADD_IO_SEG(0x0001180080940000ull) + ((offset) & 16383) * 8)
  41#define CVMX_L2C_CTL (CVMX_ADD_IO_SEG(0x0001180080800000ull))
  42#define CVMX_L2C_DBG (CVMX_ADD_IO_SEG(0x0001180080000030ull))
  43#define CVMX_L2C_DUT (CVMX_ADD_IO_SEG(0x0001180080000050ull))
  44#define CVMX_L2C_DUT_MAPX(offset) (CVMX_ADD_IO_SEG(0x0001180080E00000ull) + ((offset) & 2047) * 8)
  45#define CVMX_L2C_ERR_TDTX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007E0ull))
  46#define CVMX_L2C_ERR_TTGX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007E8ull))
  47#define CVMX_L2C_ERR_VBFX(block_id) (CVMX_ADD_IO_SEG(0x0001180080C007F0ull))
  48#define CVMX_L2C_ERR_XMC (CVMX_ADD_IO_SEG(0x00011800808007D8ull))
  49#define CVMX_L2C_GRPWRR0 (CVMX_ADD_IO_SEG(0x00011800800000C8ull))
  50#define CVMX_L2C_GRPWRR1 (CVMX_ADD_IO_SEG(0x00011800800000D0ull))
  51#define CVMX_L2C_INT_EN (CVMX_ADD_IO_SEG(0x0001180080000100ull))
  52#define CVMX_L2C_INT_ENA (CVMX_ADD_IO_SEG(0x0001180080800020ull))
  53#define CVMX_L2C_INT_REG (CVMX_ADD_IO_SEG(0x0001180080800018ull))
  54#define CVMX_L2C_INT_STAT (CVMX_ADD_IO_SEG(0x00011800800000F8ull))
  55#define CVMX_L2C_IOCX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800420ull))
  56#define CVMX_L2C_IORX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800428ull))
  57#define CVMX_L2C_LCKBASE (CVMX_ADD_IO_SEG(0x0001180080000058ull))
  58#define CVMX_L2C_LCKOFF (CVMX_ADD_IO_SEG(0x0001180080000060ull))
  59#define CVMX_L2C_LFB0 (CVMX_ADD_IO_SEG(0x0001180080000038ull))
  60#define CVMX_L2C_LFB1 (CVMX_ADD_IO_SEG(0x0001180080000040ull))
  61#define CVMX_L2C_LFB2 (CVMX_ADD_IO_SEG(0x0001180080000048ull))
  62#define CVMX_L2C_LFB3 (CVMX_ADD_IO_SEG(0x00011800800000B8ull))
  63#define CVMX_L2C_OOB (CVMX_ADD_IO_SEG(0x00011800800000D8ull))
  64#define CVMX_L2C_OOB1 (CVMX_ADD_IO_SEG(0x00011800800000E0ull))
  65#define CVMX_L2C_OOB2 (CVMX_ADD_IO_SEG(0x00011800800000E8ull))
  66#define CVMX_L2C_OOB3 (CVMX_ADD_IO_SEG(0x00011800800000F0ull))
  67#define CVMX_L2C_PFC0 CVMX_L2C_PFCX(0)
  68#define CVMX_L2C_PFC1 CVMX_L2C_PFCX(1)
  69#define CVMX_L2C_PFC2 CVMX_L2C_PFCX(2)
  70#define CVMX_L2C_PFC3 CVMX_L2C_PFCX(3)
  71#define CVMX_L2C_PFCTL (CVMX_ADD_IO_SEG(0x0001180080000090ull))
  72#define CVMX_L2C_PFCX(offset) (CVMX_ADD_IO_SEG(0x0001180080000098ull) + ((offset) & 3) * 8)
  73#define CVMX_L2C_PPGRP (CVMX_ADD_IO_SEG(0x00011800800000C0ull))
  74#define CVMX_L2C_QOS_IOBX(block_id) (CVMX_ADD_IO_SEG(0x0001180080880200ull))
  75#define CVMX_L2C_QOS_PPX(offset) (CVMX_ADD_IO_SEG(0x0001180080880000ull) + ((offset) & 7) * 8)
  76#define CVMX_L2C_QOS_WGT (CVMX_ADD_IO_SEG(0x0001180080800008ull))
  77#define CVMX_L2C_RSCX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800410ull))
  78#define CVMX_L2C_RSDX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800418ull))
  79#define CVMX_L2C_SPAR0 (CVMX_ADD_IO_SEG(0x0001180080000068ull))
  80#define CVMX_L2C_SPAR1 (CVMX_ADD_IO_SEG(0x0001180080000070ull))
  81#define CVMX_L2C_SPAR2 (CVMX_ADD_IO_SEG(0x0001180080000078ull))
  82#define CVMX_L2C_SPAR3 (CVMX_ADD_IO_SEG(0x0001180080000080ull))
  83#define CVMX_L2C_SPAR4 (CVMX_ADD_IO_SEG(0x0001180080000088ull))
  84#define CVMX_L2C_TADX_ECC0(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00018ull))
  85#define CVMX_L2C_TADX_ECC1(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00020ull))
  86#define CVMX_L2C_TADX_IEN(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00000ull))
  87#define CVMX_L2C_TADX_INT(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00028ull))
  88#define CVMX_L2C_TADX_PFC0(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00400ull))
  89#define CVMX_L2C_TADX_PFC1(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00408ull))
  90#define CVMX_L2C_TADX_PFC2(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00410ull))
  91#define CVMX_L2C_TADX_PFC3(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00418ull))
  92#define CVMX_L2C_TADX_PRF(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00008ull))
  93#define CVMX_L2C_TADX_TAG(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00010ull))
  94#define CVMX_L2C_VER_ID (CVMX_ADD_IO_SEG(0x00011800808007E0ull))
  95#define CVMX_L2C_VER_IOB (CVMX_ADD_IO_SEG(0x00011800808007F0ull))
  96#define CVMX_L2C_VER_MSC (CVMX_ADD_IO_SEG(0x00011800808007D0ull))
  97#define CVMX_L2C_VER_PP (CVMX_ADD_IO_SEG(0x00011800808007E8ull))
  98#define CVMX_L2C_VIRTID_IOBX(block_id) (CVMX_ADD_IO_SEG(0x00011800808C0200ull))
  99#define CVMX_L2C_VIRTID_PPX(offset) (CVMX_ADD_IO_SEG(0x00011800808C0000ull) + ((offset) & 7) * 8)
 100#define CVMX_L2C_VRT_CTL (CVMX_ADD_IO_SEG(0x0001180080800010ull))
 101#define CVMX_L2C_VRT_MEMX(offset) (CVMX_ADD_IO_SEG(0x0001180080900000ull) + ((offset) & 1023) * 8)
 102#define CVMX_L2C_WPAR_IOBX(block_id) (CVMX_ADD_IO_SEG(0x0001180080840200ull))
 103#define CVMX_L2C_WPAR_PPX(offset) (CVMX_ADD_IO_SEG(0x0001180080840000ull) + ((offset) & 7) * 8)
 104#define CVMX_L2C_XMCX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800400ull))
 105#define CVMX_L2C_XMC_CMD (CVMX_ADD_IO_SEG(0x0001180080800028ull))
 106#define CVMX_L2C_XMDX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800408ull))
 107
 108union cvmx_l2c_big_ctl {
 109	uint64_t u64;
 110	struct cvmx_l2c_big_ctl_s {
 
 111		uint64_t reserved_8_63:56;
 112		uint64_t maxdram:4;
 113		uint64_t reserved_1_3:3;
 114		uint64_t disable:1;
 
 
 
 
 
 
 115	} s;
 
 116	struct cvmx_l2c_big_ctl_s cn63xx;
 
 
 
 
 117};
 118
 119union cvmx_l2c_bst {
 120	uint64_t u64;
 121	struct cvmx_l2c_bst_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 122		uint64_t reserved_38_63:26;
 123		uint64_t dutfl:6;
 124		uint64_t reserved_17_31:15;
 125		uint64_t ioccmdfl:1;
 126		uint64_t reserved_13_15:3;
 127		uint64_t iocdatfl:1;
 128		uint64_t reserved_9_11:3;
 129		uint64_t dutresfl:1;
 130		uint64_t reserved_5_7:3;
 131		uint64_t vrtfl:1;
 132		uint64_t reserved_1_3:3;
 133		uint64_t tdffl:1;
 134	} s;
 135	struct cvmx_l2c_bst_s cn63xx;
 136	struct cvmx_l2c_bst_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 137};
 138
 139union cvmx_l2c_bst0 {
 140	uint64_t u64;
 141	struct cvmx_l2c_bst0_s {
 
 142		uint64_t reserved_24_63:40;
 143		uint64_t dtbnk:1;
 144		uint64_t wlb_msk:4;
 145		uint64_t dtcnt:13;
 146		uint64_t dt:1;
 147		uint64_t stin_msk:1;
 148		uint64_t wlb_dat:4;
 
 
 
 
 
 
 
 
 
 149	} s;
 150	struct cvmx_l2c_bst0_cn30xx {
 
 151		uint64_t reserved_23_63:41;
 152		uint64_t wlb_msk:4;
 153		uint64_t reserved_15_18:4;
 154		uint64_t dtcnt:9;
 155		uint64_t dt:1;
 156		uint64_t reserved_4_4:1;
 157		uint64_t wlb_dat:4;
 
 
 
 
 
 
 
 
 
 158	} cn30xx;
 159	struct cvmx_l2c_bst0_cn31xx {
 
 160		uint64_t reserved_23_63:41;
 161		uint64_t wlb_msk:4;
 162		uint64_t reserved_16_18:3;
 163		uint64_t dtcnt:10;
 164		uint64_t dt:1;
 165		uint64_t stin_msk:1;
 166		uint64_t wlb_dat:4;
 
 
 
 
 
 
 
 
 
 167	} cn31xx;
 168	struct cvmx_l2c_bst0_cn38xx {
 
 169		uint64_t reserved_19_63:45;
 170		uint64_t dtcnt:13;
 171		uint64_t dt:1;
 172		uint64_t stin_msk:1;
 173		uint64_t wlb_dat:4;
 
 
 
 
 
 
 
 174	} cn38xx;
 175	struct cvmx_l2c_bst0_cn38xx cn38xxp2;
 176	struct cvmx_l2c_bst0_cn50xx {
 
 177		uint64_t reserved_24_63:40;
 178		uint64_t dtbnk:1;
 179		uint64_t wlb_msk:4;
 180		uint64_t reserved_16_18:3;
 181		uint64_t dtcnt:10;
 182		uint64_t dt:1;
 183		uint64_t stin_msk:1;
 184		uint64_t wlb_dat:4;
 
 
 
 
 
 
 
 
 
 
 185	} cn50xx;
 186	struct cvmx_l2c_bst0_cn50xx cn52xx;
 187	struct cvmx_l2c_bst0_cn50xx cn52xxp1;
 188	struct cvmx_l2c_bst0_s cn56xx;
 189	struct cvmx_l2c_bst0_s cn56xxp1;
 190	struct cvmx_l2c_bst0_s cn58xx;
 191	struct cvmx_l2c_bst0_s cn58xxp1;
 192};
 193
 194union cvmx_l2c_bst1 {
 195	uint64_t u64;
 196	struct cvmx_l2c_bst1_s {
 
 197		uint64_t reserved_9_63:55;
 198		uint64_t l2t:9;
 
 
 
 
 199	} s;
 200	struct cvmx_l2c_bst1_cn30xx {
 
 201		uint64_t reserved_16_63:48;
 202		uint64_t vwdf:4;
 203		uint64_t lrf:2;
 204		uint64_t vab_vwcf:1;
 205		uint64_t reserved_5_8:4;
 206		uint64_t l2t:5;
 
 
 
 
 
 
 
 
 207	} cn30xx;
 208	struct cvmx_l2c_bst1_cn30xx cn31xx;
 209	struct cvmx_l2c_bst1_cn38xx {
 
 210		uint64_t reserved_16_63:48;
 211		uint64_t vwdf:4;
 212		uint64_t lrf:2;
 213		uint64_t vab_vwcf:1;
 214		uint64_t l2t:9;
 
 
 
 
 
 
 
 215	} cn38xx;
 216	struct cvmx_l2c_bst1_cn38xx cn38xxp2;
 217	struct cvmx_l2c_bst1_cn38xx cn50xx;
 218	struct cvmx_l2c_bst1_cn52xx {
 
 219		uint64_t reserved_19_63:45;
 220		uint64_t plc2:1;
 221		uint64_t plc1:1;
 222		uint64_t plc0:1;
 223		uint64_t vwdf:4;
 224		uint64_t reserved_11_11:1;
 225		uint64_t ilc:1;
 226		uint64_t vab_vwcf:1;
 227		uint64_t l2t:9;
 
 
 
 
 
 
 
 
 
 
 
 228	} cn52xx;
 229	struct cvmx_l2c_bst1_cn52xx cn52xxp1;
 230	struct cvmx_l2c_bst1_cn56xx {
 
 231		uint64_t reserved_24_63:40;
 232		uint64_t plc2:1;
 233		uint64_t plc1:1;
 234		uint64_t plc0:1;
 235		uint64_t ilc:1;
 236		uint64_t vwdf1:4;
 237		uint64_t vwdf0:4;
 238		uint64_t vab_vwcf1:1;
 239		uint64_t reserved_10_10:1;
 240		uint64_t vab_vwcf0:1;
 241		uint64_t l2t:9;
 
 
 
 
 
 
 
 
 
 
 
 
 
 242	} cn56xx;
 243	struct cvmx_l2c_bst1_cn56xx cn56xxp1;
 244	struct cvmx_l2c_bst1_cn38xx cn58xx;
 245	struct cvmx_l2c_bst1_cn38xx cn58xxp1;
 246};
 247
 248union cvmx_l2c_bst2 {
 249	uint64_t u64;
 250	struct cvmx_l2c_bst2_s {
 
 251		uint64_t reserved_16_63:48;
 252		uint64_t mrb:4;
 253		uint64_t reserved_4_11:8;
 254		uint64_t ipcbst:1;
 255		uint64_t picbst:1;
 256		uint64_t xrdmsk:1;
 257		uint64_t xrddat:1;
 
 
 
 
 
 
 
 
 
 258	} s;
 259	struct cvmx_l2c_bst2_cn30xx {
 
 260		uint64_t reserved_16_63:48;
 261		uint64_t mrb:4;
 262		uint64_t rmdf:4;
 263		uint64_t reserved_4_7:4;
 264		uint64_t ipcbst:1;
 265		uint64_t reserved_2_2:1;
 266		uint64_t xrdmsk:1;
 267		uint64_t xrddat:1;
 
 
 
 
 
 
 
 
 
 
 268	} cn30xx;
 269	struct cvmx_l2c_bst2_cn30xx cn31xx;
 270	struct cvmx_l2c_bst2_cn38xx {
 
 271		uint64_t reserved_16_63:48;
 272		uint64_t mrb:4;
 273		uint64_t rmdf:4;
 274		uint64_t rhdf:4;
 275		uint64_t ipcbst:1;
 276		uint64_t picbst:1;
 277		uint64_t xrdmsk:1;
 278		uint64_t xrddat:1;
 
 
 
 
 
 
 
 
 
 
 279	} cn38xx;
 280	struct cvmx_l2c_bst2_cn38xx cn38xxp2;
 281	struct cvmx_l2c_bst2_cn30xx cn50xx;
 282	struct cvmx_l2c_bst2_cn30xx cn52xx;
 283	struct cvmx_l2c_bst2_cn30xx cn52xxp1;
 284	struct cvmx_l2c_bst2_cn56xx {
 
 285		uint64_t reserved_16_63:48;
 286		uint64_t mrb:4;
 287		uint64_t rmdb:4;
 288		uint64_t rhdb:4;
 289		uint64_t ipcbst:1;
 290		uint64_t picbst:1;
 291		uint64_t xrdmsk:1;
 292		uint64_t xrddat:1;
 
 
 
 
 
 
 
 
 
 
 293	} cn56xx;
 294	struct cvmx_l2c_bst2_cn56xx cn56xxp1;
 295	struct cvmx_l2c_bst2_cn56xx cn58xx;
 296	struct cvmx_l2c_bst2_cn56xx cn58xxp1;
 297};
 298
 299union cvmx_l2c_bst_memx {
 300	uint64_t u64;
 301	struct cvmx_l2c_bst_memx_s {
 
 302		uint64_t start_bist:1;
 303		uint64_t clear_bist:1;
 304		uint64_t reserved_5_61:57;
 305		uint64_t rdffl:1;
 306		uint64_t vbffl:4;
 
 
 
 
 
 
 
 307	} s;
 
 308	struct cvmx_l2c_bst_memx_s cn63xx;
 309	struct cvmx_l2c_bst_memx_s cn63xxp1;
 
 
 
 
 310};
 311
 312union cvmx_l2c_bst_tdtx {
 313	uint64_t u64;
 314	struct cvmx_l2c_bst_tdtx_s {
 
 315		uint64_t reserved_32_63:32;
 316		uint64_t fbfrspfl:8;
 317		uint64_t sbffl:8;
 318		uint64_t fbffl:8;
 319		uint64_t l2dfl:8;
 
 
 
 
 
 
 
 320	} s;
 
 321	struct cvmx_l2c_bst_tdtx_s cn63xx;
 322	struct cvmx_l2c_bst_tdtx_cn63xxp1 {
 
 323		uint64_t reserved_24_63:40;
 324		uint64_t sbffl:8;
 325		uint64_t fbffl:8;
 326		uint64_t l2dfl:8;
 
 
 
 
 
 
 327	} cn63xxp1;
 
 
 
 
 328};
 329
 330union cvmx_l2c_bst_ttgx {
 331	uint64_t u64;
 332	struct cvmx_l2c_bst_ttgx_s {
 
 333		uint64_t reserved_17_63:47;
 334		uint64_t lrufl:1;
 335		uint64_t tagfl:16;
 
 
 
 
 
 336	} s;
 
 337	struct cvmx_l2c_bst_ttgx_s cn63xx;
 338	struct cvmx_l2c_bst_ttgx_s cn63xxp1;
 
 
 
 
 339};
 340
 341union cvmx_l2c_cfg {
 342	uint64_t u64;
 343	struct cvmx_l2c_cfg_s {
 
 344		uint64_t reserved_20_63:44;
 345		uint64_t bstrun:1;
 346		uint64_t lbist:1;
 347		uint64_t xor_bank:1;
 348		uint64_t dpres1:1;
 349		uint64_t dpres0:1;
 350		uint64_t dfill_dis:1;
 351		uint64_t fpexp:4;
 352		uint64_t fpempty:1;
 353		uint64_t fpen:1;
 354		uint64_t idxalias:1;
 355		uint64_t mwf_crd:4;
 356		uint64_t rsp_arb_mode:1;
 357		uint64_t rfb_arb_mode:1;
 358		uint64_t lrf_arb_mode:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 359	} s;
 360	struct cvmx_l2c_cfg_cn30xx {
 
 361		uint64_t reserved_14_63:50;
 362		uint64_t fpexp:4;
 363		uint64_t fpempty:1;
 364		uint64_t fpen:1;
 365		uint64_t idxalias:1;
 366		uint64_t mwf_crd:4;
 367		uint64_t rsp_arb_mode:1;
 368		uint64_t rfb_arb_mode:1;
 369		uint64_t lrf_arb_mode:1;
 
 
 
 
 
 
 
 
 
 
 
 370	} cn30xx;
 371	struct cvmx_l2c_cfg_cn30xx cn31xx;
 372	struct cvmx_l2c_cfg_cn30xx cn38xx;
 373	struct cvmx_l2c_cfg_cn30xx cn38xxp2;
 374	struct cvmx_l2c_cfg_cn50xx {
 
 375		uint64_t reserved_20_63:44;
 376		uint64_t bstrun:1;
 377		uint64_t lbist:1;
 378		uint64_t reserved_14_17:4;
 379		uint64_t fpexp:4;
 380		uint64_t fpempty:1;
 381		uint64_t fpen:1;
 382		uint64_t idxalias:1;
 383		uint64_t mwf_crd:4;
 384		uint64_t rsp_arb_mode:1;
 385		uint64_t rfb_arb_mode:1;
 386		uint64_t lrf_arb_mode:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 387	} cn50xx;
 388	struct cvmx_l2c_cfg_cn50xx cn52xx;
 389	struct cvmx_l2c_cfg_cn50xx cn52xxp1;
 390	struct cvmx_l2c_cfg_s cn56xx;
 391	struct cvmx_l2c_cfg_s cn56xxp1;
 392	struct cvmx_l2c_cfg_cn58xx {
 
 393		uint64_t reserved_20_63:44;
 394		uint64_t bstrun:1;
 395		uint64_t lbist:1;
 396		uint64_t reserved_15_17:3;
 397		uint64_t dfill_dis:1;
 398		uint64_t fpexp:4;
 399		uint64_t fpempty:1;
 400		uint64_t fpen:1;
 401		uint64_t idxalias:1;
 402		uint64_t mwf_crd:4;
 403		uint64_t rsp_arb_mode:1;
 404		uint64_t rfb_arb_mode:1;
 405		uint64_t lrf_arb_mode:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 406	} cn58xx;
 407	struct cvmx_l2c_cfg_cn58xxp1 {
 
 408		uint64_t reserved_15_63:49;
 409		uint64_t dfill_dis:1;
 410		uint64_t fpexp:4;
 411		uint64_t fpempty:1;
 412		uint64_t fpen:1;
 413		uint64_t idxalias:1;
 414		uint64_t mwf_crd:4;
 415		uint64_t rsp_arb_mode:1;
 416		uint64_t rfb_arb_mode:1;
 417		uint64_t lrf_arb_mode:1;
 
 
 
 
 
 
 
 
 
 
 
 
 418	} cn58xxp1;
 419};
 420
 421union cvmx_l2c_cop0_mapx {
 422	uint64_t u64;
 423	struct cvmx_l2c_cop0_mapx_s {
 
 424		uint64_t data:64;
 
 
 
 425	} s;
 
 426	struct cvmx_l2c_cop0_mapx_s cn63xx;
 427	struct cvmx_l2c_cop0_mapx_s cn63xxp1;
 
 
 
 
 428};
 429
 430union cvmx_l2c_ctl {
 431	uint64_t u64;
 432	struct cvmx_l2c_ctl_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 433		uint64_t reserved_28_63:36;
 434		uint64_t disstgl2i:1;
 435		uint64_t l2dfsbe:1;
 436		uint64_t l2dfdbe:1;
 437		uint64_t discclk:1;
 438		uint64_t maxvab:4;
 439		uint64_t maxlfb:4;
 440		uint64_t rsp_arb_mode:1;
 441		uint64_t xmc_arb_mode:1;
 442		uint64_t ef_ena:1;
 443		uint64_t ef_cnt:7;
 444		uint64_t vab_thresh:4;
 445		uint64_t disecc:1;
 446		uint64_t disidxalias:1;
 447	} s;
 448	struct cvmx_l2c_ctl_s cn63xx;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 449	struct cvmx_l2c_ctl_cn63xxp1 {
 
 450		uint64_t reserved_25_63:39;
 451		uint64_t discclk:1;
 452		uint64_t maxvab:4;
 453		uint64_t maxlfb:4;
 454		uint64_t rsp_arb_mode:1;
 455		uint64_t xmc_arb_mode:1;
 456		uint64_t ef_ena:1;
 457		uint64_t ef_cnt:7;
 458		uint64_t vab_thresh:4;
 459		uint64_t disecc:1;
 460		uint64_t disidxalias:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 461	} cn63xxp1;
 
 
 
 
 462};
 463
 464union cvmx_l2c_dbg {
 465	uint64_t u64;
 466	struct cvmx_l2c_dbg_s {
 
 467		uint64_t reserved_15_63:49;
 468		uint64_t lfb_enum:4;
 469		uint64_t lfb_dmp:1;
 470		uint64_t ppnum:4;
 471		uint64_t set:3;
 472		uint64_t finv:1;
 473		uint64_t l2d:1;
 474		uint64_t l2t:1;
 
 
 
 
 
 
 
 
 
 
 475	} s;
 476	struct cvmx_l2c_dbg_cn30xx {
 
 477		uint64_t reserved_13_63:51;
 478		uint64_t lfb_enum:2;
 479		uint64_t lfb_dmp:1;
 480		uint64_t reserved_7_9:3;
 481		uint64_t ppnum:1;
 482		uint64_t reserved_5_5:1;
 483		uint64_t set:2;
 484		uint64_t finv:1;
 485		uint64_t l2d:1;
 486		uint64_t l2t:1;
 
 
 
 
 
 
 
 
 
 
 
 
 487	} cn30xx;
 488	struct cvmx_l2c_dbg_cn31xx {
 
 489		uint64_t reserved_14_63:50;
 490		uint64_t lfb_enum:3;
 491		uint64_t lfb_dmp:1;
 492		uint64_t reserved_7_9:3;
 493		uint64_t ppnum:1;
 494		uint64_t reserved_5_5:1;
 495		uint64_t set:2;
 496		uint64_t finv:1;
 497		uint64_t l2d:1;
 498		uint64_t l2t:1;
 
 
 
 
 
 
 
 
 
 
 
 
 499	} cn31xx;
 500	struct cvmx_l2c_dbg_s cn38xx;
 501	struct cvmx_l2c_dbg_s cn38xxp2;
 502	struct cvmx_l2c_dbg_cn50xx {
 
 503		uint64_t reserved_14_63:50;
 504		uint64_t lfb_enum:3;
 505		uint64_t lfb_dmp:1;
 506		uint64_t reserved_7_9:3;
 507		uint64_t ppnum:1;
 508		uint64_t set:3;
 509		uint64_t finv:1;
 510		uint64_t l2d:1;
 511		uint64_t l2t:1;
 
 
 
 
 
 
 
 
 
 
 
 512	} cn50xx;
 513	struct cvmx_l2c_dbg_cn52xx {
 
 514		uint64_t reserved_14_63:50;
 515		uint64_t lfb_enum:3;
 516		uint64_t lfb_dmp:1;
 517		uint64_t reserved_8_9:2;
 518		uint64_t ppnum:2;
 519		uint64_t set:3;
 520		uint64_t finv:1;
 521		uint64_t l2d:1;
 522		uint64_t l2t:1;
 
 
 
 
 
 
 
 
 
 
 
 523	} cn52xx;
 524	struct cvmx_l2c_dbg_cn52xx cn52xxp1;
 525	struct cvmx_l2c_dbg_s cn56xx;
 526	struct cvmx_l2c_dbg_s cn56xxp1;
 527	struct cvmx_l2c_dbg_s cn58xx;
 528	struct cvmx_l2c_dbg_s cn58xxp1;
 529};
 530
 531union cvmx_l2c_dut {
 532	uint64_t u64;
 533	struct cvmx_l2c_dut_s {
 
 534		uint64_t reserved_32_63:32;
 535		uint64_t dtena:1;
 536		uint64_t reserved_30_30:1;
 537		uint64_t dt_vld:1;
 538		uint64_t dt_tag:29;
 
 
 
 
 
 
 
 539	} s;
 540	struct cvmx_l2c_dut_s cn30xx;
 541	struct cvmx_l2c_dut_s cn31xx;
 542	struct cvmx_l2c_dut_s cn38xx;
 543	struct cvmx_l2c_dut_s cn38xxp2;
 544	struct cvmx_l2c_dut_s cn50xx;
 545	struct cvmx_l2c_dut_s cn52xx;
 546	struct cvmx_l2c_dut_s cn52xxp1;
 547	struct cvmx_l2c_dut_s cn56xx;
 548	struct cvmx_l2c_dut_s cn56xxp1;
 549	struct cvmx_l2c_dut_s cn58xx;
 550	struct cvmx_l2c_dut_s cn58xxp1;
 551};
 552
 553union cvmx_l2c_dut_mapx {
 554	uint64_t u64;
 555	struct cvmx_l2c_dut_mapx_s {
 
 556		uint64_t reserved_38_63:26;
 557		uint64_t tag:28;
 558		uint64_t reserved_1_9:9;
 559		uint64_t valid:1;
 
 
 
 
 
 
 560	} s;
 
 561	struct cvmx_l2c_dut_mapx_s cn63xx;
 562	struct cvmx_l2c_dut_mapx_s cn63xxp1;
 
 
 
 
 563};
 564
 565union cvmx_l2c_err_tdtx {
 566	uint64_t u64;
 567	struct cvmx_l2c_err_tdtx_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 568		uint64_t dbe:1;
 569		uint64_t sbe:1;
 570		uint64_t vdbe:1;
 571		uint64_t vsbe:1;
 572		uint64_t syn:10;
 573		uint64_t reserved_21_49:29;
 574		uint64_t wayidx:17;
 575		uint64_t reserved_2_3:2;
 576		uint64_t type:2;
 577	} s;
 578	struct cvmx_l2c_err_tdtx_s cn63xx;
 579	struct cvmx_l2c_err_tdtx_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 580};
 581
 582union cvmx_l2c_err_ttgx {
 583	uint64_t u64;
 584	struct cvmx_l2c_err_ttgx_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 585		uint64_t dbe:1;
 586		uint64_t sbe:1;
 587		uint64_t noway:1;
 588		uint64_t reserved_56_60:5;
 589		uint64_t syn:6;
 590		uint64_t reserved_21_49:29;
 591		uint64_t wayidx:14;
 592		uint64_t reserved_2_6:5;
 593		uint64_t type:2;
 594	} s;
 595	struct cvmx_l2c_err_ttgx_s cn63xx;
 596	struct cvmx_l2c_err_ttgx_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 597};
 598
 599union cvmx_l2c_err_vbfx {
 600	uint64_t u64;
 601	struct cvmx_l2c_err_vbfx_s {
 
 602		uint64_t reserved_62_63:2;
 603		uint64_t vdbe:1;
 604		uint64_t vsbe:1;
 605		uint64_t vsyn:10;
 606		uint64_t reserved_2_49:48;
 607		uint64_t type:2;
 
 
 
 
 
 
 
 
 608	} s;
 
 609	struct cvmx_l2c_err_vbfx_s cn63xx;
 610	struct cvmx_l2c_err_vbfx_s cn63xxp1;
 
 
 
 
 611};
 612
 613union cvmx_l2c_err_xmc {
 614	uint64_t u64;
 615	struct cvmx_l2c_err_xmc_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 616		uint64_t cmd:6;
 617		uint64_t reserved_52_57:6;
 618		uint64_t sid:4;
 619		uint64_t reserved_38_47:10;
 620		uint64_t addr:38;
 621	} s;
 622	struct cvmx_l2c_err_xmc_s cn63xx;
 623	struct cvmx_l2c_err_xmc_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 624};
 625
 626union cvmx_l2c_grpwrr0 {
 627	uint64_t u64;
 628	struct cvmx_l2c_grpwrr0_s {
 
 629		uint64_t plc1rmsk:32;
 630		uint64_t plc0rmsk:32;
 
 
 
 
 631	} s;
 632	struct cvmx_l2c_grpwrr0_s cn52xx;
 633	struct cvmx_l2c_grpwrr0_s cn52xxp1;
 634	struct cvmx_l2c_grpwrr0_s cn56xx;
 635	struct cvmx_l2c_grpwrr0_s cn56xxp1;
 636};
 637
 638union cvmx_l2c_grpwrr1 {
 639	uint64_t u64;
 640	struct cvmx_l2c_grpwrr1_s {
 
 641		uint64_t ilcrmsk:32;
 642		uint64_t plc2rmsk:32;
 
 
 
 
 643	} s;
 644	struct cvmx_l2c_grpwrr1_s cn52xx;
 645	struct cvmx_l2c_grpwrr1_s cn52xxp1;
 646	struct cvmx_l2c_grpwrr1_s cn56xx;
 647	struct cvmx_l2c_grpwrr1_s cn56xxp1;
 648};
 649
 650union cvmx_l2c_int_en {
 651	uint64_t u64;
 652	struct cvmx_l2c_int_en_s {
 
 653		uint64_t reserved_9_63:55;
 654		uint64_t lck2ena:1;
 655		uint64_t lckena:1;
 656		uint64_t l2ddeden:1;
 657		uint64_t l2dsecen:1;
 658		uint64_t l2tdeden:1;
 659		uint64_t l2tsecen:1;
 660		uint64_t oob3en:1;
 661		uint64_t oob2en:1;
 662		uint64_t oob1en:1;
 
 
 
 
 
 
 
 
 
 
 
 
 663	} s;
 664	struct cvmx_l2c_int_en_s cn52xx;
 665	struct cvmx_l2c_int_en_s cn52xxp1;
 666	struct cvmx_l2c_int_en_s cn56xx;
 667	struct cvmx_l2c_int_en_s cn56xxp1;
 668};
 669
 670union cvmx_l2c_int_ena {
 671	uint64_t u64;
 672	struct cvmx_l2c_int_ena_s {
 
 673		uint64_t reserved_8_63:56;
 674		uint64_t bigrd:1;
 675		uint64_t bigwr:1;
 676		uint64_t vrtpe:1;
 677		uint64_t vrtadrng:1;
 678		uint64_t vrtidrng:1;
 679		uint64_t vrtwr:1;
 680		uint64_t holewr:1;
 681		uint64_t holerd:1;
 
 
 
 
 
 
 
 
 
 
 
 682	} s;
 
 683	struct cvmx_l2c_int_ena_s cn63xx;
 684	struct cvmx_l2c_int_ena_cn63xxp1 {
 
 685		uint64_t reserved_6_63:58;
 686		uint64_t vrtpe:1;
 687		uint64_t vrtadrng:1;
 688		uint64_t vrtidrng:1;
 689		uint64_t vrtwr:1;
 690		uint64_t holewr:1;
 691		uint64_t holerd:1;
 
 
 
 
 
 
 
 
 
 692	} cn63xxp1;
 
 
 
 
 693};
 694
 695union cvmx_l2c_int_reg {
 696	uint64_t u64;
 697	struct cvmx_l2c_int_reg_s {
 698		uint64_t reserved_17_63:47;
 
 
 
 
 699		uint64_t tad0:1;
 700		uint64_t reserved_8_15:8;
 701		uint64_t bigrd:1;
 702		uint64_t bigwr:1;
 703		uint64_t vrtpe:1;
 704		uint64_t vrtadrng:1;
 705		uint64_t vrtidrng:1;
 706		uint64_t vrtwr:1;
 707		uint64_t holewr:1;
 708		uint64_t holerd:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 709	} s;
 710	struct cvmx_l2c_int_reg_s cn63xx;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 711	struct cvmx_l2c_int_reg_cn63xxp1 {
 
 712		uint64_t reserved_17_63:47;
 713		uint64_t tad0:1;
 714		uint64_t reserved_6_15:10;
 715		uint64_t vrtpe:1;
 716		uint64_t vrtadrng:1;
 717		uint64_t vrtidrng:1;
 718		uint64_t vrtwr:1;
 719		uint64_t holewr:1;
 720		uint64_t holerd:1;
 
 
 
 
 
 
 
 
 
 
 
 721	} cn63xxp1;
 
 
 
 
 722};
 723
 724union cvmx_l2c_int_stat {
 725	uint64_t u64;
 726	struct cvmx_l2c_int_stat_s {
 
 727		uint64_t reserved_9_63:55;
 728		uint64_t lck2:1;
 729		uint64_t lck:1;
 730		uint64_t l2dded:1;
 731		uint64_t l2dsec:1;
 732		uint64_t l2tded:1;
 733		uint64_t l2tsec:1;
 734		uint64_t oob3:1;
 735		uint64_t oob2:1;
 736		uint64_t oob1:1;
 
 
 
 
 
 
 
 
 
 
 
 
 737	} s;
 738	struct cvmx_l2c_int_stat_s cn52xx;
 739	struct cvmx_l2c_int_stat_s cn52xxp1;
 740	struct cvmx_l2c_int_stat_s cn56xx;
 741	struct cvmx_l2c_int_stat_s cn56xxp1;
 742};
 743
 744union cvmx_l2c_iocx_pfc {
 745	uint64_t u64;
 746	struct cvmx_l2c_iocx_pfc_s {
 
 
 
 747		uint64_t count:64;
 
 748	} s;
 
 749	struct cvmx_l2c_iocx_pfc_s cn63xx;
 750	struct cvmx_l2c_iocx_pfc_s cn63xxp1;
 
 
 
 
 751};
 752
 753union cvmx_l2c_iorx_pfc {
 754	uint64_t u64;
 755	struct cvmx_l2c_iorx_pfc_s {
 
 
 
 756		uint64_t count:64;
 
 757	} s;
 
 758	struct cvmx_l2c_iorx_pfc_s cn63xx;
 759	struct cvmx_l2c_iorx_pfc_s cn63xxp1;
 
 
 
 
 760};
 761
 762union cvmx_l2c_lckbase {
 763	uint64_t u64;
 764	struct cvmx_l2c_lckbase_s {
 
 765		uint64_t reserved_31_63:33;
 766		uint64_t lck_base:27;
 767		uint64_t reserved_1_3:3;
 768		uint64_t lck_ena:1;
 
 
 
 
 
 
 769	} s;
 770	struct cvmx_l2c_lckbase_s cn30xx;
 771	struct cvmx_l2c_lckbase_s cn31xx;
 772	struct cvmx_l2c_lckbase_s cn38xx;
 773	struct cvmx_l2c_lckbase_s cn38xxp2;
 774	struct cvmx_l2c_lckbase_s cn50xx;
 775	struct cvmx_l2c_lckbase_s cn52xx;
 776	struct cvmx_l2c_lckbase_s cn52xxp1;
 777	struct cvmx_l2c_lckbase_s cn56xx;
 778	struct cvmx_l2c_lckbase_s cn56xxp1;
 779	struct cvmx_l2c_lckbase_s cn58xx;
 780	struct cvmx_l2c_lckbase_s cn58xxp1;
 781};
 782
 783union cvmx_l2c_lckoff {
 784	uint64_t u64;
 785	struct cvmx_l2c_lckoff_s {
 
 786		uint64_t reserved_10_63:54;
 787		uint64_t lck_offset:10;
 
 
 
 
 788	} s;
 789	struct cvmx_l2c_lckoff_s cn30xx;
 790	struct cvmx_l2c_lckoff_s cn31xx;
 791	struct cvmx_l2c_lckoff_s cn38xx;
 792	struct cvmx_l2c_lckoff_s cn38xxp2;
 793	struct cvmx_l2c_lckoff_s cn50xx;
 794	struct cvmx_l2c_lckoff_s cn52xx;
 795	struct cvmx_l2c_lckoff_s cn52xxp1;
 796	struct cvmx_l2c_lckoff_s cn56xx;
 797	struct cvmx_l2c_lckoff_s cn56xxp1;
 798	struct cvmx_l2c_lckoff_s cn58xx;
 799	struct cvmx_l2c_lckoff_s cn58xxp1;
 800};
 801
 802union cvmx_l2c_lfb0 {
 803	uint64_t u64;
 804	struct cvmx_l2c_lfb0_s {
 
 805		uint64_t reserved_32_63:32;
 806		uint64_t stcpnd:1;
 807		uint64_t stpnd:1;
 808		uint64_t stinv:1;
 809		uint64_t stcfl:1;
 810		uint64_t vam:1;
 811		uint64_t inxt:4;
 812		uint64_t itl:1;
 813		uint64_t ihd:1;
 814		uint64_t set:3;
 815		uint64_t vabnum:4;
 816		uint64_t sid:9;
 817		uint64_t cmd:4;
 818		uint64_t vld:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 819	} s;
 820	struct cvmx_l2c_lfb0_cn30xx {
 
 821		uint64_t reserved_32_63:32;
 822		uint64_t stcpnd:1;
 823		uint64_t stpnd:1;
 824		uint64_t stinv:1;
 825		uint64_t stcfl:1;
 826		uint64_t vam:1;
 827		uint64_t reserved_25_26:2;
 828		uint64_t inxt:2;
 829		uint64_t itl:1;
 830		uint64_t ihd:1;
 831		uint64_t reserved_20_20:1;
 832		uint64_t set:2;
 833		uint64_t reserved_16_17:2;
 834		uint64_t vabnum:2;
 835		uint64_t sid:9;
 836		uint64_t cmd:4;
 837		uint64_t vld:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 838	} cn30xx;
 839	struct cvmx_l2c_lfb0_cn31xx {
 
 840		uint64_t reserved_32_63:32;
 841		uint64_t stcpnd:1;
 842		uint64_t stpnd:1;
 843		uint64_t stinv:1;
 844		uint64_t stcfl:1;
 845		uint64_t vam:1;
 846		uint64_t reserved_26_26:1;
 847		uint64_t inxt:3;
 848		uint64_t itl:1;
 849		uint64_t ihd:1;
 850		uint64_t reserved_20_20:1;
 851		uint64_t set:2;
 852		uint64_t reserved_17_17:1;
 853		uint64_t vabnum:3;
 854		uint64_t sid:9;
 855		uint64_t cmd:4;
 856		uint64_t vld:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 857	} cn31xx;
 858	struct cvmx_l2c_lfb0_s cn38xx;
 859	struct cvmx_l2c_lfb0_s cn38xxp2;
 860	struct cvmx_l2c_lfb0_cn50xx {
 
 861		uint64_t reserved_32_63:32;
 862		uint64_t stcpnd:1;
 863		uint64_t stpnd:1;
 864		uint64_t stinv:1;
 865		uint64_t stcfl:1;
 866		uint64_t vam:1;
 867		uint64_t reserved_26_26:1;
 868		uint64_t inxt:3;
 869		uint64_t itl:1;
 870		uint64_t ihd:1;
 871		uint64_t set:3;
 872		uint64_t reserved_17_17:1;
 873		uint64_t vabnum:3;
 874		uint64_t sid:9;
 875		uint64_t cmd:4;
 876		uint64_t vld:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 877	} cn50xx;
 878	struct cvmx_l2c_lfb0_cn50xx cn52xx;
 879	struct cvmx_l2c_lfb0_cn50xx cn52xxp1;
 880	struct cvmx_l2c_lfb0_s cn56xx;
 881	struct cvmx_l2c_lfb0_s cn56xxp1;
 882	struct cvmx_l2c_lfb0_s cn58xx;
 883	struct cvmx_l2c_lfb0_s cn58xxp1;
 884};
 885
 886union cvmx_l2c_lfb1 {
 887	uint64_t u64;
 888	struct cvmx_l2c_lfb1_s {
 
 889		uint64_t reserved_19_63:45;
 890		uint64_t dsgoing:1;
 891		uint64_t bid:2;
 892		uint64_t wtrsp:1;
 893		uint64_t wtdw:1;
 894		uint64_t wtdq:1;
 895		uint64_t wtwhp:1;
 896		uint64_t wtwhf:1;
 897		uint64_t wtwrm:1;
 898		uint64_t wtstm:1;
 899		uint64_t wtrda:1;
 900		uint64_t wtstdt:1;
 901		uint64_t wtstrsp:1;
 902		uint64_t wtstrsc:1;
 903		uint64_t wtvtm:1;
 904		uint64_t wtmfl:1;
 905		uint64_t prbrty:1;
 906		uint64_t wtprb:1;
 907		uint64_t vld:1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 908	} s;
 909	struct cvmx_l2c_lfb1_s cn30xx;
 910	struct cvmx_l2c_lfb1_s cn31xx;
 911	struct cvmx_l2c_lfb1_s cn38xx;
 912	struct cvmx_l2c_lfb1_s cn38xxp2;
 913	struct cvmx_l2c_lfb1_s cn50xx;
 914	struct cvmx_l2c_lfb1_s cn52xx;
 915	struct cvmx_l2c_lfb1_s cn52xxp1;
 916	struct cvmx_l2c_lfb1_s cn56xx;
 917	struct cvmx_l2c_lfb1_s cn56xxp1;
 918	struct cvmx_l2c_lfb1_s cn58xx;
 919	struct cvmx_l2c_lfb1_s cn58xxp1;
 920};
 921
 922union cvmx_l2c_lfb2 {
 923	uint64_t u64;
 924	struct cvmx_l2c_lfb2_s {
 
 925		uint64_t reserved_0_63:64;
 
 
 
 926	} s;
 927	struct cvmx_l2c_lfb2_cn30xx {
 
 928		uint64_t reserved_27_63:37;
 929		uint64_t lfb_tag:19;
 930		uint64_t lfb_idx:8;
 
 
 
 
 
 931	} cn30xx;
 932	struct cvmx_l2c_lfb2_cn31xx {
 
 933		uint64_t reserved_27_63:37;
 934		uint64_t lfb_tag:17;
 935		uint64_t lfb_idx:10;
 
 
 
 
 
 936	} cn31xx;
 937	struct cvmx_l2c_lfb2_cn31xx cn38xx;
 938	struct cvmx_l2c_lfb2_cn31xx cn38xxp2;
 939	struct cvmx_l2c_lfb2_cn50xx {
 
 940		uint64_t reserved_27_63:37;
 941		uint64_t lfb_tag:20;
 942		uint64_t lfb_idx:7;
 
 
 
 
 
 943	} cn50xx;
 944	struct cvmx_l2c_lfb2_cn52xx {
 
 945		uint64_t reserved_27_63:37;
 946		uint64_t lfb_tag:18;
 947		uint64_t lfb_idx:9;
 
 
 
 
 
 948	} cn52xx;
 949	struct cvmx_l2c_lfb2_cn52xx cn52xxp1;
 950	struct cvmx_l2c_lfb2_cn56xx {
 
 951		uint64_t reserved_27_63:37;
 952		uint64_t lfb_tag:16;
 953		uint64_t lfb_idx:11;
 
 
 
 
 
 954	} cn56xx;
 955	struct cvmx_l2c_lfb2_cn56xx cn56xxp1;
 956	struct cvmx_l2c_lfb2_cn56xx cn58xx;
 957	struct cvmx_l2c_lfb2_cn56xx cn58xxp1;
 958};
 959
 960union cvmx_l2c_lfb3 {
 961	uint64_t u64;
 962	struct cvmx_l2c_lfb3_s {
 
 963		uint64_t reserved_5_63:59;
 964		uint64_t stpartdis:1;
 965		uint64_t lfb_hwm:4;
 
 
 
 
 
 966	} s;
 967	struct cvmx_l2c_lfb3_cn30xx {
 
 968		uint64_t reserved_5_63:59;
 969		uint64_t stpartdis:1;
 970		uint64_t reserved_2_3:2;
 971		uint64_t lfb_hwm:2;
 
 
 
 
 
 
 972	} cn30xx;
 973	struct cvmx_l2c_lfb3_cn31xx {
 
 974		uint64_t reserved_5_63:59;
 975		uint64_t stpartdis:1;
 976		uint64_t reserved_3_3:1;
 977		uint64_t lfb_hwm:3;
 
 
 
 
 
 
 978	} cn31xx;
 979	struct cvmx_l2c_lfb3_s cn38xx;
 980	struct cvmx_l2c_lfb3_s cn38xxp2;
 981	struct cvmx_l2c_lfb3_cn31xx cn50xx;
 982	struct cvmx_l2c_lfb3_cn31xx cn52xx;
 983	struct cvmx_l2c_lfb3_cn31xx cn52xxp1;
 984	struct cvmx_l2c_lfb3_s cn56xx;
 985	struct cvmx_l2c_lfb3_s cn56xxp1;
 986	struct cvmx_l2c_lfb3_s cn58xx;
 987	struct cvmx_l2c_lfb3_s cn58xxp1;
 988};
 989
 990union cvmx_l2c_oob {
 991	uint64_t u64;
 992	struct cvmx_l2c_oob_s {
 
 993		uint64_t reserved_2_63:62;
 994		uint64_t dwbena:1;
 995		uint64_t stena:1;
 
 
 
 
 
 996	} s;
 997	struct cvmx_l2c_oob_s cn52xx;
 998	struct cvmx_l2c_oob_s cn52xxp1;
 999	struct cvmx_l2c_oob_s cn56xx;
1000	struct cvmx_l2c_oob_s cn56xxp1;
1001};
1002
1003union cvmx_l2c_oob1 {
1004	uint64_t u64;
1005	struct cvmx_l2c_oob1_s {
 
1006		uint64_t fadr:27;
1007		uint64_t fsrc:1;
1008		uint64_t reserved_34_35:2;
1009		uint64_t sadr:14;
1010		uint64_t reserved_14_19:6;
1011		uint64_t size:14;
 
 
 
 
 
 
 
 
1012	} s;
1013	struct cvmx_l2c_oob1_s cn52xx;
1014	struct cvmx_l2c_oob1_s cn52xxp1;
1015	struct cvmx_l2c_oob1_s cn56xx;
1016	struct cvmx_l2c_oob1_s cn56xxp1;
1017};
1018
1019union cvmx_l2c_oob2 {
1020	uint64_t u64;
1021	struct cvmx_l2c_oob2_s {
 
1022		uint64_t fadr:27;
1023		uint64_t fsrc:1;
1024		uint64_t reserved_34_35:2;
1025		uint64_t sadr:14;
1026		uint64_t reserved_14_19:6;
1027		uint64_t size:14;
 
 
 
 
 
 
 
 
1028	} s;
1029	struct cvmx_l2c_oob2_s cn52xx;
1030	struct cvmx_l2c_oob2_s cn52xxp1;
1031	struct cvmx_l2c_oob2_s cn56xx;
1032	struct cvmx_l2c_oob2_s cn56xxp1;
1033};
1034
1035union cvmx_l2c_oob3 {
1036	uint64_t u64;
1037	struct cvmx_l2c_oob3_s {
 
1038		uint64_t fadr:27;
1039		uint64_t fsrc:1;
1040		uint64_t reserved_34_35:2;
1041		uint64_t sadr:14;
1042		uint64_t reserved_14_19:6;
1043		uint64_t size:14;
 
 
 
 
 
 
 
 
1044	} s;
1045	struct cvmx_l2c_oob3_s cn52xx;
1046	struct cvmx_l2c_oob3_s cn52xxp1;
1047	struct cvmx_l2c_oob3_s cn56xx;
1048	struct cvmx_l2c_oob3_s cn56xxp1;
1049};
1050
1051union cvmx_l2c_pfcx {
1052	uint64_t u64;
1053	struct cvmx_l2c_pfcx_s {
 
1054		uint64_t reserved_36_63:28;
1055		uint64_t pfcnt0:36;
 
 
 
 
1056	} s;
1057	struct cvmx_l2c_pfcx_s cn30xx;
1058	struct cvmx_l2c_pfcx_s cn31xx;
1059	struct cvmx_l2c_pfcx_s cn38xx;
1060	struct cvmx_l2c_pfcx_s cn38xxp2;
1061	struct cvmx_l2c_pfcx_s cn50xx;
1062	struct cvmx_l2c_pfcx_s cn52xx;
1063	struct cvmx_l2c_pfcx_s cn52xxp1;
1064	struct cvmx_l2c_pfcx_s cn56xx;
1065	struct cvmx_l2c_pfcx_s cn56xxp1;
1066	struct cvmx_l2c_pfcx_s cn58xx;
1067	struct cvmx_l2c_pfcx_s cn58xxp1;
1068};
1069
1070union cvmx_l2c_pfctl {
1071	uint64_t u64;
1072	struct cvmx_l2c_pfctl_s {
 
1073		uint64_t reserved_36_63:28;
1074		uint64_t cnt3rdclr:1;
1075		uint64_t cnt2rdclr:1;
1076		uint64_t cnt1rdclr:1;
1077		uint64_t cnt0rdclr:1;
1078		uint64_t cnt3ena:1;
1079		uint64_t cnt3clr:1;
1080		uint64_t cnt3sel:6;
1081		uint64_t cnt2ena:1;
1082		uint64_t cnt2clr:1;
1083		uint64_t cnt2sel:6;
1084		uint64_t cnt1ena:1;
1085		uint64_t cnt1clr:1;
1086		uint64_t cnt1sel:6;
1087		uint64_t cnt0ena:1;
1088		uint64_t cnt0clr:1;
1089		uint64_t cnt0sel:6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1090	} s;
1091	struct cvmx_l2c_pfctl_s cn30xx;
1092	struct cvmx_l2c_pfctl_s cn31xx;
1093	struct cvmx_l2c_pfctl_s cn38xx;
1094	struct cvmx_l2c_pfctl_s cn38xxp2;
1095	struct cvmx_l2c_pfctl_s cn50xx;
1096	struct cvmx_l2c_pfctl_s cn52xx;
1097	struct cvmx_l2c_pfctl_s cn52xxp1;
1098	struct cvmx_l2c_pfctl_s cn56xx;
1099	struct cvmx_l2c_pfctl_s cn56xxp1;
1100	struct cvmx_l2c_pfctl_s cn58xx;
1101	struct cvmx_l2c_pfctl_s cn58xxp1;
1102};
1103
1104union cvmx_l2c_ppgrp {
1105	uint64_t u64;
1106	struct cvmx_l2c_ppgrp_s {
 
1107		uint64_t reserved_24_63:40;
1108		uint64_t pp11grp:2;
1109		uint64_t pp10grp:2;
1110		uint64_t pp9grp:2;
1111		uint64_t pp8grp:2;
1112		uint64_t pp7grp:2;
1113		uint64_t pp6grp:2;
1114		uint64_t pp5grp:2;
1115		uint64_t pp4grp:2;
1116		uint64_t pp3grp:2;
1117		uint64_t pp2grp:2;
1118		uint64_t pp1grp:2;
1119		uint64_t pp0grp:2;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1120	} s;
1121	struct cvmx_l2c_ppgrp_cn52xx {
 
1122		uint64_t reserved_8_63:56;
1123		uint64_t pp3grp:2;
1124		uint64_t pp2grp:2;
1125		uint64_t pp1grp:2;
1126		uint64_t pp0grp:2;
 
 
 
 
 
 
 
1127	} cn52xx;
1128	struct cvmx_l2c_ppgrp_cn52xx cn52xxp1;
1129	struct cvmx_l2c_ppgrp_s cn56xx;
1130	struct cvmx_l2c_ppgrp_s cn56xxp1;
1131};
1132
1133union cvmx_l2c_qos_iobx {
1134	uint64_t u64;
1135	struct cvmx_l2c_qos_iobx_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1136		uint64_t reserved_6_63:58;
1137		uint64_t dwblvl:2;
1138		uint64_t reserved_2_3:2;
1139		uint64_t lvl:2;
1140	} s;
1141	struct cvmx_l2c_qos_iobx_s cn63xx;
1142	struct cvmx_l2c_qos_iobx_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
1143};
1144
1145union cvmx_l2c_qos_ppx {
1146	uint64_t u64;
1147	struct cvmx_l2c_qos_ppx_s {
 
 
 
 
 
 
 
 
 
 
1148		uint64_t reserved_2_63:62;
1149		uint64_t lvl:2;
1150	} s;
1151	struct cvmx_l2c_qos_ppx_s cn63xx;
1152	struct cvmx_l2c_qos_ppx_s cn63xxp1;
 
 
 
 
 
 
 
 
1153};
1154
1155union cvmx_l2c_qos_wgt {
1156	uint64_t u64;
1157	struct cvmx_l2c_qos_wgt_s {
1158		uint64_t reserved_32_63:32;
 
 
 
 
1159		uint64_t wgt3:8;
1160		uint64_t wgt2:8;
1161		uint64_t wgt1:8;
1162		uint64_t wgt0:8;
 
 
 
 
 
 
 
 
 
 
1163	} s;
1164	struct cvmx_l2c_qos_wgt_s cn63xx;
1165	struct cvmx_l2c_qos_wgt_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1166};
1167
1168union cvmx_l2c_rscx_pfc {
1169	uint64_t u64;
1170	struct cvmx_l2c_rscx_pfc_s {
 
 
 
1171		uint64_t count:64;
 
1172	} s;
 
1173	struct cvmx_l2c_rscx_pfc_s cn63xx;
1174	struct cvmx_l2c_rscx_pfc_s cn63xxp1;
 
 
 
 
1175};
1176
1177union cvmx_l2c_rsdx_pfc {
1178	uint64_t u64;
1179	struct cvmx_l2c_rsdx_pfc_s {
 
 
 
1180		uint64_t count:64;
 
1181	} s;
 
1182	struct cvmx_l2c_rsdx_pfc_s cn63xx;
1183	struct cvmx_l2c_rsdx_pfc_s cn63xxp1;
 
 
 
 
1184};
1185
1186union cvmx_l2c_spar0 {
1187	uint64_t u64;
1188	struct cvmx_l2c_spar0_s {
 
1189		uint64_t reserved_32_63:32;
1190		uint64_t umsk3:8;
1191		uint64_t umsk2:8;
1192		uint64_t umsk1:8;
1193		uint64_t umsk0:8;
 
 
 
 
 
 
 
1194	} s;
1195	struct cvmx_l2c_spar0_cn30xx {
 
1196		uint64_t reserved_4_63:60;
1197		uint64_t umsk0:4;
 
 
 
 
1198	} cn30xx;
1199	struct cvmx_l2c_spar0_cn31xx {
 
1200		uint64_t reserved_12_63:52;
1201		uint64_t umsk1:4;
1202		uint64_t reserved_4_7:4;
1203		uint64_t umsk0:4;
 
 
 
 
 
 
1204	} cn31xx;
1205	struct cvmx_l2c_spar0_s cn38xx;
1206	struct cvmx_l2c_spar0_s cn38xxp2;
1207	struct cvmx_l2c_spar0_cn50xx {
 
1208		uint64_t reserved_16_63:48;
1209		uint64_t umsk1:8;
1210		uint64_t umsk0:8;
 
 
 
 
 
1211	} cn50xx;
1212	struct cvmx_l2c_spar0_s cn52xx;
1213	struct cvmx_l2c_spar0_s cn52xxp1;
1214	struct cvmx_l2c_spar0_s cn56xx;
1215	struct cvmx_l2c_spar0_s cn56xxp1;
1216	struct cvmx_l2c_spar0_s cn58xx;
1217	struct cvmx_l2c_spar0_s cn58xxp1;
1218};
1219
1220union cvmx_l2c_spar1 {
1221	uint64_t u64;
1222	struct cvmx_l2c_spar1_s {
 
1223		uint64_t reserved_32_63:32;
1224		uint64_t umsk7:8;
1225		uint64_t umsk6:8;
1226		uint64_t umsk5:8;
1227		uint64_t umsk4:8;
 
 
 
 
 
 
 
1228	} s;
1229	struct cvmx_l2c_spar1_s cn38xx;
1230	struct cvmx_l2c_spar1_s cn38xxp2;
1231	struct cvmx_l2c_spar1_s cn56xx;
1232	struct cvmx_l2c_spar1_s cn56xxp1;
1233	struct cvmx_l2c_spar1_s cn58xx;
1234	struct cvmx_l2c_spar1_s cn58xxp1;
1235};
1236
1237union cvmx_l2c_spar2 {
1238	uint64_t u64;
1239	struct cvmx_l2c_spar2_s {
 
1240		uint64_t reserved_32_63:32;
1241		uint64_t umsk11:8;
1242		uint64_t umsk10:8;
1243		uint64_t umsk9:8;
1244		uint64_t umsk8:8;
 
 
 
 
 
 
 
1245	} s;
1246	struct cvmx_l2c_spar2_s cn38xx;
1247	struct cvmx_l2c_spar2_s cn38xxp2;
1248	struct cvmx_l2c_spar2_s cn56xx;
1249	struct cvmx_l2c_spar2_s cn56xxp1;
1250	struct cvmx_l2c_spar2_s cn58xx;
1251	struct cvmx_l2c_spar2_s cn58xxp1;
1252};
1253
1254union cvmx_l2c_spar3 {
1255	uint64_t u64;
1256	struct cvmx_l2c_spar3_s {
 
1257		uint64_t reserved_32_63:32;
1258		uint64_t umsk15:8;
1259		uint64_t umsk14:8;
1260		uint64_t umsk13:8;
1261		uint64_t umsk12:8;
 
 
 
 
 
 
 
1262	} s;
1263	struct cvmx_l2c_spar3_s cn38xx;
1264	struct cvmx_l2c_spar3_s cn38xxp2;
1265	struct cvmx_l2c_spar3_s cn58xx;
1266	struct cvmx_l2c_spar3_s cn58xxp1;
1267};
1268
1269union cvmx_l2c_spar4 {
1270	uint64_t u64;
1271	struct cvmx_l2c_spar4_s {
 
1272		uint64_t reserved_8_63:56;
1273		uint64_t umskiob:8;
 
 
 
 
1274	} s;
1275	struct cvmx_l2c_spar4_cn30xx {
 
1276		uint64_t reserved_4_63:60;
1277		uint64_t umskiob:4;
 
 
 
 
1278	} cn30xx;
1279	struct cvmx_l2c_spar4_cn30xx cn31xx;
1280	struct cvmx_l2c_spar4_s cn38xx;
1281	struct cvmx_l2c_spar4_s cn38xxp2;
1282	struct cvmx_l2c_spar4_s cn50xx;
1283	struct cvmx_l2c_spar4_s cn52xx;
1284	struct cvmx_l2c_spar4_s cn52xxp1;
1285	struct cvmx_l2c_spar4_s cn56xx;
1286	struct cvmx_l2c_spar4_s cn56xxp1;
1287	struct cvmx_l2c_spar4_s cn58xx;
1288	struct cvmx_l2c_spar4_s cn58xxp1;
1289};
1290
1291union cvmx_l2c_tadx_ecc0 {
1292	uint64_t u64;
1293	struct cvmx_l2c_tadx_ecc0_s {
 
1294		uint64_t reserved_58_63:6;
1295		uint64_t ow3ecc:10;
1296		uint64_t reserved_42_47:6;
1297		uint64_t ow2ecc:10;
1298		uint64_t reserved_26_31:6;
1299		uint64_t ow1ecc:10;
1300		uint64_t reserved_10_15:6;
1301		uint64_t ow0ecc:10;
 
 
 
 
 
 
 
 
 
 
1302	} s;
 
1303	struct cvmx_l2c_tadx_ecc0_s cn63xx;
1304	struct cvmx_l2c_tadx_ecc0_s cn63xxp1;
 
 
 
 
1305};
1306
1307union cvmx_l2c_tadx_ecc1 {
1308	uint64_t u64;
1309	struct cvmx_l2c_tadx_ecc1_s {
 
1310		uint64_t reserved_58_63:6;
1311		uint64_t ow7ecc:10;
1312		uint64_t reserved_42_47:6;
1313		uint64_t ow6ecc:10;
1314		uint64_t reserved_26_31:6;
1315		uint64_t ow5ecc:10;
1316		uint64_t reserved_10_15:6;
1317		uint64_t ow4ecc:10;
 
 
 
 
 
 
 
 
 
 
1318	} s;
 
1319	struct cvmx_l2c_tadx_ecc1_s cn63xx;
1320	struct cvmx_l2c_tadx_ecc1_s cn63xxp1;
 
 
 
 
1321};
1322
1323union cvmx_l2c_tadx_ien {
1324	uint64_t u64;
1325	struct cvmx_l2c_tadx_ien_s {
 
1326		uint64_t reserved_9_63:55;
1327		uint64_t wrdislmc:1;
1328		uint64_t rddislmc:1;
1329		uint64_t noway:1;
1330		uint64_t vbfdbe:1;
1331		uint64_t vbfsbe:1;
1332		uint64_t tagdbe:1;
1333		uint64_t tagsbe:1;
1334		uint64_t l2ddbe:1;
1335		uint64_t l2dsbe:1;
 
 
 
 
 
 
 
 
 
 
 
 
1336	} s;
 
1337	struct cvmx_l2c_tadx_ien_s cn63xx;
1338	struct cvmx_l2c_tadx_ien_cn63xxp1 {
 
1339		uint64_t reserved_7_63:57;
1340		uint64_t noway:1;
1341		uint64_t vbfdbe:1;
1342		uint64_t vbfsbe:1;
1343		uint64_t tagdbe:1;
1344		uint64_t tagsbe:1;
1345		uint64_t l2ddbe:1;
1346		uint64_t l2dsbe:1;
 
 
 
 
 
 
 
 
 
 
1347	} cn63xxp1;
 
 
 
 
1348};
1349
1350union cvmx_l2c_tadx_int {
1351	uint64_t u64;
1352	struct cvmx_l2c_tadx_int_s {
 
1353		uint64_t reserved_9_63:55;
1354		uint64_t wrdislmc:1;
1355		uint64_t rddislmc:1;
1356		uint64_t noway:1;
1357		uint64_t vbfdbe:1;
1358		uint64_t vbfsbe:1;
1359		uint64_t tagdbe:1;
1360		uint64_t tagsbe:1;
1361		uint64_t l2ddbe:1;
1362		uint64_t l2dsbe:1;
 
 
 
 
 
 
 
 
 
 
 
 
1363	} s;
 
1364	struct cvmx_l2c_tadx_int_s cn63xx;
 
 
 
 
1365};
1366
1367union cvmx_l2c_tadx_pfc0 {
1368	uint64_t u64;
1369	struct cvmx_l2c_tadx_pfc0_s {
 
1370		uint64_t count:64;
 
 
 
1371	} s;
 
1372	struct cvmx_l2c_tadx_pfc0_s cn63xx;
1373	struct cvmx_l2c_tadx_pfc0_s cn63xxp1;
 
 
 
 
1374};
1375
1376union cvmx_l2c_tadx_pfc1 {
1377	uint64_t u64;
1378	struct cvmx_l2c_tadx_pfc1_s {
 
 
 
1379		uint64_t count:64;
 
1380	} s;
 
1381	struct cvmx_l2c_tadx_pfc1_s cn63xx;
1382	struct cvmx_l2c_tadx_pfc1_s cn63xxp1;
 
 
 
 
1383};
1384
1385union cvmx_l2c_tadx_pfc2 {
1386	uint64_t u64;
1387	struct cvmx_l2c_tadx_pfc2_s {
 
1388		uint64_t count:64;
 
 
 
1389	} s;
 
1390	struct cvmx_l2c_tadx_pfc2_s cn63xx;
1391	struct cvmx_l2c_tadx_pfc2_s cn63xxp1;
 
 
 
 
1392};
1393
1394union cvmx_l2c_tadx_pfc3 {
1395	uint64_t u64;
1396	struct cvmx_l2c_tadx_pfc3_s {
 
 
 
1397		uint64_t count:64;
 
1398	} s;
 
1399	struct cvmx_l2c_tadx_pfc3_s cn63xx;
1400	struct cvmx_l2c_tadx_pfc3_s cn63xxp1;
 
 
 
 
1401};
1402
1403union cvmx_l2c_tadx_prf {
1404	uint64_t u64;
1405	struct cvmx_l2c_tadx_prf_s {
 
1406		uint64_t reserved_32_63:32;
1407		uint64_t cnt3sel:8;
1408		uint64_t cnt2sel:8;
1409		uint64_t cnt1sel:8;
1410		uint64_t cnt0sel:8;
 
 
 
 
 
 
 
1411	} s;
 
1412	struct cvmx_l2c_tadx_prf_s cn63xx;
1413	struct cvmx_l2c_tadx_prf_s cn63xxp1;
 
 
 
 
1414};
1415
1416union cvmx_l2c_tadx_tag {
1417	uint64_t u64;
1418	struct cvmx_l2c_tadx_tag_s {
 
1419		uint64_t reserved_46_63:18;
1420		uint64_t ecc:6;
1421		uint64_t reserved_36_39:4;
1422		uint64_t tag:19;
1423		uint64_t reserved_4_16:13;
1424		uint64_t use:1;
1425		uint64_t valid:1;
1426		uint64_t dirty:1;
1427		uint64_t lock:1;
 
 
 
 
 
 
 
 
 
 
 
1428	} s;
 
1429	struct cvmx_l2c_tadx_tag_s cn63xx;
1430	struct cvmx_l2c_tadx_tag_s cn63xxp1;
 
 
 
 
1431};
1432
1433union cvmx_l2c_ver_id {
1434	uint64_t u64;
1435	struct cvmx_l2c_ver_id_s {
 
1436		uint64_t mask:64;
 
 
 
1437	} s;
 
1438	struct cvmx_l2c_ver_id_s cn63xx;
1439	struct cvmx_l2c_ver_id_s cn63xxp1;
 
 
 
 
1440};
1441
1442union cvmx_l2c_ver_iob {
1443	uint64_t u64;
1444	struct cvmx_l2c_ver_iob_s {
 
 
 
 
 
 
 
 
 
 
1445		uint64_t reserved_1_63:63;
1446		uint64_t mask:1;
1447	} s;
1448	struct cvmx_l2c_ver_iob_s cn63xx;
1449	struct cvmx_l2c_ver_iob_s cn63xxp1;
 
 
 
 
 
 
 
 
1450};
1451
1452union cvmx_l2c_ver_msc {
1453	uint64_t u64;
1454	struct cvmx_l2c_ver_msc_s {
 
1455		uint64_t reserved_2_63:62;
1456		uint64_t invl2:1;
1457		uint64_t dwb:1;
 
 
 
 
 
1458	} s;
 
1459	struct cvmx_l2c_ver_msc_s cn63xx;
 
 
 
 
1460};
1461
1462union cvmx_l2c_ver_pp {
1463	uint64_t u64;
1464	struct cvmx_l2c_ver_pp_s {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1465		uint64_t reserved_6_63:58;
1466		uint64_t mask:6;
1467	} s;
1468	struct cvmx_l2c_ver_pp_s cn63xx;
1469	struct cvmx_l2c_ver_pp_s cn63xxp1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1470};
1471
1472union cvmx_l2c_virtid_iobx {
1473	uint64_t u64;
1474	struct cvmx_l2c_virtid_iobx_s {
 
1475		uint64_t reserved_14_63:50;
1476		uint64_t dwbid:6;
1477		uint64_t reserved_6_7:2;
1478		uint64_t id:6;
 
 
 
 
 
 
1479	} s;
 
1480	struct cvmx_l2c_virtid_iobx_s cn63xx;
1481	struct cvmx_l2c_virtid_iobx_s cn63xxp1;
 
 
 
 
1482};
1483
1484union cvmx_l2c_virtid_ppx {
1485	uint64_t u64;
1486	struct cvmx_l2c_virtid_ppx_s {
 
1487		uint64_t reserved_6_63:58;
1488		uint64_t id:6;
 
 
 
 
1489	} s;
 
1490	struct cvmx_l2c_virtid_ppx_s cn63xx;
1491	struct cvmx_l2c_virtid_ppx_s cn63xxp1;
 
 
 
 
1492};
1493
1494union cvmx_l2c_vrt_ctl {
1495	uint64_t u64;
1496	struct cvmx_l2c_vrt_ctl_s {
 
1497		uint64_t reserved_9_63:55;
1498		uint64_t ooberr:1;
1499		uint64_t reserved_7_7:1;
1500		uint64_t memsz:3;
1501		uint64_t numid:3;
1502		uint64_t enable:1;
 
 
 
 
 
 
 
 
1503	} s;
 
1504	struct cvmx_l2c_vrt_ctl_s cn63xx;
1505	struct cvmx_l2c_vrt_ctl_s cn63xxp1;
 
 
 
 
1506};
1507
1508union cvmx_l2c_vrt_memx {
1509	uint64_t u64;
1510	struct cvmx_l2c_vrt_memx_s {
 
1511		uint64_t reserved_36_63:28;
1512		uint64_t parity:4;
1513		uint64_t data:32;
 
 
 
 
 
1514	} s;
 
1515	struct cvmx_l2c_vrt_memx_s cn63xx;
1516	struct cvmx_l2c_vrt_memx_s cn63xxp1;
 
 
 
 
1517};
1518
1519union cvmx_l2c_wpar_iobx {
1520	uint64_t u64;
1521	struct cvmx_l2c_wpar_iobx_s {
 
1522		uint64_t reserved_16_63:48;
1523		uint64_t mask:16;
 
 
 
 
1524	} s;
 
1525	struct cvmx_l2c_wpar_iobx_s cn63xx;
1526	struct cvmx_l2c_wpar_iobx_s cn63xxp1;
 
 
 
 
1527};
1528
1529union cvmx_l2c_wpar_ppx {
1530	uint64_t u64;
1531	struct cvmx_l2c_wpar_ppx_s {
 
1532		uint64_t reserved_16_63:48;
1533		uint64_t mask:16;
 
 
 
 
1534	} s;
 
1535	struct cvmx_l2c_wpar_ppx_s cn63xx;
1536	struct cvmx_l2c_wpar_ppx_s cn63xxp1;
 
 
 
 
1537};
1538
1539union cvmx_l2c_xmcx_pfc {
1540	uint64_t u64;
1541	struct cvmx_l2c_xmcx_pfc_s {
 
 
 
1542		uint64_t count:64;
 
1543	} s;
 
1544	struct cvmx_l2c_xmcx_pfc_s cn63xx;
1545	struct cvmx_l2c_xmcx_pfc_s cn63xxp1;
 
 
 
 
1546};
1547
1548union cvmx_l2c_xmc_cmd {
1549	uint64_t u64;
1550	struct cvmx_l2c_xmc_cmd_s {
 
1551		uint64_t inuse:1;
1552		uint64_t cmd:6;
1553		uint64_t reserved_38_56:19;
1554		uint64_t addr:38;
 
 
 
 
 
 
1555	} s;
 
1556	struct cvmx_l2c_xmc_cmd_s cn63xx;
1557	struct cvmx_l2c_xmc_cmd_s cn63xxp1;
 
 
 
 
1558};
1559
1560union cvmx_l2c_xmdx_pfc {
1561	uint64_t u64;
1562	struct cvmx_l2c_xmdx_pfc_s {
 
 
 
1563		uint64_t count:64;
 
1564	} s;
 
1565	struct cvmx_l2c_xmdx_pfc_s cn63xx;
1566	struct cvmx_l2c_xmdx_pfc_s cn63xxp1;
 
 
 
 
1567};
1568
1569#endif
v4.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-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_L2C_DEFS_H__
  29#define __CVMX_L2C_DEFS_H__
  30
  31#define CVMX_L2C_BIG_CTL (CVMX_ADD_IO_SEG(0x0001180080800030ull))
  32#define CVMX_L2C_BST (CVMX_ADD_IO_SEG(0x00011800808007F8ull))
  33#define CVMX_L2C_BST0 (CVMX_ADD_IO_SEG(0x00011800800007F8ull))
  34#define CVMX_L2C_BST1 (CVMX_ADD_IO_SEG(0x00011800800007F0ull))
  35#define CVMX_L2C_BST2 (CVMX_ADD_IO_SEG(0x00011800800007E8ull))
  36#define CVMX_L2C_BST_MEMX(block_id) (CVMX_ADD_IO_SEG(0x0001180080C007F8ull) + ((block_id) & 3) * 0x40000ull)
  37#define CVMX_L2C_BST_TDTX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007F0ull) + ((block_id) & 3) * 0x40000ull)
  38#define CVMX_L2C_BST_TTGX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007F8ull) + ((block_id) & 3) * 0x40000ull)
  39#define CVMX_L2C_CFG (CVMX_ADD_IO_SEG(0x0001180080000000ull))
  40#define CVMX_L2C_COP0_MAPX(offset) (CVMX_ADD_IO_SEG(0x0001180080940000ull) + ((offset) & 16383) * 8)
  41#define CVMX_L2C_CTL (CVMX_ADD_IO_SEG(0x0001180080800000ull))
  42#define CVMX_L2C_DBG (CVMX_ADD_IO_SEG(0x0001180080000030ull))
  43#define CVMX_L2C_DUT (CVMX_ADD_IO_SEG(0x0001180080000050ull))
  44#define CVMX_L2C_DUT_MAPX(offset) (CVMX_ADD_IO_SEG(0x0001180080E00000ull) + ((offset) & 8191) * 8)
  45#define CVMX_L2C_ERR_TDTX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007E0ull) + ((block_id) & 3) * 0x40000ull)
  46#define CVMX_L2C_ERR_TTGX(block_id) (CVMX_ADD_IO_SEG(0x0001180080A007E8ull) + ((block_id) & 3) * 0x40000ull)
  47#define CVMX_L2C_ERR_VBFX(block_id) (CVMX_ADD_IO_SEG(0x0001180080C007F0ull) + ((block_id) & 3) * 0x40000ull)
  48#define CVMX_L2C_ERR_XMC (CVMX_ADD_IO_SEG(0x00011800808007D8ull))
  49#define CVMX_L2C_GRPWRR0 (CVMX_ADD_IO_SEG(0x00011800800000C8ull))
  50#define CVMX_L2C_GRPWRR1 (CVMX_ADD_IO_SEG(0x00011800800000D0ull))
  51#define CVMX_L2C_INT_EN (CVMX_ADD_IO_SEG(0x0001180080000100ull))
  52#define CVMX_L2C_INT_ENA (CVMX_ADD_IO_SEG(0x0001180080800020ull))
  53#define CVMX_L2C_INT_REG (CVMX_ADD_IO_SEG(0x0001180080800018ull))
  54#define CVMX_L2C_INT_STAT (CVMX_ADD_IO_SEG(0x00011800800000F8ull))
  55#define CVMX_L2C_IOCX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800420ull))
  56#define CVMX_L2C_IORX_PFC(block_id) (CVMX_ADD_IO_SEG(0x0001180080800428ull))
  57#define CVMX_L2C_LCKBASE (CVMX_ADD_IO_SEG(0x0001180080000058ull))
  58#define CVMX_L2C_LCKOFF (CVMX_ADD_IO_SEG(0x0001180080000060ull))
  59#define CVMX_L2C_LFB0 (CVMX_ADD_IO_SEG(0x0001180080000038ull))
  60#define CVMX_L2C_LFB1 (CVMX_ADD_IO_SEG(0x0001180080000040ull))
  61#define CVMX_L2C_LFB2 (CVMX_ADD_IO_SEG(0x0001180080000048ull))
  62#define CVMX_L2C_LFB3 (CVMX_ADD_IO_SEG(0x00011800800000B8ull))
  63#define CVMX_L2C_OOB (CVMX_ADD_IO_SEG(0x00011800800000D8ull))
  64#define CVMX_L2C_OOB1 (CVMX_ADD_IO_SEG(0x00011800800000E0ull))
  65#define CVMX_L2C_OOB2 (CVMX_ADD_IO_SEG(0x00011800800000E8ull))
  66#define CVMX_L2C_OOB3 (CVMX_ADD_IO_SEG(0x00011800800000F0ull))
  67#define CVMX_L2C_PFC0 CVMX_L2C_PFCX(0)
  68#define CVMX_L2C_PFC1 CVMX_L2C_PFCX(1)
  69#define CVMX_L2C_PFC2 CVMX_L2C_PFCX(2)
  70#define CVMX_L2C_PFC3 CVMX_L2C_PFCX(3)
  71#define CVMX_L2C_PFCTL (CVMX_ADD_IO_SEG(0x0001180080000090ull))
  72#define CVMX_L2C_PFCX(offset) (CVMX_ADD_IO_SEG(0x0001180080000098ull) + ((offset) & 3) * 8)
  73#define CVMX_L2C_PPGRP (CVMX_ADD_IO_SEG(0x00011800800000C0ull))
  74#define CVMX_L2C_QOS_IOBX(offset) (CVMX_ADD_IO_SEG(0x0001180080880200ull) + ((offset) & 1) * 8)
  75#define CVMX_L2C_QOS_PPX(offset) (CVMX_ADD_IO_SEG(0x0001180080880000ull) + ((offset) & 31) * 8)
  76#define CVMX_L2C_QOS_WGT (CVMX_ADD_IO_SEG(0x0001180080800008ull))
  77#define CVMX_L2C_RSCX_PFC(offset) (CVMX_ADD_IO_SEG(0x0001180080800410ull) + ((offset) & 3) * 64)
  78#define CVMX_L2C_RSDX_PFC(offset) (CVMX_ADD_IO_SEG(0x0001180080800418ull) + ((offset) & 3) * 64)
  79#define CVMX_L2C_SPAR0 (CVMX_ADD_IO_SEG(0x0001180080000068ull))
  80#define CVMX_L2C_SPAR1 (CVMX_ADD_IO_SEG(0x0001180080000070ull))
  81#define CVMX_L2C_SPAR2 (CVMX_ADD_IO_SEG(0x0001180080000078ull))
  82#define CVMX_L2C_SPAR3 (CVMX_ADD_IO_SEG(0x0001180080000080ull))
  83#define CVMX_L2C_SPAR4 (CVMX_ADD_IO_SEG(0x0001180080000088ull))
  84#define CVMX_L2C_TADX_ECC0(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00018ull) + ((block_id) & 3) * 0x40000ull)
  85#define CVMX_L2C_TADX_ECC1(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00020ull) + ((block_id) & 3) * 0x40000ull)
  86#define CVMX_L2C_TADX_IEN(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00000ull) + ((block_id) & 3) * 0x40000ull)
  87#define CVMX_L2C_TADX_INT(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00028ull) + ((block_id) & 3) * 0x40000ull)
  88#define CVMX_L2C_TADX_PFC0(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00400ull) + ((block_id) & 3) * 0x40000ull)
  89#define CVMX_L2C_TADX_PFC1(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00408ull) + ((block_id) & 3) * 0x40000ull)
  90#define CVMX_L2C_TADX_PFC2(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00410ull) + ((block_id) & 3) * 0x40000ull)
  91#define CVMX_L2C_TADX_PFC3(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00418ull) + ((block_id) & 3) * 0x40000ull)
  92#define CVMX_L2C_TADX_PRF(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00008ull) + ((block_id) & 3) * 0x40000ull)
  93#define CVMX_L2C_TADX_TAG(block_id) (CVMX_ADD_IO_SEG(0x0001180080A00010ull) + ((block_id) & 3) * 0x40000ull)
  94#define CVMX_L2C_VER_ID (CVMX_ADD_IO_SEG(0x00011800808007E0ull))
  95#define CVMX_L2C_VER_IOB (CVMX_ADD_IO_SEG(0x00011800808007F0ull))
  96#define CVMX_L2C_VER_MSC (CVMX_ADD_IO_SEG(0x00011800808007D0ull))
  97#define CVMX_L2C_VER_PP (CVMX_ADD_IO_SEG(0x00011800808007E8ull))
  98#define CVMX_L2C_VIRTID_IOBX(offset) (CVMX_ADD_IO_SEG(0x00011800808C0200ull) + ((offset) & 1) * 8)
  99#define CVMX_L2C_VIRTID_PPX(offset) (CVMX_ADD_IO_SEG(0x00011800808C0000ull) + ((offset) & 31) * 8)
 100#define CVMX_L2C_VRT_CTL (CVMX_ADD_IO_SEG(0x0001180080800010ull))
 101#define CVMX_L2C_VRT_MEMX(offset) (CVMX_ADD_IO_SEG(0x0001180080900000ull) + ((offset) & 1023) * 8)
 102#define CVMX_L2C_WPAR_IOBX(offset) (CVMX_ADD_IO_SEG(0x0001180080840200ull) + ((offset) & 1) * 8)
 103#define CVMX_L2C_WPAR_PPX(offset) (CVMX_ADD_IO_SEG(0x0001180080840000ull) + ((offset) & 31) * 8)
 104#define CVMX_L2C_XMCX_PFC(offset) (CVMX_ADD_IO_SEG(0x0001180080800400ull) + ((offset) & 3) * 64)
 105#define CVMX_L2C_XMC_CMD (CVMX_ADD_IO_SEG(0x0001180080800028ull))
 106#define CVMX_L2C_XMDX_PFC(offset) (CVMX_ADD_IO_SEG(0x0001180080800408ull) + ((offset) & 3) * 64)
 107
 108union cvmx_l2c_big_ctl {
 109	uint64_t u64;
 110	struct cvmx_l2c_big_ctl_s {
 111#ifdef __BIG_ENDIAN_BITFIELD
 112		uint64_t reserved_8_63:56;
 113		uint64_t maxdram:4;
 114		uint64_t reserved_1_3:3;
 115		uint64_t disable:1;
 116#else
 117		uint64_t disable:1;
 118		uint64_t reserved_1_3:3;
 119		uint64_t maxdram:4;
 120		uint64_t reserved_8_63:56;
 121#endif
 122	} s;
 123	struct cvmx_l2c_big_ctl_s cn61xx;
 124	struct cvmx_l2c_big_ctl_s cn63xx;
 125	struct cvmx_l2c_big_ctl_s cn66xx;
 126	struct cvmx_l2c_big_ctl_s cn68xx;
 127	struct cvmx_l2c_big_ctl_s cn68xxp1;
 128	struct cvmx_l2c_big_ctl_s cnf71xx;
 129};
 130
 131union cvmx_l2c_bst {
 132	uint64_t u64;
 133	struct cvmx_l2c_bst_s {
 134#ifdef __BIG_ENDIAN_BITFIELD
 135		uint64_t dutfl:32;
 136		uint64_t rbffl:4;
 137		uint64_t xbffl:4;
 138		uint64_t tdpfl:4;
 139		uint64_t ioccmdfl:4;
 140		uint64_t iocdatfl:4;
 141		uint64_t dutresfl:4;
 142		uint64_t vrtfl:4;
 143		uint64_t tdffl:4;
 144#else
 145		uint64_t tdffl:4;
 146		uint64_t vrtfl:4;
 147		uint64_t dutresfl:4;
 148		uint64_t iocdatfl:4;
 149		uint64_t ioccmdfl:4;
 150		uint64_t tdpfl:4;
 151		uint64_t xbffl:4;
 152		uint64_t rbffl:4;
 153		uint64_t dutfl:32;
 154#endif
 155	} s;
 156	struct cvmx_l2c_bst_cn61xx {
 157#ifdef __BIG_ENDIAN_BITFIELD
 158		uint64_t reserved_36_63:28;
 159		uint64_t dutfl:4;
 160		uint64_t reserved_17_31:15;
 161		uint64_t ioccmdfl:1;
 162		uint64_t reserved_13_15:3;
 163		uint64_t iocdatfl:1;
 164		uint64_t reserved_9_11:3;
 165		uint64_t dutresfl:1;
 166		uint64_t reserved_5_7:3;
 167		uint64_t vrtfl:1;
 168		uint64_t reserved_1_3:3;
 169		uint64_t tdffl:1;
 170#else
 171		uint64_t tdffl:1;
 172		uint64_t reserved_1_3:3;
 173		uint64_t vrtfl:1;
 174		uint64_t reserved_5_7:3;
 175		uint64_t dutresfl:1;
 176		uint64_t reserved_9_11:3;
 177		uint64_t iocdatfl:1;
 178		uint64_t reserved_13_15:3;
 179		uint64_t ioccmdfl:1;
 180		uint64_t reserved_17_31:15;
 181		uint64_t dutfl:4;
 182		uint64_t reserved_36_63:28;
 183#endif
 184	} cn61xx;
 185	struct cvmx_l2c_bst_cn63xx {
 186#ifdef __BIG_ENDIAN_BITFIELD
 187		uint64_t reserved_38_63:26;
 188		uint64_t dutfl:6;
 189		uint64_t reserved_17_31:15;
 190		uint64_t ioccmdfl:1;
 191		uint64_t reserved_13_15:3;
 192		uint64_t iocdatfl:1;
 193		uint64_t reserved_9_11:3;
 194		uint64_t dutresfl:1;
 195		uint64_t reserved_5_7:3;
 196		uint64_t vrtfl:1;
 197		uint64_t reserved_1_3:3;
 198		uint64_t tdffl:1;
 199#else
 200		uint64_t tdffl:1;
 201		uint64_t reserved_1_3:3;
 202		uint64_t vrtfl:1;
 203		uint64_t reserved_5_7:3;
 204		uint64_t dutresfl:1;
 205		uint64_t reserved_9_11:3;
 206		uint64_t iocdatfl:1;
 207		uint64_t reserved_13_15:3;
 208		uint64_t ioccmdfl:1;
 209		uint64_t reserved_17_31:15;
 210		uint64_t dutfl:6;
 211		uint64_t reserved_38_63:26;
 212#endif
 213	} cn63xx;
 214	struct cvmx_l2c_bst_cn63xx cn63xxp1;
 215	struct cvmx_l2c_bst_cn66xx {
 216#ifdef __BIG_ENDIAN_BITFIELD
 217		uint64_t reserved_42_63:22;
 218		uint64_t dutfl:10;
 219		uint64_t reserved_17_31:15;
 220		uint64_t ioccmdfl:1;
 221		uint64_t reserved_13_15:3;
 222		uint64_t iocdatfl:1;
 223		uint64_t reserved_9_11:3;
 224		uint64_t dutresfl:1;
 225		uint64_t reserved_5_7:3;
 226		uint64_t vrtfl:1;
 227		uint64_t reserved_1_3:3;
 228		uint64_t tdffl:1;
 229#else
 230		uint64_t tdffl:1;
 231		uint64_t reserved_1_3:3;
 232		uint64_t vrtfl:1;
 233		uint64_t reserved_5_7:3;
 234		uint64_t dutresfl:1;
 235		uint64_t reserved_9_11:3;
 236		uint64_t iocdatfl:1;
 237		uint64_t reserved_13_15:3;
 238		uint64_t ioccmdfl:1;
 239		uint64_t reserved_17_31:15;
 240		uint64_t dutfl:10;
 241		uint64_t reserved_42_63:22;
 242#endif
 243	} cn66xx;
 244	struct cvmx_l2c_bst_s cn68xx;
 245	struct cvmx_l2c_bst_s cn68xxp1;
 246	struct cvmx_l2c_bst_cn61xx cnf71xx;
 247};
 248
 249union cvmx_l2c_bst0 {
 250	uint64_t u64;
 251	struct cvmx_l2c_bst0_s {
 252#ifdef __BIG_ENDIAN_BITFIELD
 253		uint64_t reserved_24_63:40;
 254		uint64_t dtbnk:1;
 255		uint64_t wlb_msk:4;
 256		uint64_t dtcnt:13;
 257		uint64_t dt:1;
 258		uint64_t stin_msk:1;
 259		uint64_t wlb_dat:4;
 260#else
 261		uint64_t wlb_dat:4;
 262		uint64_t stin_msk:1;
 263		uint64_t dt:1;
 264		uint64_t dtcnt:13;
 265		uint64_t wlb_msk:4;
 266		uint64_t dtbnk:1;
 267		uint64_t reserved_24_63:40;
 268#endif
 269	} s;
 270	struct cvmx_l2c_bst0_cn30xx {
 271#ifdef __BIG_ENDIAN_BITFIELD
 272		uint64_t reserved_23_63:41;
 273		uint64_t wlb_msk:4;
 274		uint64_t reserved_15_18:4;
 275		uint64_t dtcnt:9;
 276		uint64_t dt:1;
 277		uint64_t reserved_4_4:1;
 278		uint64_t wlb_dat:4;
 279#else
 280		uint64_t wlb_dat:4;
 281		uint64_t reserved_4_4:1;
 282		uint64_t dt:1;
 283		uint64_t dtcnt:9;
 284		uint64_t reserved_15_18:4;
 285		uint64_t wlb_msk:4;
 286		uint64_t reserved_23_63:41;
 287#endif
 288	} cn30xx;
 289	struct cvmx_l2c_bst0_cn31xx {
 290#ifdef __BIG_ENDIAN_BITFIELD
 291		uint64_t reserved_23_63:41;
 292		uint64_t wlb_msk:4;
 293		uint64_t reserved_16_18:3;
 294		uint64_t dtcnt:10;
 295		uint64_t dt:1;
 296		uint64_t stin_msk:1;
 297		uint64_t wlb_dat:4;
 298#else
 299		uint64_t wlb_dat:4;
 300		uint64_t stin_msk:1;
 301		uint64_t dt:1;
 302		uint64_t dtcnt:10;
 303		uint64_t reserved_16_18:3;
 304		uint64_t wlb_msk:4;
 305		uint64_t reserved_23_63:41;
 306#endif
 307	} cn31xx;
 308	struct cvmx_l2c_bst0_cn38xx {
 309#ifdef __BIG_ENDIAN_BITFIELD
 310		uint64_t reserved_19_63:45;
 311		uint64_t dtcnt:13;
 312		uint64_t dt:1;
 313		uint64_t stin_msk:1;
 314		uint64_t wlb_dat:4;
 315#else
 316		uint64_t wlb_dat:4;
 317		uint64_t stin_msk:1;
 318		uint64_t dt:1;
 319		uint64_t dtcnt:13;
 320		uint64_t reserved_19_63:45;
 321#endif
 322	} cn38xx;
 323	struct cvmx_l2c_bst0_cn38xx cn38xxp2;
 324	struct cvmx_l2c_bst0_cn50xx {
 325#ifdef __BIG_ENDIAN_BITFIELD
 326		uint64_t reserved_24_63:40;
 327		uint64_t dtbnk:1;
 328		uint64_t wlb_msk:4;
 329		uint64_t reserved_16_18:3;
 330		uint64_t dtcnt:10;
 331		uint64_t dt:1;
 332		uint64_t stin_msk:1;
 333		uint64_t wlb_dat:4;
 334#else
 335		uint64_t wlb_dat:4;
 336		uint64_t stin_msk:1;
 337		uint64_t dt:1;
 338		uint64_t dtcnt:10;
 339		uint64_t reserved_16_18:3;
 340		uint64_t wlb_msk:4;
 341		uint64_t dtbnk:1;
 342		uint64_t reserved_24_63:40;
 343#endif
 344	} cn50xx;
 345	struct cvmx_l2c_bst0_cn50xx cn52xx;
 346	struct cvmx_l2c_bst0_cn50xx cn52xxp1;
 347	struct cvmx_l2c_bst0_s cn56xx;
 348	struct cvmx_l2c_bst0_s cn56xxp1;
 349	struct cvmx_l2c_bst0_s cn58xx;
 350	struct cvmx_l2c_bst0_s cn58xxp1;
 351};
 352
 353union cvmx_l2c_bst1 {
 354	uint64_t u64;
 355	struct cvmx_l2c_bst1_s {
 356#ifdef __BIG_ENDIAN_BITFIELD
 357		uint64_t reserved_9_63:55;
 358		uint64_t l2t:9;
 359#else
 360		uint64_t l2t:9;
 361		uint64_t reserved_9_63:55;
 362#endif
 363	} s;
 364	struct cvmx_l2c_bst1_cn30xx {
 365#ifdef __BIG_ENDIAN_BITFIELD
 366		uint64_t reserved_16_63:48;
 367		uint64_t vwdf:4;
 368		uint64_t lrf:2;
 369		uint64_t vab_vwcf:1;
 370		uint64_t reserved_5_8:4;
 371		uint64_t l2t:5;
 372#else
 373		uint64_t l2t:5;
 374		uint64_t reserved_5_8:4;
 375		uint64_t vab_vwcf:1;
 376		uint64_t lrf:2;
 377		uint64_t vwdf:4;
 378		uint64_t reserved_16_63:48;
 379#endif
 380	} cn30xx;
 381	struct cvmx_l2c_bst1_cn30xx cn31xx;
 382	struct cvmx_l2c_bst1_cn38xx {
 383#ifdef __BIG_ENDIAN_BITFIELD
 384		uint64_t reserved_16_63:48;
 385		uint64_t vwdf:4;
 386		uint64_t lrf:2;
 387		uint64_t vab_vwcf:1;
 388		uint64_t l2t:9;
 389#else
 390		uint64_t l2t:9;
 391		uint64_t vab_vwcf:1;
 392		uint64_t lrf:2;
 393		uint64_t vwdf:4;
 394		uint64_t reserved_16_63:48;
 395#endif
 396	} cn38xx;
 397	struct cvmx_l2c_bst1_cn38xx cn38xxp2;
 398	struct cvmx_l2c_bst1_cn38xx cn50xx;
 399	struct cvmx_l2c_bst1_cn52xx {
 400#ifdef __BIG_ENDIAN_BITFIELD
 401		uint64_t reserved_19_63:45;
 402		uint64_t plc2:1;
 403		uint64_t plc1:1;
 404		uint64_t plc0:1;
 405		uint64_t vwdf:4;
 406		uint64_t reserved_11_11:1;
 407		uint64_t ilc:1;
 408		uint64_t vab_vwcf:1;
 409		uint64_t l2t:9;
 410#else
 411		uint64_t l2t:9;
 412		uint64_t vab_vwcf:1;
 413		uint64_t ilc:1;
 414		uint64_t reserved_11_11:1;
 415		uint64_t vwdf:4;
 416		uint64_t plc0:1;
 417		uint64_t plc1:1;
 418		uint64_t plc2:1;
 419		uint64_t reserved_19_63:45;
 420#endif
 421	} cn52xx;
 422	struct cvmx_l2c_bst1_cn52xx cn52xxp1;
 423	struct cvmx_l2c_bst1_cn56xx {
 424#ifdef __BIG_ENDIAN_BITFIELD
 425		uint64_t reserved_24_63:40;
 426		uint64_t plc2:1;
 427		uint64_t plc1:1;
 428		uint64_t plc0:1;
 429		uint64_t ilc:1;
 430		uint64_t vwdf1:4;
 431		uint64_t vwdf0:4;
 432		uint64_t vab_vwcf1:1;
 433		uint64_t reserved_10_10:1;
 434		uint64_t vab_vwcf0:1;
 435		uint64_t l2t:9;
 436#else
 437		uint64_t l2t:9;
 438		uint64_t vab_vwcf0:1;
 439		uint64_t reserved_10_10:1;
 440		uint64_t vab_vwcf1:1;
 441		uint64_t vwdf0:4;
 442		uint64_t vwdf1:4;
 443		uint64_t ilc:1;
 444		uint64_t plc0:1;
 445		uint64_t plc1:1;
 446		uint64_t plc2:1;
 447		uint64_t reserved_24_63:40;
 448#endif
 449	} cn56xx;
 450	struct cvmx_l2c_bst1_cn56xx cn56xxp1;
 451	struct cvmx_l2c_bst1_cn38xx cn58xx;
 452	struct cvmx_l2c_bst1_cn38xx cn58xxp1;
 453};
 454
 455union cvmx_l2c_bst2 {
 456	uint64_t u64;
 457	struct cvmx_l2c_bst2_s {
 458#ifdef __BIG_ENDIAN_BITFIELD
 459		uint64_t reserved_16_63:48;
 460		uint64_t mrb:4;
 461		uint64_t reserved_4_11:8;
 462		uint64_t ipcbst:1;
 463		uint64_t picbst:1;
 464		uint64_t xrdmsk:1;
 465		uint64_t xrddat:1;
 466#else
 467		uint64_t xrddat:1;
 468		uint64_t xrdmsk:1;
 469		uint64_t picbst:1;
 470		uint64_t ipcbst:1;
 471		uint64_t reserved_4_11:8;
 472		uint64_t mrb:4;
 473		uint64_t reserved_16_63:48;
 474#endif
 475	} s;
 476	struct cvmx_l2c_bst2_cn30xx {
 477#ifdef __BIG_ENDIAN_BITFIELD
 478		uint64_t reserved_16_63:48;
 479		uint64_t mrb:4;
 480		uint64_t rmdf:4;
 481		uint64_t reserved_4_7:4;
 482		uint64_t ipcbst:1;
 483		uint64_t reserved_2_2:1;
 484		uint64_t xrdmsk:1;
 485		uint64_t xrddat:1;
 486#else
 487		uint64_t xrddat:1;
 488		uint64_t xrdmsk:1;
 489		uint64_t reserved_2_2:1;
 490		uint64_t ipcbst:1;
 491		uint64_t reserved_4_7:4;
 492		uint64_t rmdf:4;
 493		uint64_t mrb:4;
 494		uint64_t reserved_16_63:48;
 495#endif
 496	} cn30xx;
 497	struct cvmx_l2c_bst2_cn30xx cn31xx;
 498	struct cvmx_l2c_bst2_cn38xx {
 499#ifdef __BIG_ENDIAN_BITFIELD
 500		uint64_t reserved_16_63:48;
 501		uint64_t mrb:4;
 502		uint64_t rmdf:4;
 503		uint64_t rhdf:4;
 504		uint64_t ipcbst:1;
 505		uint64_t picbst:1;
 506		uint64_t xrdmsk:1;
 507		uint64_t xrddat:1;
 508#else
 509		uint64_t xrddat:1;
 510		uint64_t xrdmsk:1;
 511		uint64_t picbst:1;
 512		uint64_t ipcbst:1;
 513		uint64_t rhdf:4;
 514		uint64_t rmdf:4;
 515		uint64_t mrb:4;
 516		uint64_t reserved_16_63:48;
 517#endif
 518	} cn38xx;
 519	struct cvmx_l2c_bst2_cn38xx cn38xxp2;
 520	struct cvmx_l2c_bst2_cn30xx cn50xx;
 521	struct cvmx_l2c_bst2_cn30xx cn52xx;
 522	struct cvmx_l2c_bst2_cn30xx cn52xxp1;
 523	struct cvmx_l2c_bst2_cn56xx {
 524#ifdef __BIG_ENDIAN_BITFIELD
 525		uint64_t reserved_16_63:48;
 526		uint64_t mrb:4;
 527		uint64_t rmdb:4;
 528		uint64_t rhdb:4;
 529		uint64_t ipcbst:1;
 530		uint64_t picbst:1;
 531		uint64_t xrdmsk:1;
 532		uint64_t xrddat:1;
 533#else
 534		uint64_t xrddat:1;
 535		uint64_t xrdmsk:1;
 536		uint64_t picbst:1;
 537		uint64_t ipcbst:1;
 538		uint64_t rhdb:4;
 539		uint64_t rmdb:4;
 540		uint64_t mrb:4;
 541		uint64_t reserved_16_63:48;
 542#endif
 543	} cn56xx;
 544	struct cvmx_l2c_bst2_cn56xx cn56xxp1;
 545	struct cvmx_l2c_bst2_cn56xx cn58xx;
 546	struct cvmx_l2c_bst2_cn56xx cn58xxp1;
 547};
 548
 549union cvmx_l2c_bst_memx {
 550	uint64_t u64;
 551	struct cvmx_l2c_bst_memx_s {
 552#ifdef __BIG_ENDIAN_BITFIELD
 553		uint64_t start_bist:1;
 554		uint64_t clear_bist:1;
 555		uint64_t reserved_5_61:57;
 556		uint64_t rdffl:1;
 557		uint64_t vbffl:4;
 558#else
 559		uint64_t vbffl:4;
 560		uint64_t rdffl:1;
 561		uint64_t reserved_5_61:57;
 562		uint64_t clear_bist:1;
 563		uint64_t start_bist:1;
 564#endif
 565	} s;
 566	struct cvmx_l2c_bst_memx_s cn61xx;
 567	struct cvmx_l2c_bst_memx_s cn63xx;
 568	struct cvmx_l2c_bst_memx_s cn63xxp1;
 569	struct cvmx_l2c_bst_memx_s cn66xx;
 570	struct cvmx_l2c_bst_memx_s cn68xx;
 571	struct cvmx_l2c_bst_memx_s cn68xxp1;
 572	struct cvmx_l2c_bst_memx_s cnf71xx;
 573};
 574
 575union cvmx_l2c_bst_tdtx {
 576	uint64_t u64;
 577	struct cvmx_l2c_bst_tdtx_s {
 578#ifdef __BIG_ENDIAN_BITFIELD
 579		uint64_t reserved_32_63:32;
 580		uint64_t fbfrspfl:8;
 581		uint64_t sbffl:8;
 582		uint64_t fbffl:8;
 583		uint64_t l2dfl:8;
 584#else
 585		uint64_t l2dfl:8;
 586		uint64_t fbffl:8;
 587		uint64_t sbffl:8;
 588		uint64_t fbfrspfl:8;
 589		uint64_t reserved_32_63:32;
 590#endif
 591	} s;
 592	struct cvmx_l2c_bst_tdtx_s cn61xx;
 593	struct cvmx_l2c_bst_tdtx_s cn63xx;
 594	struct cvmx_l2c_bst_tdtx_cn63xxp1 {
 595#ifdef __BIG_ENDIAN_BITFIELD
 596		uint64_t reserved_24_63:40;
 597		uint64_t sbffl:8;
 598		uint64_t fbffl:8;
 599		uint64_t l2dfl:8;
 600#else
 601		uint64_t l2dfl:8;
 602		uint64_t fbffl:8;
 603		uint64_t sbffl:8;
 604		uint64_t reserved_24_63:40;
 605#endif
 606	} cn63xxp1;
 607	struct cvmx_l2c_bst_tdtx_s cn66xx;
 608	struct cvmx_l2c_bst_tdtx_s cn68xx;
 609	struct cvmx_l2c_bst_tdtx_s cn68xxp1;
 610	struct cvmx_l2c_bst_tdtx_s cnf71xx;
 611};
 612
 613union cvmx_l2c_bst_ttgx {
 614	uint64_t u64;
 615	struct cvmx_l2c_bst_ttgx_s {
 616#ifdef __BIG_ENDIAN_BITFIELD
 617		uint64_t reserved_17_63:47;
 618		uint64_t lrufl:1;
 619		uint64_t tagfl:16;
 620#else
 621		uint64_t tagfl:16;
 622		uint64_t lrufl:1;
 623		uint64_t reserved_17_63:47;
 624#endif
 625	} s;
 626	struct cvmx_l2c_bst_ttgx_s cn61xx;
 627	struct cvmx_l2c_bst_ttgx_s cn63xx;
 628	struct cvmx_l2c_bst_ttgx_s cn63xxp1;
 629	struct cvmx_l2c_bst_ttgx_s cn66xx;
 630	struct cvmx_l2c_bst_ttgx_s cn68xx;
 631	struct cvmx_l2c_bst_ttgx_s cn68xxp1;
 632	struct cvmx_l2c_bst_ttgx_s cnf71xx;
 633};
 634
 635union cvmx_l2c_cfg {
 636	uint64_t u64;
 637	struct cvmx_l2c_cfg_s {
 638#ifdef __BIG_ENDIAN_BITFIELD
 639		uint64_t reserved_20_63:44;
 640		uint64_t bstrun:1;
 641		uint64_t lbist:1;
 642		uint64_t xor_bank:1;
 643		uint64_t dpres1:1;
 644		uint64_t dpres0:1;
 645		uint64_t dfill_dis:1;
 646		uint64_t fpexp:4;
 647		uint64_t fpempty:1;
 648		uint64_t fpen:1;
 649		uint64_t idxalias:1;
 650		uint64_t mwf_crd:4;
 651		uint64_t rsp_arb_mode:1;
 652		uint64_t rfb_arb_mode:1;
 653		uint64_t lrf_arb_mode:1;
 654#else
 655		uint64_t lrf_arb_mode:1;
 656		uint64_t rfb_arb_mode:1;
 657		uint64_t rsp_arb_mode:1;
 658		uint64_t mwf_crd:4;
 659		uint64_t idxalias:1;
 660		uint64_t fpen:1;
 661		uint64_t fpempty:1;
 662		uint64_t fpexp:4;
 663		uint64_t dfill_dis:1;
 664		uint64_t dpres0:1;
 665		uint64_t dpres1:1;
 666		uint64_t xor_bank:1;
 667		uint64_t lbist:1;
 668		uint64_t bstrun:1;
 669		uint64_t reserved_20_63:44;
 670#endif
 671	} s;
 672	struct cvmx_l2c_cfg_cn30xx {
 673#ifdef __BIG_ENDIAN_BITFIELD
 674		uint64_t reserved_14_63:50;
 675		uint64_t fpexp:4;
 676		uint64_t fpempty:1;
 677		uint64_t fpen:1;
 678		uint64_t idxalias:1;
 679		uint64_t mwf_crd:4;
 680		uint64_t rsp_arb_mode:1;
 681		uint64_t rfb_arb_mode:1;
 682		uint64_t lrf_arb_mode:1;
 683#else
 684		uint64_t lrf_arb_mode:1;
 685		uint64_t rfb_arb_mode:1;
 686		uint64_t rsp_arb_mode:1;
 687		uint64_t mwf_crd:4;
 688		uint64_t idxalias:1;
 689		uint64_t fpen:1;
 690		uint64_t fpempty:1;
 691		uint64_t fpexp:4;
 692		uint64_t reserved_14_63:50;
 693#endif
 694	} cn30xx;
 695	struct cvmx_l2c_cfg_cn30xx cn31xx;
 696	struct cvmx_l2c_cfg_cn30xx cn38xx;
 697	struct cvmx_l2c_cfg_cn30xx cn38xxp2;
 698	struct cvmx_l2c_cfg_cn50xx {
 699#ifdef __BIG_ENDIAN_BITFIELD
 700		uint64_t reserved_20_63:44;
 701		uint64_t bstrun:1;
 702		uint64_t lbist:1;
 703		uint64_t reserved_14_17:4;
 704		uint64_t fpexp:4;
 705		uint64_t fpempty:1;
 706		uint64_t fpen:1;
 707		uint64_t idxalias:1;
 708		uint64_t mwf_crd:4;
 709		uint64_t rsp_arb_mode:1;
 710		uint64_t rfb_arb_mode:1;
 711		uint64_t lrf_arb_mode:1;
 712#else
 713		uint64_t lrf_arb_mode:1;
 714		uint64_t rfb_arb_mode:1;
 715		uint64_t rsp_arb_mode:1;
 716		uint64_t mwf_crd:4;
 717		uint64_t idxalias:1;
 718		uint64_t fpen:1;
 719		uint64_t fpempty:1;
 720		uint64_t fpexp:4;
 721		uint64_t reserved_14_17:4;
 722		uint64_t lbist:1;
 723		uint64_t bstrun:1;
 724		uint64_t reserved_20_63:44;
 725#endif
 726	} cn50xx;
 727	struct cvmx_l2c_cfg_cn50xx cn52xx;
 728	struct cvmx_l2c_cfg_cn50xx cn52xxp1;
 729	struct cvmx_l2c_cfg_s cn56xx;
 730	struct cvmx_l2c_cfg_s cn56xxp1;
 731	struct cvmx_l2c_cfg_cn58xx {
 732#ifdef __BIG_ENDIAN_BITFIELD
 733		uint64_t reserved_20_63:44;
 734		uint64_t bstrun:1;
 735		uint64_t lbist:1;
 736		uint64_t reserved_15_17:3;
 737		uint64_t dfill_dis:1;
 738		uint64_t fpexp:4;
 739		uint64_t fpempty:1;
 740		uint64_t fpen:1;
 741		uint64_t idxalias:1;
 742		uint64_t mwf_crd:4;
 743		uint64_t rsp_arb_mode:1;
 744		uint64_t rfb_arb_mode:1;
 745		uint64_t lrf_arb_mode:1;
 746#else
 747		uint64_t lrf_arb_mode:1;
 748		uint64_t rfb_arb_mode:1;
 749		uint64_t rsp_arb_mode:1;
 750		uint64_t mwf_crd:4;
 751		uint64_t idxalias:1;
 752		uint64_t fpen:1;
 753		uint64_t fpempty:1;
 754		uint64_t fpexp:4;
 755		uint64_t dfill_dis:1;
 756		uint64_t reserved_15_17:3;
 757		uint64_t lbist:1;
 758		uint64_t bstrun:1;
 759		uint64_t reserved_20_63:44;
 760#endif
 761	} cn58xx;
 762	struct cvmx_l2c_cfg_cn58xxp1 {
 763#ifdef __BIG_ENDIAN_BITFIELD
 764		uint64_t reserved_15_63:49;
 765		uint64_t dfill_dis:1;
 766		uint64_t fpexp:4;
 767		uint64_t fpempty:1;
 768		uint64_t fpen:1;
 769		uint64_t idxalias:1;
 770		uint64_t mwf_crd:4;
 771		uint64_t rsp_arb_mode:1;
 772		uint64_t rfb_arb_mode:1;
 773		uint64_t lrf_arb_mode:1;
 774#else
 775		uint64_t lrf_arb_mode:1;
 776		uint64_t rfb_arb_mode:1;
 777		uint64_t rsp_arb_mode:1;
 778		uint64_t mwf_crd:4;
 779		uint64_t idxalias:1;
 780		uint64_t fpen:1;
 781		uint64_t fpempty:1;
 782		uint64_t fpexp:4;
 783		uint64_t dfill_dis:1;
 784		uint64_t reserved_15_63:49;
 785#endif
 786	} cn58xxp1;
 787};
 788
 789union cvmx_l2c_cop0_mapx {
 790	uint64_t u64;
 791	struct cvmx_l2c_cop0_mapx_s {
 792#ifdef __BIG_ENDIAN_BITFIELD
 793		uint64_t data:64;
 794#else
 795		uint64_t data:64;
 796#endif
 797	} s;
 798	struct cvmx_l2c_cop0_mapx_s cn61xx;
 799	struct cvmx_l2c_cop0_mapx_s cn63xx;
 800	struct cvmx_l2c_cop0_mapx_s cn63xxp1;
 801	struct cvmx_l2c_cop0_mapx_s cn66xx;
 802	struct cvmx_l2c_cop0_mapx_s cn68xx;
 803	struct cvmx_l2c_cop0_mapx_s cn68xxp1;
 804	struct cvmx_l2c_cop0_mapx_s cnf71xx;
 805};
 806
 807union cvmx_l2c_ctl {
 808	uint64_t u64;
 809	struct cvmx_l2c_ctl_s {
 810#ifdef __BIG_ENDIAN_BITFIELD
 811		uint64_t reserved_30_63:34;
 812		uint64_t sepcmt:1;
 813		uint64_t rdf_fast:1;
 814		uint64_t disstgl2i:1;
 815		uint64_t l2dfsbe:1;
 816		uint64_t l2dfdbe:1;
 817		uint64_t discclk:1;
 818		uint64_t maxvab:4;
 819		uint64_t maxlfb:4;
 820		uint64_t rsp_arb_mode:1;
 821		uint64_t xmc_arb_mode:1;
 822		uint64_t ef_ena:1;
 823		uint64_t ef_cnt:7;
 824		uint64_t vab_thresh:4;
 825		uint64_t disecc:1;
 826		uint64_t disidxalias:1;
 827#else
 828		uint64_t disidxalias:1;
 829		uint64_t disecc:1;
 830		uint64_t vab_thresh:4;
 831		uint64_t ef_cnt:7;
 832		uint64_t ef_ena:1;
 833		uint64_t xmc_arb_mode:1;
 834		uint64_t rsp_arb_mode:1;
 835		uint64_t maxlfb:4;
 836		uint64_t maxvab:4;
 837		uint64_t discclk:1;
 838		uint64_t l2dfdbe:1;
 839		uint64_t l2dfsbe:1;
 840		uint64_t disstgl2i:1;
 841		uint64_t rdf_fast:1;
 842		uint64_t sepcmt:1;
 843		uint64_t reserved_30_63:34;
 844#endif
 845	} s;
 846	struct cvmx_l2c_ctl_cn61xx {
 847#ifdef __BIG_ENDIAN_BITFIELD
 848		uint64_t reserved_29_63:35;
 849		uint64_t rdf_fast:1;
 850		uint64_t disstgl2i:1;
 851		uint64_t l2dfsbe:1;
 852		uint64_t l2dfdbe:1;
 853		uint64_t discclk:1;
 854		uint64_t maxvab:4;
 855		uint64_t maxlfb:4;
 856		uint64_t rsp_arb_mode:1;
 857		uint64_t xmc_arb_mode:1;
 858		uint64_t ef_ena:1;
 859		uint64_t ef_cnt:7;
 860		uint64_t vab_thresh:4;
 861		uint64_t disecc:1;
 862		uint64_t disidxalias:1;
 863#else
 864		uint64_t disidxalias:1;
 865		uint64_t disecc:1;
 866		uint64_t vab_thresh:4;
 867		uint64_t ef_cnt:7;
 868		uint64_t ef_ena:1;
 869		uint64_t xmc_arb_mode:1;
 870		uint64_t rsp_arb_mode:1;
 871		uint64_t maxlfb:4;
 872		uint64_t maxvab:4;
 873		uint64_t discclk:1;
 874		uint64_t l2dfdbe:1;
 875		uint64_t l2dfsbe:1;
 876		uint64_t disstgl2i:1;
 877		uint64_t rdf_fast:1;
 878		uint64_t reserved_29_63:35;
 879#endif
 880	} cn61xx;
 881	struct cvmx_l2c_ctl_cn63xx {
 882#ifdef __BIG_ENDIAN_BITFIELD
 883		uint64_t reserved_28_63:36;
 884		uint64_t disstgl2i:1;
 885		uint64_t l2dfsbe:1;
 886		uint64_t l2dfdbe:1;
 887		uint64_t discclk:1;
 888		uint64_t maxvab:4;
 889		uint64_t maxlfb:4;
 890		uint64_t rsp_arb_mode:1;
 891		uint64_t xmc_arb_mode:1;
 892		uint64_t ef_ena:1;
 893		uint64_t ef_cnt:7;
 894		uint64_t vab_thresh:4;
 895		uint64_t disecc:1;
 896		uint64_t disidxalias:1;
 897#else
 898		uint64_t disidxalias:1;
 899		uint64_t disecc:1;
 900		uint64_t vab_thresh:4;
 901		uint64_t ef_cnt:7;
 902		uint64_t ef_ena:1;
 903		uint64_t xmc_arb_mode:1;
 904		uint64_t rsp_arb_mode:1;
 905		uint64_t maxlfb:4;
 906		uint64_t maxvab:4;
 907		uint64_t discclk:1;
 908		uint64_t l2dfdbe:1;
 909		uint64_t l2dfsbe:1;
 910		uint64_t disstgl2i:1;
 911		uint64_t reserved_28_63:36;
 912#endif
 913	} cn63xx;
 914	struct cvmx_l2c_ctl_cn63xxp1 {
 915#ifdef __BIG_ENDIAN_BITFIELD
 916		uint64_t reserved_25_63:39;
 917		uint64_t discclk:1;
 918		uint64_t maxvab:4;
 919		uint64_t maxlfb:4;
 920		uint64_t rsp_arb_mode:1;
 921		uint64_t xmc_arb_mode:1;
 922		uint64_t ef_ena:1;
 923		uint64_t ef_cnt:7;
 924		uint64_t vab_thresh:4;
 925		uint64_t disecc:1;
 926		uint64_t disidxalias:1;
 927#else
 928		uint64_t disidxalias:1;
 929		uint64_t disecc:1;
 930		uint64_t vab_thresh:4;
 931		uint64_t ef_cnt:7;
 932		uint64_t ef_ena:1;
 933		uint64_t xmc_arb_mode:1;
 934		uint64_t rsp_arb_mode:1;
 935		uint64_t maxlfb:4;
 936		uint64_t maxvab:4;
 937		uint64_t discclk:1;
 938		uint64_t reserved_25_63:39;
 939#endif
 940	} cn63xxp1;
 941	struct cvmx_l2c_ctl_cn61xx cn66xx;
 942	struct cvmx_l2c_ctl_s cn68xx;
 943	struct cvmx_l2c_ctl_cn63xx cn68xxp1;
 944	struct cvmx_l2c_ctl_cn61xx cnf71xx;
 945};
 946
 947union cvmx_l2c_dbg {
 948	uint64_t u64;
 949	struct cvmx_l2c_dbg_s {
 950#ifdef __BIG_ENDIAN_BITFIELD
 951		uint64_t reserved_15_63:49;
 952		uint64_t lfb_enum:4;
 953		uint64_t lfb_dmp:1;
 954		uint64_t ppnum:4;
 955		uint64_t set:3;
 956		uint64_t finv:1;
 957		uint64_t l2d:1;
 958		uint64_t l2t:1;
 959#else
 960		uint64_t l2t:1;
 961		uint64_t l2d:1;
 962		uint64_t finv:1;
 963		uint64_t set:3;
 964		uint64_t ppnum:4;
 965		uint64_t lfb_dmp:1;
 966		uint64_t lfb_enum:4;
 967		uint64_t reserved_15_63:49;
 968#endif
 969	} s;
 970	struct cvmx_l2c_dbg_cn30xx {
 971#ifdef __BIG_ENDIAN_BITFIELD
 972		uint64_t reserved_13_63:51;
 973		uint64_t lfb_enum:2;
 974		uint64_t lfb_dmp:1;
 975		uint64_t reserved_7_9:3;
 976		uint64_t ppnum:1;
 977		uint64_t reserved_5_5:1;
 978		uint64_t set:2;
 979		uint64_t finv:1;
 980		uint64_t l2d:1;
 981		uint64_t l2t:1;
 982#else
 983		uint64_t l2t:1;
 984		uint64_t l2d:1;
 985		uint64_t finv:1;
 986		uint64_t set:2;
 987		uint64_t reserved_5_5:1;
 988		uint64_t ppnum:1;
 989		uint64_t reserved_7_9:3;
 990		uint64_t lfb_dmp:1;
 991		uint64_t lfb_enum:2;
 992		uint64_t reserved_13_63:51;
 993#endif
 994	} cn30xx;
 995	struct cvmx_l2c_dbg_cn31xx {
 996#ifdef __BIG_ENDIAN_BITFIELD
 997		uint64_t reserved_14_63:50;
 998		uint64_t lfb_enum:3;
 999		uint64_t lfb_dmp:1;
1000		uint64_t reserved_7_9:3;
1001		uint64_t ppnum:1;
1002		uint64_t reserved_5_5:1;
1003		uint64_t set:2;
1004		uint64_t finv:1;
1005		uint64_t l2d:1;
1006		uint64_t l2t:1;
1007#else
1008		uint64_t l2t:1;
1009		uint64_t l2d:1;
1010		uint64_t finv:1;
1011		uint64_t set:2;
1012		uint64_t reserved_5_5:1;
1013		uint64_t ppnum:1;
1014		uint64_t reserved_7_9:3;
1015		uint64_t lfb_dmp:1;
1016		uint64_t lfb_enum:3;
1017		uint64_t reserved_14_63:50;
1018#endif
1019	} cn31xx;
1020	struct cvmx_l2c_dbg_s cn38xx;
1021	struct cvmx_l2c_dbg_s cn38xxp2;
1022	struct cvmx_l2c_dbg_cn50xx {
1023#ifdef __BIG_ENDIAN_BITFIELD
1024		uint64_t reserved_14_63:50;
1025		uint64_t lfb_enum:3;
1026		uint64_t lfb_dmp:1;
1027		uint64_t reserved_7_9:3;
1028		uint64_t ppnum:1;
1029		uint64_t set:3;
1030		uint64_t finv:1;
1031		uint64_t l2d:1;
1032		uint64_t l2t:1;
1033#else
1034		uint64_t l2t:1;
1035		uint64_t l2d:1;
1036		uint64_t finv:1;
1037		uint64_t set:3;
1038		uint64_t ppnum:1;
1039		uint64_t reserved_7_9:3;
1040		uint64_t lfb_dmp:1;
1041		uint64_t lfb_enum:3;
1042		uint64_t reserved_14_63:50;
1043#endif
1044	} cn50xx;
1045	struct cvmx_l2c_dbg_cn52xx {
1046#ifdef __BIG_ENDIAN_BITFIELD
1047		uint64_t reserved_14_63:50;
1048		uint64_t lfb_enum:3;
1049		uint64_t lfb_dmp:1;
1050		uint64_t reserved_8_9:2;
1051		uint64_t ppnum:2;
1052		uint64_t set:3;
1053		uint64_t finv:1;
1054		uint64_t l2d:1;
1055		uint64_t l2t:1;
1056#else
1057		uint64_t l2t:1;
1058		uint64_t l2d:1;
1059		uint64_t finv:1;
1060		uint64_t set:3;
1061		uint64_t ppnum:2;
1062		uint64_t reserved_8_9:2;
1063		uint64_t lfb_dmp:1;
1064		uint64_t lfb_enum:3;
1065		uint64_t reserved_14_63:50;
1066#endif
1067	} cn52xx;
1068	struct cvmx_l2c_dbg_cn52xx cn52xxp1;
1069	struct cvmx_l2c_dbg_s cn56xx;
1070	struct cvmx_l2c_dbg_s cn56xxp1;
1071	struct cvmx_l2c_dbg_s cn58xx;
1072	struct cvmx_l2c_dbg_s cn58xxp1;
1073};
1074
1075union cvmx_l2c_dut {
1076	uint64_t u64;
1077	struct cvmx_l2c_dut_s {
1078#ifdef __BIG_ENDIAN_BITFIELD
1079		uint64_t reserved_32_63:32;
1080		uint64_t dtena:1;
1081		uint64_t reserved_30_30:1;
1082		uint64_t dt_vld:1;
1083		uint64_t dt_tag:29;
1084#else
1085		uint64_t dt_tag:29;
1086		uint64_t dt_vld:1;
1087		uint64_t reserved_30_30:1;
1088		uint64_t dtena:1;
1089		uint64_t reserved_32_63:32;
1090#endif
1091	} s;
1092	struct cvmx_l2c_dut_s cn30xx;
1093	struct cvmx_l2c_dut_s cn31xx;
1094	struct cvmx_l2c_dut_s cn38xx;
1095	struct cvmx_l2c_dut_s cn38xxp2;
1096	struct cvmx_l2c_dut_s cn50xx;
1097	struct cvmx_l2c_dut_s cn52xx;
1098	struct cvmx_l2c_dut_s cn52xxp1;
1099	struct cvmx_l2c_dut_s cn56xx;
1100	struct cvmx_l2c_dut_s cn56xxp1;
1101	struct cvmx_l2c_dut_s cn58xx;
1102	struct cvmx_l2c_dut_s cn58xxp1;
1103};
1104
1105union cvmx_l2c_dut_mapx {
1106	uint64_t u64;
1107	struct cvmx_l2c_dut_mapx_s {
1108#ifdef __BIG_ENDIAN_BITFIELD
1109		uint64_t reserved_38_63:26;
1110		uint64_t tag:28;
1111		uint64_t reserved_1_9:9;
1112		uint64_t valid:1;
1113#else
1114		uint64_t valid:1;
1115		uint64_t reserved_1_9:9;
1116		uint64_t tag:28;
1117		uint64_t reserved_38_63:26;
1118#endif
1119	} s;
1120	struct cvmx_l2c_dut_mapx_s cn61xx;
1121	struct cvmx_l2c_dut_mapx_s cn63xx;
1122	struct cvmx_l2c_dut_mapx_s cn63xxp1;
1123	struct cvmx_l2c_dut_mapx_s cn66xx;
1124	struct cvmx_l2c_dut_mapx_s cn68xx;
1125	struct cvmx_l2c_dut_mapx_s cn68xxp1;
1126	struct cvmx_l2c_dut_mapx_s cnf71xx;
1127};
1128
1129union cvmx_l2c_err_tdtx {
1130	uint64_t u64;
1131	struct cvmx_l2c_err_tdtx_s {
1132#ifdef __BIG_ENDIAN_BITFIELD
1133		uint64_t dbe:1;
1134		uint64_t sbe:1;
1135		uint64_t vdbe:1;
1136		uint64_t vsbe:1;
1137		uint64_t syn:10;
1138		uint64_t reserved_22_49:28;
1139		uint64_t wayidx:18;
1140		uint64_t reserved_2_3:2;
1141		uint64_t type:2;
1142#else
1143		uint64_t type:2;
1144		uint64_t reserved_2_3:2;
1145		uint64_t wayidx:18;
1146		uint64_t reserved_22_49:28;
1147		uint64_t syn:10;
1148		uint64_t vsbe:1;
1149		uint64_t vdbe:1;
1150		uint64_t sbe:1;
1151		uint64_t dbe:1;
1152#endif
1153	} s;
1154	struct cvmx_l2c_err_tdtx_cn61xx {
1155#ifdef __BIG_ENDIAN_BITFIELD
1156		uint64_t dbe:1;
1157		uint64_t sbe:1;
1158		uint64_t vdbe:1;
1159		uint64_t vsbe:1;
1160		uint64_t syn:10;
1161		uint64_t reserved_20_49:30;
1162		uint64_t wayidx:16;
1163		uint64_t reserved_2_3:2;
1164		uint64_t type:2;
1165#else
1166		uint64_t type:2;
1167		uint64_t reserved_2_3:2;
1168		uint64_t wayidx:16;
1169		uint64_t reserved_20_49:30;
1170		uint64_t syn:10;
1171		uint64_t vsbe:1;
1172		uint64_t vdbe:1;
1173		uint64_t sbe:1;
1174		uint64_t dbe:1;
1175#endif
1176	} cn61xx;
1177	struct cvmx_l2c_err_tdtx_cn63xx {
1178#ifdef __BIG_ENDIAN_BITFIELD
1179		uint64_t dbe:1;
1180		uint64_t sbe:1;
1181		uint64_t vdbe:1;
1182		uint64_t vsbe:1;
1183		uint64_t syn:10;
1184		uint64_t reserved_21_49:29;
1185		uint64_t wayidx:17;
1186		uint64_t reserved_2_3:2;
1187		uint64_t type:2;
1188#else
1189		uint64_t type:2;
1190		uint64_t reserved_2_3:2;
1191		uint64_t wayidx:17;
1192		uint64_t reserved_21_49:29;
1193		uint64_t syn:10;
1194		uint64_t vsbe:1;
1195		uint64_t vdbe:1;
1196		uint64_t sbe:1;
1197		uint64_t dbe:1;
1198#endif
1199	} cn63xx;
1200	struct cvmx_l2c_err_tdtx_cn63xx cn63xxp1;
1201	struct cvmx_l2c_err_tdtx_cn63xx cn66xx;
1202	struct cvmx_l2c_err_tdtx_s cn68xx;
1203	struct cvmx_l2c_err_tdtx_s cn68xxp1;
1204	struct cvmx_l2c_err_tdtx_cn61xx cnf71xx;
1205};
1206
1207union cvmx_l2c_err_ttgx {
1208	uint64_t u64;
1209	struct cvmx_l2c_err_ttgx_s {
1210#ifdef __BIG_ENDIAN_BITFIELD
1211		uint64_t dbe:1;
1212		uint64_t sbe:1;
1213		uint64_t noway:1;
1214		uint64_t reserved_56_60:5;
1215		uint64_t syn:6;
1216		uint64_t reserved_22_49:28;
1217		uint64_t wayidx:15;
1218		uint64_t reserved_2_6:5;
1219		uint64_t type:2;
1220#else
1221		uint64_t type:2;
1222		uint64_t reserved_2_6:5;
1223		uint64_t wayidx:15;
1224		uint64_t reserved_22_49:28;
1225		uint64_t syn:6;
1226		uint64_t reserved_56_60:5;
1227		uint64_t noway:1;
1228		uint64_t sbe:1;
1229		uint64_t dbe:1;
1230#endif
1231	} s;
1232	struct cvmx_l2c_err_ttgx_cn61xx {
1233#ifdef __BIG_ENDIAN_BITFIELD
1234		uint64_t dbe:1;
1235		uint64_t sbe:1;
1236		uint64_t noway:1;
1237		uint64_t reserved_56_60:5;
1238		uint64_t syn:6;
1239		uint64_t reserved_20_49:30;
1240		uint64_t wayidx:13;
1241		uint64_t reserved_2_6:5;
1242		uint64_t type:2;
1243#else
1244		uint64_t type:2;
1245		uint64_t reserved_2_6:5;
1246		uint64_t wayidx:13;
1247		uint64_t reserved_20_49:30;
1248		uint64_t syn:6;
1249		uint64_t reserved_56_60:5;
1250		uint64_t noway:1;
1251		uint64_t sbe:1;
1252		uint64_t dbe:1;
1253#endif
1254	} cn61xx;
1255	struct cvmx_l2c_err_ttgx_cn63xx {
1256#ifdef __BIG_ENDIAN_BITFIELD
1257		uint64_t dbe:1;
1258		uint64_t sbe:1;
1259		uint64_t noway:1;
1260		uint64_t reserved_56_60:5;
1261		uint64_t syn:6;
1262		uint64_t reserved_21_49:29;
1263		uint64_t wayidx:14;
1264		uint64_t reserved_2_6:5;
1265		uint64_t type:2;
1266#else
1267		uint64_t type:2;
1268		uint64_t reserved_2_6:5;
1269		uint64_t wayidx:14;
1270		uint64_t reserved_21_49:29;
1271		uint64_t syn:6;
1272		uint64_t reserved_56_60:5;
1273		uint64_t noway:1;
1274		uint64_t sbe:1;
1275		uint64_t dbe:1;
1276#endif
1277	} cn63xx;
1278	struct cvmx_l2c_err_ttgx_cn63xx cn63xxp1;
1279	struct cvmx_l2c_err_ttgx_cn63xx cn66xx;
1280	struct cvmx_l2c_err_ttgx_s cn68xx;
1281	struct cvmx_l2c_err_ttgx_s cn68xxp1;
1282	struct cvmx_l2c_err_ttgx_cn61xx cnf71xx;
1283};
1284
1285union cvmx_l2c_err_vbfx {
1286	uint64_t u64;
1287	struct cvmx_l2c_err_vbfx_s {
1288#ifdef __BIG_ENDIAN_BITFIELD
1289		uint64_t reserved_62_63:2;
1290		uint64_t vdbe:1;
1291		uint64_t vsbe:1;
1292		uint64_t vsyn:10;
1293		uint64_t reserved_2_49:48;
1294		uint64_t type:2;
1295#else
1296		uint64_t type:2;
1297		uint64_t reserved_2_49:48;
1298		uint64_t vsyn:10;
1299		uint64_t vsbe:1;
1300		uint64_t vdbe:1;
1301		uint64_t reserved_62_63:2;
1302#endif
1303	} s;
1304	struct cvmx_l2c_err_vbfx_s cn61xx;
1305	struct cvmx_l2c_err_vbfx_s cn63xx;
1306	struct cvmx_l2c_err_vbfx_s cn63xxp1;
1307	struct cvmx_l2c_err_vbfx_s cn66xx;
1308	struct cvmx_l2c_err_vbfx_s cn68xx;
1309	struct cvmx_l2c_err_vbfx_s cn68xxp1;
1310	struct cvmx_l2c_err_vbfx_s cnf71xx;
1311};
1312
1313union cvmx_l2c_err_xmc {
1314	uint64_t u64;
1315	struct cvmx_l2c_err_xmc_s {
1316#ifdef __BIG_ENDIAN_BITFIELD
1317		uint64_t cmd:6;
1318		uint64_t reserved_54_57:4;
1319		uint64_t sid:6;
1320		uint64_t reserved_38_47:10;
1321		uint64_t addr:38;
1322#else
1323		uint64_t addr:38;
1324		uint64_t reserved_38_47:10;
1325		uint64_t sid:6;
1326		uint64_t reserved_54_57:4;
1327		uint64_t cmd:6;
1328#endif
1329	} s;
1330	struct cvmx_l2c_err_xmc_cn61xx {
1331#ifdef __BIG_ENDIAN_BITFIELD
1332		uint64_t cmd:6;
1333		uint64_t reserved_52_57:6;
1334		uint64_t sid:4;
1335		uint64_t reserved_38_47:10;
1336		uint64_t addr:38;
1337#else
1338		uint64_t addr:38;
1339		uint64_t reserved_38_47:10;
1340		uint64_t sid:4;
1341		uint64_t reserved_52_57:6;
1342		uint64_t cmd:6;
1343#endif
1344	} cn61xx;
1345	struct cvmx_l2c_err_xmc_cn61xx cn63xx;
1346	struct cvmx_l2c_err_xmc_cn61xx cn63xxp1;
1347	struct cvmx_l2c_err_xmc_cn66xx {
1348#ifdef __BIG_ENDIAN_BITFIELD
1349		uint64_t cmd:6;
1350		uint64_t reserved_53_57:5;
1351		uint64_t sid:5;
1352		uint64_t reserved_38_47:10;
1353		uint64_t addr:38;
1354#else
1355		uint64_t addr:38;
1356		uint64_t reserved_38_47:10;
1357		uint64_t sid:5;
1358		uint64_t reserved_53_57:5;
1359		uint64_t cmd:6;
1360#endif
1361	} cn66xx;
1362	struct cvmx_l2c_err_xmc_s cn68xx;
1363	struct cvmx_l2c_err_xmc_s cn68xxp1;
1364	struct cvmx_l2c_err_xmc_cn61xx cnf71xx;
1365};
1366
1367union cvmx_l2c_grpwrr0 {
1368	uint64_t u64;
1369	struct cvmx_l2c_grpwrr0_s {
1370#ifdef __BIG_ENDIAN_BITFIELD
1371		uint64_t plc1rmsk:32;
1372		uint64_t plc0rmsk:32;
1373#else
1374		uint64_t plc0rmsk:32;
1375		uint64_t plc1rmsk:32;
1376#endif
1377	} s;
1378	struct cvmx_l2c_grpwrr0_s cn52xx;
1379	struct cvmx_l2c_grpwrr0_s cn52xxp1;
1380	struct cvmx_l2c_grpwrr0_s cn56xx;
1381	struct cvmx_l2c_grpwrr0_s cn56xxp1;
1382};
1383
1384union cvmx_l2c_grpwrr1 {
1385	uint64_t u64;
1386	struct cvmx_l2c_grpwrr1_s {
1387#ifdef __BIG_ENDIAN_BITFIELD
1388		uint64_t ilcrmsk:32;
1389		uint64_t plc2rmsk:32;
1390#else
1391		uint64_t plc2rmsk:32;
1392		uint64_t ilcrmsk:32;
1393#endif
1394	} s;
1395	struct cvmx_l2c_grpwrr1_s cn52xx;
1396	struct cvmx_l2c_grpwrr1_s cn52xxp1;
1397	struct cvmx_l2c_grpwrr1_s cn56xx;
1398	struct cvmx_l2c_grpwrr1_s cn56xxp1;
1399};
1400
1401union cvmx_l2c_int_en {
1402	uint64_t u64;
1403	struct cvmx_l2c_int_en_s {
1404#ifdef __BIG_ENDIAN_BITFIELD
1405		uint64_t reserved_9_63:55;
1406		uint64_t lck2ena:1;
1407		uint64_t lckena:1;
1408		uint64_t l2ddeden:1;
1409		uint64_t l2dsecen:1;
1410		uint64_t l2tdeden:1;
1411		uint64_t l2tsecen:1;
1412		uint64_t oob3en:1;
1413		uint64_t oob2en:1;
1414		uint64_t oob1en:1;
1415#else
1416		uint64_t oob1en:1;
1417		uint64_t oob2en:1;
1418		uint64_t oob3en:1;
1419		uint64_t l2tsecen:1;
1420		uint64_t l2tdeden:1;
1421		uint64_t l2dsecen:1;
1422		uint64_t l2ddeden:1;
1423		uint64_t lckena:1;
1424		uint64_t lck2ena:1;
1425		uint64_t reserved_9_63:55;
1426#endif
1427	} s;
1428	struct cvmx_l2c_int_en_s cn52xx;
1429	struct cvmx_l2c_int_en_s cn52xxp1;
1430	struct cvmx_l2c_int_en_s cn56xx;
1431	struct cvmx_l2c_int_en_s cn56xxp1;
1432};
1433
1434union cvmx_l2c_int_ena {
1435	uint64_t u64;
1436	struct cvmx_l2c_int_ena_s {
1437#ifdef __BIG_ENDIAN_BITFIELD
1438		uint64_t reserved_8_63:56;
1439		uint64_t bigrd:1;
1440		uint64_t bigwr:1;
1441		uint64_t vrtpe:1;
1442		uint64_t vrtadrng:1;
1443		uint64_t vrtidrng:1;
1444		uint64_t vrtwr:1;
1445		uint64_t holewr:1;
1446		uint64_t holerd:1;
1447#else
1448		uint64_t holerd:1;
1449		uint64_t holewr:1;
1450		uint64_t vrtwr:1;
1451		uint64_t vrtidrng:1;
1452		uint64_t vrtadrng:1;
1453		uint64_t vrtpe:1;
1454		uint64_t bigwr:1;
1455		uint64_t bigrd:1;
1456		uint64_t reserved_8_63:56;
1457#endif
1458	} s;
1459	struct cvmx_l2c_int_ena_s cn61xx;
1460	struct cvmx_l2c_int_ena_s cn63xx;
1461	struct cvmx_l2c_int_ena_cn63xxp1 {
1462#ifdef __BIG_ENDIAN_BITFIELD
1463		uint64_t reserved_6_63:58;
1464		uint64_t vrtpe:1;
1465		uint64_t vrtadrng:1;
1466		uint64_t vrtidrng:1;
1467		uint64_t vrtwr:1;
1468		uint64_t holewr:1;
1469		uint64_t holerd:1;
1470#else
1471		uint64_t holerd:1;
1472		uint64_t holewr:1;
1473		uint64_t vrtwr:1;
1474		uint64_t vrtidrng:1;
1475		uint64_t vrtadrng:1;
1476		uint64_t vrtpe:1;
1477		uint64_t reserved_6_63:58;
1478#endif
1479	} cn63xxp1;
1480	struct cvmx_l2c_int_ena_s cn66xx;
1481	struct cvmx_l2c_int_ena_s cn68xx;
1482	struct cvmx_l2c_int_ena_s cn68xxp1;
1483	struct cvmx_l2c_int_ena_s cnf71xx;
1484};
1485
1486union cvmx_l2c_int_reg {
1487	uint64_t u64;
1488	struct cvmx_l2c_int_reg_s {
1489#ifdef __BIG_ENDIAN_BITFIELD
1490		uint64_t reserved_20_63:44;
1491		uint64_t tad3:1;
1492		uint64_t tad2:1;
1493		uint64_t tad1:1;
1494		uint64_t tad0:1;
1495		uint64_t reserved_8_15:8;
1496		uint64_t bigrd:1;
1497		uint64_t bigwr:1;
1498		uint64_t vrtpe:1;
1499		uint64_t vrtadrng:1;
1500		uint64_t vrtidrng:1;
1501		uint64_t vrtwr:1;
1502		uint64_t holewr:1;
1503		uint64_t holerd:1;
1504#else
1505		uint64_t holerd:1;
1506		uint64_t holewr:1;
1507		uint64_t vrtwr:1;
1508		uint64_t vrtidrng:1;
1509		uint64_t vrtadrng:1;
1510		uint64_t vrtpe:1;
1511		uint64_t bigwr:1;
1512		uint64_t bigrd:1;
1513		uint64_t reserved_8_15:8;
1514		uint64_t tad0:1;
1515		uint64_t tad1:1;
1516		uint64_t tad2:1;
1517		uint64_t tad3:1;
1518		uint64_t reserved_20_63:44;
1519#endif
1520	} s;
1521	struct cvmx_l2c_int_reg_cn61xx {
1522#ifdef __BIG_ENDIAN_BITFIELD
1523		uint64_t reserved_17_63:47;
1524		uint64_t tad0:1;
1525		uint64_t reserved_8_15:8;
1526		uint64_t bigrd:1;
1527		uint64_t bigwr:1;
1528		uint64_t vrtpe:1;
1529		uint64_t vrtadrng:1;
1530		uint64_t vrtidrng:1;
1531		uint64_t vrtwr:1;
1532		uint64_t holewr:1;
1533		uint64_t holerd:1;
1534#else
1535		uint64_t holerd:1;
1536		uint64_t holewr:1;
1537		uint64_t vrtwr:1;
1538		uint64_t vrtidrng:1;
1539		uint64_t vrtadrng:1;
1540		uint64_t vrtpe:1;
1541		uint64_t bigwr:1;
1542		uint64_t bigrd:1;
1543		uint64_t reserved_8_15:8;
1544		uint64_t tad0:1;
1545		uint64_t reserved_17_63:47;
1546#endif
1547	} cn61xx;
1548	struct cvmx_l2c_int_reg_cn61xx cn63xx;
1549	struct cvmx_l2c_int_reg_cn63xxp1 {
1550#ifdef __BIG_ENDIAN_BITFIELD
1551		uint64_t reserved_17_63:47;
1552		uint64_t tad0:1;
1553		uint64_t reserved_6_15:10;
1554		uint64_t vrtpe:1;
1555		uint64_t vrtadrng:1;
1556		uint64_t vrtidrng:1;
1557		uint64_t vrtwr:1;
1558		uint64_t holewr:1;
1559		uint64_t holerd:1;
1560#else
1561		uint64_t holerd:1;
1562		uint64_t holewr:1;
1563		uint64_t vrtwr:1;
1564		uint64_t vrtidrng:1;
1565		uint64_t vrtadrng:1;
1566		uint64_t vrtpe:1;
1567		uint64_t reserved_6_15:10;
1568		uint64_t tad0:1;
1569		uint64_t reserved_17_63:47;
1570#endif
1571	} cn63xxp1;
1572	struct cvmx_l2c_int_reg_cn61xx cn66xx;
1573	struct cvmx_l2c_int_reg_s cn68xx;
1574	struct cvmx_l2c_int_reg_s cn68xxp1;
1575	struct cvmx_l2c_int_reg_cn61xx cnf71xx;
1576};
1577
1578union cvmx_l2c_int_stat {
1579	uint64_t u64;
1580	struct cvmx_l2c_int_stat_s {
1581#ifdef __BIG_ENDIAN_BITFIELD
1582		uint64_t reserved_9_63:55;
1583		uint64_t lck2:1;
1584		uint64_t lck:1;
1585		uint64_t l2dded:1;
1586		uint64_t l2dsec:1;
1587		uint64_t l2tded:1;
1588		uint64_t l2tsec:1;
1589		uint64_t oob3:1;
1590		uint64_t oob2:1;
1591		uint64_t oob1:1;
1592#else
1593		uint64_t oob1:1;
1594		uint64_t oob2:1;
1595		uint64_t oob3:1;
1596		uint64_t l2tsec:1;
1597		uint64_t l2tded:1;
1598		uint64_t l2dsec:1;
1599		uint64_t l2dded:1;
1600		uint64_t lck:1;
1601		uint64_t lck2:1;
1602		uint64_t reserved_9_63:55;
1603#endif
1604	} s;
1605	struct cvmx_l2c_int_stat_s cn52xx;
1606	struct cvmx_l2c_int_stat_s cn52xxp1;
1607	struct cvmx_l2c_int_stat_s cn56xx;
1608	struct cvmx_l2c_int_stat_s cn56xxp1;
1609};
1610
1611union cvmx_l2c_iocx_pfc {
1612	uint64_t u64;
1613	struct cvmx_l2c_iocx_pfc_s {
1614#ifdef __BIG_ENDIAN_BITFIELD
1615		uint64_t count:64;
1616#else
1617		uint64_t count:64;
1618#endif
1619	} s;
1620	struct cvmx_l2c_iocx_pfc_s cn61xx;
1621	struct cvmx_l2c_iocx_pfc_s cn63xx;
1622	struct cvmx_l2c_iocx_pfc_s cn63xxp1;
1623	struct cvmx_l2c_iocx_pfc_s cn66xx;
1624	struct cvmx_l2c_iocx_pfc_s cn68xx;
1625	struct cvmx_l2c_iocx_pfc_s cn68xxp1;
1626	struct cvmx_l2c_iocx_pfc_s cnf71xx;
1627};
1628
1629union cvmx_l2c_iorx_pfc {
1630	uint64_t u64;
1631	struct cvmx_l2c_iorx_pfc_s {
1632#ifdef __BIG_ENDIAN_BITFIELD
1633		uint64_t count:64;
1634#else
1635		uint64_t count:64;
1636#endif
1637	} s;
1638	struct cvmx_l2c_iorx_pfc_s cn61xx;
1639	struct cvmx_l2c_iorx_pfc_s cn63xx;
1640	struct cvmx_l2c_iorx_pfc_s cn63xxp1;
1641	struct cvmx_l2c_iorx_pfc_s cn66xx;
1642	struct cvmx_l2c_iorx_pfc_s cn68xx;
1643	struct cvmx_l2c_iorx_pfc_s cn68xxp1;
1644	struct cvmx_l2c_iorx_pfc_s cnf71xx;
1645};
1646
1647union cvmx_l2c_lckbase {
1648	uint64_t u64;
1649	struct cvmx_l2c_lckbase_s {
1650#ifdef __BIG_ENDIAN_BITFIELD
1651		uint64_t reserved_31_63:33;
1652		uint64_t lck_base:27;
1653		uint64_t reserved_1_3:3;
1654		uint64_t lck_ena:1;
1655#else
1656		uint64_t lck_ena:1;
1657		uint64_t reserved_1_3:3;
1658		uint64_t lck_base:27;
1659		uint64_t reserved_31_63:33;
1660#endif
1661	} s;
1662	struct cvmx_l2c_lckbase_s cn30xx;
1663	struct cvmx_l2c_lckbase_s cn31xx;
1664	struct cvmx_l2c_lckbase_s cn38xx;
1665	struct cvmx_l2c_lckbase_s cn38xxp2;
1666	struct cvmx_l2c_lckbase_s cn50xx;
1667	struct cvmx_l2c_lckbase_s cn52xx;
1668	struct cvmx_l2c_lckbase_s cn52xxp1;
1669	struct cvmx_l2c_lckbase_s cn56xx;
1670	struct cvmx_l2c_lckbase_s cn56xxp1;
1671	struct cvmx_l2c_lckbase_s cn58xx;
1672	struct cvmx_l2c_lckbase_s cn58xxp1;
1673};
1674
1675union cvmx_l2c_lckoff {
1676	uint64_t u64;
1677	struct cvmx_l2c_lckoff_s {
1678#ifdef __BIG_ENDIAN_BITFIELD
1679		uint64_t reserved_10_63:54;
1680		uint64_t lck_offset:10;
1681#else
1682		uint64_t lck_offset:10;
1683		uint64_t reserved_10_63:54;
1684#endif
1685	} s;
1686	struct cvmx_l2c_lckoff_s cn30xx;
1687	struct cvmx_l2c_lckoff_s cn31xx;
1688	struct cvmx_l2c_lckoff_s cn38xx;
1689	struct cvmx_l2c_lckoff_s cn38xxp2;
1690	struct cvmx_l2c_lckoff_s cn50xx;
1691	struct cvmx_l2c_lckoff_s cn52xx;
1692	struct cvmx_l2c_lckoff_s cn52xxp1;
1693	struct cvmx_l2c_lckoff_s cn56xx;
1694	struct cvmx_l2c_lckoff_s cn56xxp1;
1695	struct cvmx_l2c_lckoff_s cn58xx;
1696	struct cvmx_l2c_lckoff_s cn58xxp1;
1697};
1698
1699union cvmx_l2c_lfb0 {
1700	uint64_t u64;
1701	struct cvmx_l2c_lfb0_s {
1702#ifdef __BIG_ENDIAN_BITFIELD
1703		uint64_t reserved_32_63:32;
1704		uint64_t stcpnd:1;
1705		uint64_t stpnd:1;
1706		uint64_t stinv:1;
1707		uint64_t stcfl:1;
1708		uint64_t vam:1;
1709		uint64_t inxt:4;
1710		uint64_t itl:1;
1711		uint64_t ihd:1;
1712		uint64_t set:3;
1713		uint64_t vabnum:4;
1714		uint64_t sid:9;
1715		uint64_t cmd:4;
1716		uint64_t vld:1;
1717#else
1718		uint64_t vld:1;
1719		uint64_t cmd:4;
1720		uint64_t sid:9;
1721		uint64_t vabnum:4;
1722		uint64_t set:3;
1723		uint64_t ihd:1;
1724		uint64_t itl:1;
1725		uint64_t inxt:4;
1726		uint64_t vam:1;
1727		uint64_t stcfl:1;
1728		uint64_t stinv:1;
1729		uint64_t stpnd:1;
1730		uint64_t stcpnd:1;
1731		uint64_t reserved_32_63:32;
1732#endif
1733	} s;
1734	struct cvmx_l2c_lfb0_cn30xx {
1735#ifdef __BIG_ENDIAN_BITFIELD
1736		uint64_t reserved_32_63:32;
1737		uint64_t stcpnd:1;
1738		uint64_t stpnd:1;
1739		uint64_t stinv:1;
1740		uint64_t stcfl:1;
1741		uint64_t vam:1;
1742		uint64_t reserved_25_26:2;
1743		uint64_t inxt:2;
1744		uint64_t itl:1;
1745		uint64_t ihd:1;
1746		uint64_t reserved_20_20:1;
1747		uint64_t set:2;
1748		uint64_t reserved_16_17:2;
1749		uint64_t vabnum:2;
1750		uint64_t sid:9;
1751		uint64_t cmd:4;
1752		uint64_t vld:1;
1753#else
1754		uint64_t vld:1;
1755		uint64_t cmd:4;
1756		uint64_t sid:9;
1757		uint64_t vabnum:2;
1758		uint64_t reserved_16_17:2;
1759		uint64_t set:2;
1760		uint64_t reserved_20_20:1;
1761		uint64_t ihd:1;
1762		uint64_t itl:1;
1763		uint64_t inxt:2;
1764		uint64_t reserved_25_26:2;
1765		uint64_t vam:1;
1766		uint64_t stcfl:1;
1767		uint64_t stinv:1;
1768		uint64_t stpnd:1;
1769		uint64_t stcpnd:1;
1770		uint64_t reserved_32_63:32;
1771#endif
1772	} cn30xx;
1773	struct cvmx_l2c_lfb0_cn31xx {
1774#ifdef __BIG_ENDIAN_BITFIELD
1775		uint64_t reserved_32_63:32;
1776		uint64_t stcpnd:1;
1777		uint64_t stpnd:1;
1778		uint64_t stinv:1;
1779		uint64_t stcfl:1;
1780		uint64_t vam:1;
1781		uint64_t reserved_26_26:1;
1782		uint64_t inxt:3;
1783		uint64_t itl:1;
1784		uint64_t ihd:1;
1785		uint64_t reserved_20_20:1;
1786		uint64_t set:2;
1787		uint64_t reserved_17_17:1;
1788		uint64_t vabnum:3;
1789		uint64_t sid:9;
1790		uint64_t cmd:4;
1791		uint64_t vld:1;
1792#else
1793		uint64_t vld:1;
1794		uint64_t cmd:4;
1795		uint64_t sid:9;
1796		uint64_t vabnum:3;
1797		uint64_t reserved_17_17:1;
1798		uint64_t set:2;
1799		uint64_t reserved_20_20:1;
1800		uint64_t ihd:1;
1801		uint64_t itl:1;
1802		uint64_t inxt:3;
1803		uint64_t reserved_26_26:1;
1804		uint64_t vam:1;
1805		uint64_t stcfl:1;
1806		uint64_t stinv:1;
1807		uint64_t stpnd:1;
1808		uint64_t stcpnd:1;
1809		uint64_t reserved_32_63:32;
1810#endif
1811	} cn31xx;
1812	struct cvmx_l2c_lfb0_s cn38xx;
1813	struct cvmx_l2c_lfb0_s cn38xxp2;
1814	struct cvmx_l2c_lfb0_cn50xx {
1815#ifdef __BIG_ENDIAN_BITFIELD
1816		uint64_t reserved_32_63:32;
1817		uint64_t stcpnd:1;
1818		uint64_t stpnd:1;
1819		uint64_t stinv:1;
1820		uint64_t stcfl:1;
1821		uint64_t vam:1;
1822		uint64_t reserved_26_26:1;
1823		uint64_t inxt:3;
1824		uint64_t itl:1;
1825		uint64_t ihd:1;
1826		uint64_t set:3;
1827		uint64_t reserved_17_17:1;
1828		uint64_t vabnum:3;
1829		uint64_t sid:9;
1830		uint64_t cmd:4;
1831		uint64_t vld:1;
1832#else
1833		uint64_t vld:1;
1834		uint64_t cmd:4;
1835		uint64_t sid:9;
1836		uint64_t vabnum:3;
1837		uint64_t reserved_17_17:1;
1838		uint64_t set:3;
1839		uint64_t ihd:1;
1840		uint64_t itl:1;
1841		uint64_t inxt:3;
1842		uint64_t reserved_26_26:1;
1843		uint64_t vam:1;
1844		uint64_t stcfl:1;
1845		uint64_t stinv:1;
1846		uint64_t stpnd:1;
1847		uint64_t stcpnd:1;
1848		uint64_t reserved_32_63:32;
1849#endif
1850	} cn50xx;
1851	struct cvmx_l2c_lfb0_cn50xx cn52xx;
1852	struct cvmx_l2c_lfb0_cn50xx cn52xxp1;
1853	struct cvmx_l2c_lfb0_s cn56xx;
1854	struct cvmx_l2c_lfb0_s cn56xxp1;
1855	struct cvmx_l2c_lfb0_s cn58xx;
1856	struct cvmx_l2c_lfb0_s cn58xxp1;
1857};
1858
1859union cvmx_l2c_lfb1 {
1860	uint64_t u64;
1861	struct cvmx_l2c_lfb1_s {
1862#ifdef __BIG_ENDIAN_BITFIELD
1863		uint64_t reserved_19_63:45;
1864		uint64_t dsgoing:1;
1865		uint64_t bid:2;
1866		uint64_t wtrsp:1;
1867		uint64_t wtdw:1;
1868		uint64_t wtdq:1;
1869		uint64_t wtwhp:1;
1870		uint64_t wtwhf:1;
1871		uint64_t wtwrm:1;
1872		uint64_t wtstm:1;
1873		uint64_t wtrda:1;
1874		uint64_t wtstdt:1;
1875		uint64_t wtstrsp:1;
1876		uint64_t wtstrsc:1;
1877		uint64_t wtvtm:1;
1878		uint64_t wtmfl:1;
1879		uint64_t prbrty:1;
1880		uint64_t wtprb:1;
1881		uint64_t vld:1;
1882#else
1883		uint64_t vld:1;
1884		uint64_t wtprb:1;
1885		uint64_t prbrty:1;
1886		uint64_t wtmfl:1;
1887		uint64_t wtvtm:1;
1888		uint64_t wtstrsc:1;
1889		uint64_t wtstrsp:1;
1890		uint64_t wtstdt:1;
1891		uint64_t wtrda:1;
1892		uint64_t wtstm:1;
1893		uint64_t wtwrm:1;
1894		uint64_t wtwhf:1;
1895		uint64_t wtwhp:1;
1896		uint64_t wtdq:1;
1897		uint64_t wtdw:1;
1898		uint64_t wtrsp:1;
1899		uint64_t bid:2;
1900		uint64_t dsgoing:1;
1901		uint64_t reserved_19_63:45;
1902#endif
1903	} s;
1904	struct cvmx_l2c_lfb1_s cn30xx;
1905	struct cvmx_l2c_lfb1_s cn31xx;
1906	struct cvmx_l2c_lfb1_s cn38xx;
1907	struct cvmx_l2c_lfb1_s cn38xxp2;
1908	struct cvmx_l2c_lfb1_s cn50xx;
1909	struct cvmx_l2c_lfb1_s cn52xx;
1910	struct cvmx_l2c_lfb1_s cn52xxp1;
1911	struct cvmx_l2c_lfb1_s cn56xx;
1912	struct cvmx_l2c_lfb1_s cn56xxp1;
1913	struct cvmx_l2c_lfb1_s cn58xx;
1914	struct cvmx_l2c_lfb1_s cn58xxp1;
1915};
1916
1917union cvmx_l2c_lfb2 {
1918	uint64_t u64;
1919	struct cvmx_l2c_lfb2_s {
1920#ifdef __BIG_ENDIAN_BITFIELD
1921		uint64_t reserved_0_63:64;
1922#else
1923		uint64_t reserved_0_63:64;
1924#endif
1925	} s;
1926	struct cvmx_l2c_lfb2_cn30xx {
1927#ifdef __BIG_ENDIAN_BITFIELD
1928		uint64_t reserved_27_63:37;
1929		uint64_t lfb_tag:19;
1930		uint64_t lfb_idx:8;
1931#else
1932		uint64_t lfb_idx:8;
1933		uint64_t lfb_tag:19;
1934		uint64_t reserved_27_63:37;
1935#endif
1936	} cn30xx;
1937	struct cvmx_l2c_lfb2_cn31xx {
1938#ifdef __BIG_ENDIAN_BITFIELD
1939		uint64_t reserved_27_63:37;
1940		uint64_t lfb_tag:17;
1941		uint64_t lfb_idx:10;
1942#else
1943		uint64_t lfb_idx:10;
1944		uint64_t lfb_tag:17;
1945		uint64_t reserved_27_63:37;
1946#endif
1947	} cn31xx;
1948	struct cvmx_l2c_lfb2_cn31xx cn38xx;
1949	struct cvmx_l2c_lfb2_cn31xx cn38xxp2;
1950	struct cvmx_l2c_lfb2_cn50xx {
1951#ifdef __BIG_ENDIAN_BITFIELD
1952		uint64_t reserved_27_63:37;
1953		uint64_t lfb_tag:20;
1954		uint64_t lfb_idx:7;
1955#else
1956		uint64_t lfb_idx:7;
1957		uint64_t lfb_tag:20;
1958		uint64_t reserved_27_63:37;
1959#endif
1960	} cn50xx;
1961	struct cvmx_l2c_lfb2_cn52xx {
1962#ifdef __BIG_ENDIAN_BITFIELD
1963		uint64_t reserved_27_63:37;
1964		uint64_t lfb_tag:18;
1965		uint64_t lfb_idx:9;
1966#else
1967		uint64_t lfb_idx:9;
1968		uint64_t lfb_tag:18;
1969		uint64_t reserved_27_63:37;
1970#endif
1971	} cn52xx;
1972	struct cvmx_l2c_lfb2_cn52xx cn52xxp1;
1973	struct cvmx_l2c_lfb2_cn56xx {
1974#ifdef __BIG_ENDIAN_BITFIELD
1975		uint64_t reserved_27_63:37;
1976		uint64_t lfb_tag:16;
1977		uint64_t lfb_idx:11;
1978#else
1979		uint64_t lfb_idx:11;
1980		uint64_t lfb_tag:16;
1981		uint64_t reserved_27_63:37;
1982#endif
1983	} cn56xx;
1984	struct cvmx_l2c_lfb2_cn56xx cn56xxp1;
1985	struct cvmx_l2c_lfb2_cn56xx cn58xx;
1986	struct cvmx_l2c_lfb2_cn56xx cn58xxp1;
1987};
1988
1989union cvmx_l2c_lfb3 {
1990	uint64_t u64;
1991	struct cvmx_l2c_lfb3_s {
1992#ifdef __BIG_ENDIAN_BITFIELD
1993		uint64_t reserved_5_63:59;
1994		uint64_t stpartdis:1;
1995		uint64_t lfb_hwm:4;
1996#else
1997		uint64_t lfb_hwm:4;
1998		uint64_t stpartdis:1;
1999		uint64_t reserved_5_63:59;
2000#endif
2001	} s;
2002	struct cvmx_l2c_lfb3_cn30xx {
2003#ifdef __BIG_ENDIAN_BITFIELD
2004		uint64_t reserved_5_63:59;
2005		uint64_t stpartdis:1;
2006		uint64_t reserved_2_3:2;
2007		uint64_t lfb_hwm:2;
2008#else
2009		uint64_t lfb_hwm:2;
2010		uint64_t reserved_2_3:2;
2011		uint64_t stpartdis:1;
2012		uint64_t reserved_5_63:59;
2013#endif
2014	} cn30xx;
2015	struct cvmx_l2c_lfb3_cn31xx {
2016#ifdef __BIG_ENDIAN_BITFIELD
2017		uint64_t reserved_5_63:59;
2018		uint64_t stpartdis:1;
2019		uint64_t reserved_3_3:1;
2020		uint64_t lfb_hwm:3;
2021#else
2022		uint64_t lfb_hwm:3;
2023		uint64_t reserved_3_3:1;
2024		uint64_t stpartdis:1;
2025		uint64_t reserved_5_63:59;
2026#endif
2027	} cn31xx;
2028	struct cvmx_l2c_lfb3_s cn38xx;
2029	struct cvmx_l2c_lfb3_s cn38xxp2;
2030	struct cvmx_l2c_lfb3_cn31xx cn50xx;
2031	struct cvmx_l2c_lfb3_cn31xx cn52xx;
2032	struct cvmx_l2c_lfb3_cn31xx cn52xxp1;
2033	struct cvmx_l2c_lfb3_s cn56xx;
2034	struct cvmx_l2c_lfb3_s cn56xxp1;
2035	struct cvmx_l2c_lfb3_s cn58xx;
2036	struct cvmx_l2c_lfb3_s cn58xxp1;
2037};
2038
2039union cvmx_l2c_oob {
2040	uint64_t u64;
2041	struct cvmx_l2c_oob_s {
2042#ifdef __BIG_ENDIAN_BITFIELD
2043		uint64_t reserved_2_63:62;
2044		uint64_t dwbena:1;
2045		uint64_t stena:1;
2046#else
2047		uint64_t stena:1;
2048		uint64_t dwbena:1;
2049		uint64_t reserved_2_63:62;
2050#endif
2051	} s;
2052	struct cvmx_l2c_oob_s cn52xx;
2053	struct cvmx_l2c_oob_s cn52xxp1;
2054	struct cvmx_l2c_oob_s cn56xx;
2055	struct cvmx_l2c_oob_s cn56xxp1;
2056};
2057
2058union cvmx_l2c_oob1 {
2059	uint64_t u64;
2060	struct cvmx_l2c_oob1_s {
2061#ifdef __BIG_ENDIAN_BITFIELD
2062		uint64_t fadr:27;
2063		uint64_t fsrc:1;
2064		uint64_t reserved_34_35:2;
2065		uint64_t sadr:14;
2066		uint64_t reserved_14_19:6;
2067		uint64_t size:14;
2068#else
2069		uint64_t size:14;
2070		uint64_t reserved_14_19:6;
2071		uint64_t sadr:14;
2072		uint64_t reserved_34_35:2;
2073		uint64_t fsrc:1;
2074		uint64_t fadr:27;
2075#endif
2076	} s;
2077	struct cvmx_l2c_oob1_s cn52xx;
2078	struct cvmx_l2c_oob1_s cn52xxp1;
2079	struct cvmx_l2c_oob1_s cn56xx;
2080	struct cvmx_l2c_oob1_s cn56xxp1;
2081};
2082
2083union cvmx_l2c_oob2 {
2084	uint64_t u64;
2085	struct cvmx_l2c_oob2_s {
2086#ifdef __BIG_ENDIAN_BITFIELD
2087		uint64_t fadr:27;
2088		uint64_t fsrc:1;
2089		uint64_t reserved_34_35:2;
2090		uint64_t sadr:14;
2091		uint64_t reserved_14_19:6;
2092		uint64_t size:14;
2093#else
2094		uint64_t size:14;
2095		uint64_t reserved_14_19:6;
2096		uint64_t sadr:14;
2097		uint64_t reserved_34_35:2;
2098		uint64_t fsrc:1;
2099		uint64_t fadr:27;
2100#endif
2101	} s;
2102	struct cvmx_l2c_oob2_s cn52xx;
2103	struct cvmx_l2c_oob2_s cn52xxp1;
2104	struct cvmx_l2c_oob2_s cn56xx;
2105	struct cvmx_l2c_oob2_s cn56xxp1;
2106};
2107
2108union cvmx_l2c_oob3 {
2109	uint64_t u64;
2110	struct cvmx_l2c_oob3_s {
2111#ifdef __BIG_ENDIAN_BITFIELD
2112		uint64_t fadr:27;
2113		uint64_t fsrc:1;
2114		uint64_t reserved_34_35:2;
2115		uint64_t sadr:14;
2116		uint64_t reserved_14_19:6;
2117		uint64_t size:14;
2118#else
2119		uint64_t size:14;
2120		uint64_t reserved_14_19:6;
2121		uint64_t sadr:14;
2122		uint64_t reserved_34_35:2;
2123		uint64_t fsrc:1;
2124		uint64_t fadr:27;
2125#endif
2126	} s;
2127	struct cvmx_l2c_oob3_s cn52xx;
2128	struct cvmx_l2c_oob3_s cn52xxp1;
2129	struct cvmx_l2c_oob3_s cn56xx;
2130	struct cvmx_l2c_oob3_s cn56xxp1;
2131};
2132
2133union cvmx_l2c_pfcx {
2134	uint64_t u64;
2135	struct cvmx_l2c_pfcx_s {
2136#ifdef __BIG_ENDIAN_BITFIELD
2137		uint64_t reserved_36_63:28;
2138		uint64_t pfcnt0:36;
2139#else
2140		uint64_t pfcnt0:36;
2141		uint64_t reserved_36_63:28;
2142#endif
2143	} s;
2144	struct cvmx_l2c_pfcx_s cn30xx;
2145	struct cvmx_l2c_pfcx_s cn31xx;
2146	struct cvmx_l2c_pfcx_s cn38xx;
2147	struct cvmx_l2c_pfcx_s cn38xxp2;
2148	struct cvmx_l2c_pfcx_s cn50xx;
2149	struct cvmx_l2c_pfcx_s cn52xx;
2150	struct cvmx_l2c_pfcx_s cn52xxp1;
2151	struct cvmx_l2c_pfcx_s cn56xx;
2152	struct cvmx_l2c_pfcx_s cn56xxp1;
2153	struct cvmx_l2c_pfcx_s cn58xx;
2154	struct cvmx_l2c_pfcx_s cn58xxp1;
2155};
2156
2157union cvmx_l2c_pfctl {
2158	uint64_t u64;
2159	struct cvmx_l2c_pfctl_s {
2160#ifdef __BIG_ENDIAN_BITFIELD
2161		uint64_t reserved_36_63:28;
2162		uint64_t cnt3rdclr:1;
2163		uint64_t cnt2rdclr:1;
2164		uint64_t cnt1rdclr:1;
2165		uint64_t cnt0rdclr:1;
2166		uint64_t cnt3ena:1;
2167		uint64_t cnt3clr:1;
2168		uint64_t cnt3sel:6;
2169		uint64_t cnt2ena:1;
2170		uint64_t cnt2clr:1;
2171		uint64_t cnt2sel:6;
2172		uint64_t cnt1ena:1;
2173		uint64_t cnt1clr:1;
2174		uint64_t cnt1sel:6;
2175		uint64_t cnt0ena:1;
2176		uint64_t cnt0clr:1;
2177		uint64_t cnt0sel:6;
2178#else
2179		uint64_t cnt0sel:6;
2180		uint64_t cnt0clr:1;
2181		uint64_t cnt0ena:1;
2182		uint64_t cnt1sel:6;
2183		uint64_t cnt1clr:1;
2184		uint64_t cnt1ena:1;
2185		uint64_t cnt2sel:6;
2186		uint64_t cnt2clr:1;
2187		uint64_t cnt2ena:1;
2188		uint64_t cnt3sel:6;
2189		uint64_t cnt3clr:1;
2190		uint64_t cnt3ena:1;
2191		uint64_t cnt0rdclr:1;
2192		uint64_t cnt1rdclr:1;
2193		uint64_t cnt2rdclr:1;
2194		uint64_t cnt3rdclr:1;
2195		uint64_t reserved_36_63:28;
2196#endif
2197	} s;
2198	struct cvmx_l2c_pfctl_s cn30xx;
2199	struct cvmx_l2c_pfctl_s cn31xx;
2200	struct cvmx_l2c_pfctl_s cn38xx;
2201	struct cvmx_l2c_pfctl_s cn38xxp2;
2202	struct cvmx_l2c_pfctl_s cn50xx;
2203	struct cvmx_l2c_pfctl_s cn52xx;
2204	struct cvmx_l2c_pfctl_s cn52xxp1;
2205	struct cvmx_l2c_pfctl_s cn56xx;
2206	struct cvmx_l2c_pfctl_s cn56xxp1;
2207	struct cvmx_l2c_pfctl_s cn58xx;
2208	struct cvmx_l2c_pfctl_s cn58xxp1;
2209};
2210
2211union cvmx_l2c_ppgrp {
2212	uint64_t u64;
2213	struct cvmx_l2c_ppgrp_s {
2214#ifdef __BIG_ENDIAN_BITFIELD
2215		uint64_t reserved_24_63:40;
2216		uint64_t pp11grp:2;
2217		uint64_t pp10grp:2;
2218		uint64_t pp9grp:2;
2219		uint64_t pp8grp:2;
2220		uint64_t pp7grp:2;
2221		uint64_t pp6grp:2;
2222		uint64_t pp5grp:2;
2223		uint64_t pp4grp:2;
2224		uint64_t pp3grp:2;
2225		uint64_t pp2grp:2;
2226		uint64_t pp1grp:2;
2227		uint64_t pp0grp:2;
2228#else
2229		uint64_t pp0grp:2;
2230		uint64_t pp1grp:2;
2231		uint64_t pp2grp:2;
2232		uint64_t pp3grp:2;
2233		uint64_t pp4grp:2;
2234		uint64_t pp5grp:2;
2235		uint64_t pp6grp:2;
2236		uint64_t pp7grp:2;
2237		uint64_t pp8grp:2;
2238		uint64_t pp9grp:2;
2239		uint64_t pp10grp:2;
2240		uint64_t pp11grp:2;
2241		uint64_t reserved_24_63:40;
2242#endif
2243	} s;
2244	struct cvmx_l2c_ppgrp_cn52xx {
2245#ifdef __BIG_ENDIAN_BITFIELD
2246		uint64_t reserved_8_63:56;
2247		uint64_t pp3grp:2;
2248		uint64_t pp2grp:2;
2249		uint64_t pp1grp:2;
2250		uint64_t pp0grp:2;
2251#else
2252		uint64_t pp0grp:2;
2253		uint64_t pp1grp:2;
2254		uint64_t pp2grp:2;
2255		uint64_t pp3grp:2;
2256		uint64_t reserved_8_63:56;
2257#endif
2258	} cn52xx;
2259	struct cvmx_l2c_ppgrp_cn52xx cn52xxp1;
2260	struct cvmx_l2c_ppgrp_s cn56xx;
2261	struct cvmx_l2c_ppgrp_s cn56xxp1;
2262};
2263
2264union cvmx_l2c_qos_iobx {
2265	uint64_t u64;
2266	struct cvmx_l2c_qos_iobx_s {
2267#ifdef __BIG_ENDIAN_BITFIELD
2268		uint64_t reserved_7_63:57;
2269		uint64_t dwblvl:3;
2270		uint64_t reserved_3_3:1;
2271		uint64_t lvl:3;
2272#else
2273		uint64_t lvl:3;
2274		uint64_t reserved_3_3:1;
2275		uint64_t dwblvl:3;
2276		uint64_t reserved_7_63:57;
2277#endif
2278	} s;
2279	struct cvmx_l2c_qos_iobx_cn61xx {
2280#ifdef __BIG_ENDIAN_BITFIELD
2281		uint64_t reserved_6_63:58;
2282		uint64_t dwblvl:2;
2283		uint64_t reserved_2_3:2;
2284		uint64_t lvl:2;
2285#else
2286		uint64_t lvl:2;
2287		uint64_t reserved_2_3:2;
2288		uint64_t dwblvl:2;
2289		uint64_t reserved_6_63:58;
2290#endif
2291	} cn61xx;
2292	struct cvmx_l2c_qos_iobx_cn61xx cn63xx;
2293	struct cvmx_l2c_qos_iobx_cn61xx cn63xxp1;
2294	struct cvmx_l2c_qos_iobx_cn61xx cn66xx;
2295	struct cvmx_l2c_qos_iobx_s cn68xx;
2296	struct cvmx_l2c_qos_iobx_s cn68xxp1;
2297	struct cvmx_l2c_qos_iobx_cn61xx cnf71xx;
2298};
2299
2300union cvmx_l2c_qos_ppx {
2301	uint64_t u64;
2302	struct cvmx_l2c_qos_ppx_s {
2303#ifdef __BIG_ENDIAN_BITFIELD
2304		uint64_t reserved_3_63:61;
2305		uint64_t lvl:3;
2306#else
2307		uint64_t lvl:3;
2308		uint64_t reserved_3_63:61;
2309#endif
2310	} s;
2311	struct cvmx_l2c_qos_ppx_cn61xx {
2312#ifdef __BIG_ENDIAN_BITFIELD
2313		uint64_t reserved_2_63:62;
2314		uint64_t lvl:2;
2315#else
2316		uint64_t lvl:2;
2317		uint64_t reserved_2_63:62;
2318#endif
2319	} cn61xx;
2320	struct cvmx_l2c_qos_ppx_cn61xx cn63xx;
2321	struct cvmx_l2c_qos_ppx_cn61xx cn63xxp1;
2322	struct cvmx_l2c_qos_ppx_cn61xx cn66xx;
2323	struct cvmx_l2c_qos_ppx_s cn68xx;
2324	struct cvmx_l2c_qos_ppx_s cn68xxp1;
2325	struct cvmx_l2c_qos_ppx_cn61xx cnf71xx;
2326};
2327
2328union cvmx_l2c_qos_wgt {
2329	uint64_t u64;
2330	struct cvmx_l2c_qos_wgt_s {
2331#ifdef __BIG_ENDIAN_BITFIELD
2332		uint64_t wgt7:8;
2333		uint64_t wgt6:8;
2334		uint64_t wgt5:8;
2335		uint64_t wgt4:8;
2336		uint64_t wgt3:8;
2337		uint64_t wgt2:8;
2338		uint64_t wgt1:8;
2339		uint64_t wgt0:8;
2340#else
2341		uint64_t wgt0:8;
2342		uint64_t wgt1:8;
2343		uint64_t wgt2:8;
2344		uint64_t wgt3:8;
2345		uint64_t wgt4:8;
2346		uint64_t wgt5:8;
2347		uint64_t wgt6:8;
2348		uint64_t wgt7:8;
2349#endif
2350	} s;
2351	struct cvmx_l2c_qos_wgt_cn61xx {
2352#ifdef __BIG_ENDIAN_BITFIELD
2353		uint64_t reserved_32_63:32;
2354		uint64_t wgt3:8;
2355		uint64_t wgt2:8;
2356		uint64_t wgt1:8;
2357		uint64_t wgt0:8;
2358#else
2359		uint64_t wgt0:8;
2360		uint64_t wgt1:8;
2361		uint64_t wgt2:8;
2362		uint64_t wgt3:8;
2363		uint64_t reserved_32_63:32;
2364#endif
2365	} cn61xx;
2366	struct cvmx_l2c_qos_wgt_cn61xx cn63xx;
2367	struct cvmx_l2c_qos_wgt_cn61xx cn63xxp1;
2368	struct cvmx_l2c_qos_wgt_cn61xx cn66xx;
2369	struct cvmx_l2c_qos_wgt_s cn68xx;
2370	struct cvmx_l2c_qos_wgt_s cn68xxp1;
2371	struct cvmx_l2c_qos_wgt_cn61xx cnf71xx;
2372};
2373
2374union cvmx_l2c_rscx_pfc {
2375	uint64_t u64;
2376	struct cvmx_l2c_rscx_pfc_s {
2377#ifdef __BIG_ENDIAN_BITFIELD
2378		uint64_t count:64;
2379#else
2380		uint64_t count:64;
2381#endif
2382	} s;
2383	struct cvmx_l2c_rscx_pfc_s cn61xx;
2384	struct cvmx_l2c_rscx_pfc_s cn63xx;
2385	struct cvmx_l2c_rscx_pfc_s cn63xxp1;
2386	struct cvmx_l2c_rscx_pfc_s cn66xx;
2387	struct cvmx_l2c_rscx_pfc_s cn68xx;
2388	struct cvmx_l2c_rscx_pfc_s cn68xxp1;
2389	struct cvmx_l2c_rscx_pfc_s cnf71xx;
2390};
2391
2392union cvmx_l2c_rsdx_pfc {
2393	uint64_t u64;
2394	struct cvmx_l2c_rsdx_pfc_s {
2395#ifdef __BIG_ENDIAN_BITFIELD
2396		uint64_t count:64;
2397#else
2398		uint64_t count:64;
2399#endif
2400	} s;
2401	struct cvmx_l2c_rsdx_pfc_s cn61xx;
2402	struct cvmx_l2c_rsdx_pfc_s cn63xx;
2403	struct cvmx_l2c_rsdx_pfc_s cn63xxp1;
2404	struct cvmx_l2c_rsdx_pfc_s cn66xx;
2405	struct cvmx_l2c_rsdx_pfc_s cn68xx;
2406	struct cvmx_l2c_rsdx_pfc_s cn68xxp1;
2407	struct cvmx_l2c_rsdx_pfc_s cnf71xx;
2408};
2409
2410union cvmx_l2c_spar0 {
2411	uint64_t u64;
2412	struct cvmx_l2c_spar0_s {
2413#ifdef __BIG_ENDIAN_BITFIELD
2414		uint64_t reserved_32_63:32;
2415		uint64_t umsk3:8;
2416		uint64_t umsk2:8;
2417		uint64_t umsk1:8;
2418		uint64_t umsk0:8;
2419#else
2420		uint64_t umsk0:8;
2421		uint64_t umsk1:8;
2422		uint64_t umsk2:8;
2423		uint64_t umsk3:8;
2424		uint64_t reserved_32_63:32;
2425#endif
2426	} s;
2427	struct cvmx_l2c_spar0_cn30xx {
2428#ifdef __BIG_ENDIAN_BITFIELD
2429		uint64_t reserved_4_63:60;
2430		uint64_t umsk0:4;
2431#else
2432		uint64_t umsk0:4;
2433		uint64_t reserved_4_63:60;
2434#endif
2435	} cn30xx;
2436	struct cvmx_l2c_spar0_cn31xx {
2437#ifdef __BIG_ENDIAN_BITFIELD
2438		uint64_t reserved_12_63:52;
2439		uint64_t umsk1:4;
2440		uint64_t reserved_4_7:4;
2441		uint64_t umsk0:4;
2442#else
2443		uint64_t umsk0:4;
2444		uint64_t reserved_4_7:4;
2445		uint64_t umsk1:4;
2446		uint64_t reserved_12_63:52;
2447#endif
2448	} cn31xx;
2449	struct cvmx_l2c_spar0_s cn38xx;
2450	struct cvmx_l2c_spar0_s cn38xxp2;
2451	struct cvmx_l2c_spar0_cn50xx {
2452#ifdef __BIG_ENDIAN_BITFIELD
2453		uint64_t reserved_16_63:48;
2454		uint64_t umsk1:8;
2455		uint64_t umsk0:8;
2456#else
2457		uint64_t umsk0:8;
2458		uint64_t umsk1:8;
2459		uint64_t reserved_16_63:48;
2460#endif
2461	} cn50xx;
2462	struct cvmx_l2c_spar0_s cn52xx;
2463	struct cvmx_l2c_spar0_s cn52xxp1;
2464	struct cvmx_l2c_spar0_s cn56xx;
2465	struct cvmx_l2c_spar0_s cn56xxp1;
2466	struct cvmx_l2c_spar0_s cn58xx;
2467	struct cvmx_l2c_spar0_s cn58xxp1;
2468};
2469
2470union cvmx_l2c_spar1 {
2471	uint64_t u64;
2472	struct cvmx_l2c_spar1_s {
2473#ifdef __BIG_ENDIAN_BITFIELD
2474		uint64_t reserved_32_63:32;
2475		uint64_t umsk7:8;
2476		uint64_t umsk6:8;
2477		uint64_t umsk5:8;
2478		uint64_t umsk4:8;
2479#else
2480		uint64_t umsk4:8;
2481		uint64_t umsk5:8;
2482		uint64_t umsk6:8;
2483		uint64_t umsk7:8;
2484		uint64_t reserved_32_63:32;
2485#endif
2486	} s;
2487	struct cvmx_l2c_spar1_s cn38xx;
2488	struct cvmx_l2c_spar1_s cn38xxp2;
2489	struct cvmx_l2c_spar1_s cn56xx;
2490	struct cvmx_l2c_spar1_s cn56xxp1;
2491	struct cvmx_l2c_spar1_s cn58xx;
2492	struct cvmx_l2c_spar1_s cn58xxp1;
2493};
2494
2495union cvmx_l2c_spar2 {
2496	uint64_t u64;
2497	struct cvmx_l2c_spar2_s {
2498#ifdef __BIG_ENDIAN_BITFIELD
2499		uint64_t reserved_32_63:32;
2500		uint64_t umsk11:8;
2501		uint64_t umsk10:8;
2502		uint64_t umsk9:8;
2503		uint64_t umsk8:8;
2504#else
2505		uint64_t umsk8:8;
2506		uint64_t umsk9:8;
2507		uint64_t umsk10:8;
2508		uint64_t umsk11:8;
2509		uint64_t reserved_32_63:32;
2510#endif
2511	} s;
2512	struct cvmx_l2c_spar2_s cn38xx;
2513	struct cvmx_l2c_spar2_s cn38xxp2;
2514	struct cvmx_l2c_spar2_s cn56xx;
2515	struct cvmx_l2c_spar2_s cn56xxp1;
2516	struct cvmx_l2c_spar2_s cn58xx;
2517	struct cvmx_l2c_spar2_s cn58xxp1;
2518};
2519
2520union cvmx_l2c_spar3 {
2521	uint64_t u64;
2522	struct cvmx_l2c_spar3_s {
2523#ifdef __BIG_ENDIAN_BITFIELD
2524		uint64_t reserved_32_63:32;
2525		uint64_t umsk15:8;
2526		uint64_t umsk14:8;
2527		uint64_t umsk13:8;
2528		uint64_t umsk12:8;
2529#else
2530		uint64_t umsk12:8;
2531		uint64_t umsk13:8;
2532		uint64_t umsk14:8;
2533		uint64_t umsk15:8;
2534		uint64_t reserved_32_63:32;
2535#endif
2536	} s;
2537	struct cvmx_l2c_spar3_s cn38xx;
2538	struct cvmx_l2c_spar3_s cn38xxp2;
2539	struct cvmx_l2c_spar3_s cn58xx;
2540	struct cvmx_l2c_spar3_s cn58xxp1;
2541};
2542
2543union cvmx_l2c_spar4 {
2544	uint64_t u64;
2545	struct cvmx_l2c_spar4_s {
2546#ifdef __BIG_ENDIAN_BITFIELD
2547		uint64_t reserved_8_63:56;
2548		uint64_t umskiob:8;
2549#else
2550		uint64_t umskiob:8;
2551		uint64_t reserved_8_63:56;
2552#endif
2553	} s;
2554	struct cvmx_l2c_spar4_cn30xx {
2555#ifdef __BIG_ENDIAN_BITFIELD
2556		uint64_t reserved_4_63:60;
2557		uint64_t umskiob:4;
2558#else
2559		uint64_t umskiob:4;
2560		uint64_t reserved_4_63:60;
2561#endif
2562	} cn30xx;
2563	struct cvmx_l2c_spar4_cn30xx cn31xx;
2564	struct cvmx_l2c_spar4_s cn38xx;
2565	struct cvmx_l2c_spar4_s cn38xxp2;
2566	struct cvmx_l2c_spar4_s cn50xx;
2567	struct cvmx_l2c_spar4_s cn52xx;
2568	struct cvmx_l2c_spar4_s cn52xxp1;
2569	struct cvmx_l2c_spar4_s cn56xx;
2570	struct cvmx_l2c_spar4_s cn56xxp1;
2571	struct cvmx_l2c_spar4_s cn58xx;
2572	struct cvmx_l2c_spar4_s cn58xxp1;
2573};
2574
2575union cvmx_l2c_tadx_ecc0 {
2576	uint64_t u64;
2577	struct cvmx_l2c_tadx_ecc0_s {
2578#ifdef __BIG_ENDIAN_BITFIELD
2579		uint64_t reserved_58_63:6;
2580		uint64_t ow3ecc:10;
2581		uint64_t reserved_42_47:6;
2582		uint64_t ow2ecc:10;
2583		uint64_t reserved_26_31:6;
2584		uint64_t ow1ecc:10;
2585		uint64_t reserved_10_15:6;
2586		uint64_t ow0ecc:10;
2587#else
2588		uint64_t ow0ecc:10;
2589		uint64_t reserved_10_15:6;
2590		uint64_t ow1ecc:10;
2591		uint64_t reserved_26_31:6;
2592		uint64_t ow2ecc:10;
2593		uint64_t reserved_42_47:6;
2594		uint64_t ow3ecc:10;
2595		uint64_t reserved_58_63:6;
2596#endif
2597	} s;
2598	struct cvmx_l2c_tadx_ecc0_s cn61xx;
2599	struct cvmx_l2c_tadx_ecc0_s cn63xx;
2600	struct cvmx_l2c_tadx_ecc0_s cn63xxp1;
2601	struct cvmx_l2c_tadx_ecc0_s cn66xx;
2602	struct cvmx_l2c_tadx_ecc0_s cn68xx;
2603	struct cvmx_l2c_tadx_ecc0_s cn68xxp1;
2604	struct cvmx_l2c_tadx_ecc0_s cnf71xx;
2605};
2606
2607union cvmx_l2c_tadx_ecc1 {
2608	uint64_t u64;
2609	struct cvmx_l2c_tadx_ecc1_s {
2610#ifdef __BIG_ENDIAN_BITFIELD
2611		uint64_t reserved_58_63:6;
2612		uint64_t ow7ecc:10;
2613		uint64_t reserved_42_47:6;
2614		uint64_t ow6ecc:10;
2615		uint64_t reserved_26_31:6;
2616		uint64_t ow5ecc:10;
2617		uint64_t reserved_10_15:6;
2618		uint64_t ow4ecc:10;
2619#else
2620		uint64_t ow4ecc:10;
2621		uint64_t reserved_10_15:6;
2622		uint64_t ow5ecc:10;
2623		uint64_t reserved_26_31:6;
2624		uint64_t ow6ecc:10;
2625		uint64_t reserved_42_47:6;
2626		uint64_t ow7ecc:10;
2627		uint64_t reserved_58_63:6;
2628#endif
2629	} s;
2630	struct cvmx_l2c_tadx_ecc1_s cn61xx;
2631	struct cvmx_l2c_tadx_ecc1_s cn63xx;
2632	struct cvmx_l2c_tadx_ecc1_s cn63xxp1;
2633	struct cvmx_l2c_tadx_ecc1_s cn66xx;
2634	struct cvmx_l2c_tadx_ecc1_s cn68xx;
2635	struct cvmx_l2c_tadx_ecc1_s cn68xxp1;
2636	struct cvmx_l2c_tadx_ecc1_s cnf71xx;
2637};
2638
2639union cvmx_l2c_tadx_ien {
2640	uint64_t u64;
2641	struct cvmx_l2c_tadx_ien_s {
2642#ifdef __BIG_ENDIAN_BITFIELD
2643		uint64_t reserved_9_63:55;
2644		uint64_t wrdislmc:1;
2645		uint64_t rddislmc:1;
2646		uint64_t noway:1;
2647		uint64_t vbfdbe:1;
2648		uint64_t vbfsbe:1;
2649		uint64_t tagdbe:1;
2650		uint64_t tagsbe:1;
2651		uint64_t l2ddbe:1;
2652		uint64_t l2dsbe:1;
2653#else
2654		uint64_t l2dsbe:1;
2655		uint64_t l2ddbe:1;
2656		uint64_t tagsbe:1;
2657		uint64_t tagdbe:1;
2658		uint64_t vbfsbe:1;
2659		uint64_t vbfdbe:1;
2660		uint64_t noway:1;
2661		uint64_t rddislmc:1;
2662		uint64_t wrdislmc:1;
2663		uint64_t reserved_9_63:55;
2664#endif
2665	} s;
2666	struct cvmx_l2c_tadx_ien_s cn61xx;
2667	struct cvmx_l2c_tadx_ien_s cn63xx;
2668	struct cvmx_l2c_tadx_ien_cn63xxp1 {
2669#ifdef __BIG_ENDIAN_BITFIELD
2670		uint64_t reserved_7_63:57;
2671		uint64_t noway:1;
2672		uint64_t vbfdbe:1;
2673		uint64_t vbfsbe:1;
2674		uint64_t tagdbe:1;
2675		uint64_t tagsbe:1;
2676		uint64_t l2ddbe:1;
2677		uint64_t l2dsbe:1;
2678#else
2679		uint64_t l2dsbe:1;
2680		uint64_t l2ddbe:1;
2681		uint64_t tagsbe:1;
2682		uint64_t tagdbe:1;
2683		uint64_t vbfsbe:1;
2684		uint64_t vbfdbe:1;
2685		uint64_t noway:1;
2686		uint64_t reserved_7_63:57;
2687#endif
2688	} cn63xxp1;
2689	struct cvmx_l2c_tadx_ien_s cn66xx;
2690	struct cvmx_l2c_tadx_ien_s cn68xx;
2691	struct cvmx_l2c_tadx_ien_s cn68xxp1;
2692	struct cvmx_l2c_tadx_ien_s cnf71xx;
2693};
2694
2695union cvmx_l2c_tadx_int {
2696	uint64_t u64;
2697	struct cvmx_l2c_tadx_int_s {
2698#ifdef __BIG_ENDIAN_BITFIELD
2699		uint64_t reserved_9_63:55;
2700		uint64_t wrdislmc:1;
2701		uint64_t rddislmc:1;
2702		uint64_t noway:1;
2703		uint64_t vbfdbe:1;
2704		uint64_t vbfsbe:1;
2705		uint64_t tagdbe:1;
2706		uint64_t tagsbe:1;
2707		uint64_t l2ddbe:1;
2708		uint64_t l2dsbe:1;
2709#else
2710		uint64_t l2dsbe:1;
2711		uint64_t l2ddbe:1;
2712		uint64_t tagsbe:1;
2713		uint64_t tagdbe:1;
2714		uint64_t vbfsbe:1;
2715		uint64_t vbfdbe:1;
2716		uint64_t noway:1;
2717		uint64_t rddislmc:1;
2718		uint64_t wrdislmc:1;
2719		uint64_t reserved_9_63:55;
2720#endif
2721	} s;
2722	struct cvmx_l2c_tadx_int_s cn61xx;
2723	struct cvmx_l2c_tadx_int_s cn63xx;
2724	struct cvmx_l2c_tadx_int_s cn66xx;
2725	struct cvmx_l2c_tadx_int_s cn68xx;
2726	struct cvmx_l2c_tadx_int_s cn68xxp1;
2727	struct cvmx_l2c_tadx_int_s cnf71xx;
2728};
2729
2730union cvmx_l2c_tadx_pfc0 {
2731	uint64_t u64;
2732	struct cvmx_l2c_tadx_pfc0_s {
2733#ifdef __BIG_ENDIAN_BITFIELD
2734		uint64_t count:64;
2735#else
2736		uint64_t count:64;
2737#endif
2738	} s;
2739	struct cvmx_l2c_tadx_pfc0_s cn61xx;
2740	struct cvmx_l2c_tadx_pfc0_s cn63xx;
2741	struct cvmx_l2c_tadx_pfc0_s cn63xxp1;
2742	struct cvmx_l2c_tadx_pfc0_s cn66xx;
2743	struct cvmx_l2c_tadx_pfc0_s cn68xx;
2744	struct cvmx_l2c_tadx_pfc0_s cn68xxp1;
2745	struct cvmx_l2c_tadx_pfc0_s cnf71xx;
2746};
2747
2748union cvmx_l2c_tadx_pfc1 {
2749	uint64_t u64;
2750	struct cvmx_l2c_tadx_pfc1_s {
2751#ifdef __BIG_ENDIAN_BITFIELD
2752		uint64_t count:64;
2753#else
2754		uint64_t count:64;
2755#endif
2756	} s;
2757	struct cvmx_l2c_tadx_pfc1_s cn61xx;
2758	struct cvmx_l2c_tadx_pfc1_s cn63xx;
2759	struct cvmx_l2c_tadx_pfc1_s cn63xxp1;
2760	struct cvmx_l2c_tadx_pfc1_s cn66xx;
2761	struct cvmx_l2c_tadx_pfc1_s cn68xx;
2762	struct cvmx_l2c_tadx_pfc1_s cn68xxp1;
2763	struct cvmx_l2c_tadx_pfc1_s cnf71xx;
2764};
2765
2766union cvmx_l2c_tadx_pfc2 {
2767	uint64_t u64;
2768	struct cvmx_l2c_tadx_pfc2_s {
2769#ifdef __BIG_ENDIAN_BITFIELD
2770		uint64_t count:64;
2771#else
2772		uint64_t count:64;
2773#endif
2774	} s;
2775	struct cvmx_l2c_tadx_pfc2_s cn61xx;
2776	struct cvmx_l2c_tadx_pfc2_s cn63xx;
2777	struct cvmx_l2c_tadx_pfc2_s cn63xxp1;
2778	struct cvmx_l2c_tadx_pfc2_s cn66xx;
2779	struct cvmx_l2c_tadx_pfc2_s cn68xx;
2780	struct cvmx_l2c_tadx_pfc2_s cn68xxp1;
2781	struct cvmx_l2c_tadx_pfc2_s cnf71xx;
2782};
2783
2784union cvmx_l2c_tadx_pfc3 {
2785	uint64_t u64;
2786	struct cvmx_l2c_tadx_pfc3_s {
2787#ifdef __BIG_ENDIAN_BITFIELD
2788		uint64_t count:64;
2789#else
2790		uint64_t count:64;
2791#endif
2792	} s;
2793	struct cvmx_l2c_tadx_pfc3_s cn61xx;
2794	struct cvmx_l2c_tadx_pfc3_s cn63xx;
2795	struct cvmx_l2c_tadx_pfc3_s cn63xxp1;
2796	struct cvmx_l2c_tadx_pfc3_s cn66xx;
2797	struct cvmx_l2c_tadx_pfc3_s cn68xx;
2798	struct cvmx_l2c_tadx_pfc3_s cn68xxp1;
2799	struct cvmx_l2c_tadx_pfc3_s cnf71xx;
2800};
2801
2802union cvmx_l2c_tadx_prf {
2803	uint64_t u64;
2804	struct cvmx_l2c_tadx_prf_s {
2805#ifdef __BIG_ENDIAN_BITFIELD
2806		uint64_t reserved_32_63:32;
2807		uint64_t cnt3sel:8;
2808		uint64_t cnt2sel:8;
2809		uint64_t cnt1sel:8;
2810		uint64_t cnt0sel:8;
2811#else
2812		uint64_t cnt0sel:8;
2813		uint64_t cnt1sel:8;
2814		uint64_t cnt2sel:8;
2815		uint64_t cnt3sel:8;
2816		uint64_t reserved_32_63:32;
2817#endif
2818	} s;
2819	struct cvmx_l2c_tadx_prf_s cn61xx;
2820	struct cvmx_l2c_tadx_prf_s cn63xx;
2821	struct cvmx_l2c_tadx_prf_s cn63xxp1;
2822	struct cvmx_l2c_tadx_prf_s cn66xx;
2823	struct cvmx_l2c_tadx_prf_s cn68xx;
2824	struct cvmx_l2c_tadx_prf_s cn68xxp1;
2825	struct cvmx_l2c_tadx_prf_s cnf71xx;
2826};
2827
2828union cvmx_l2c_tadx_tag {
2829	uint64_t u64;
2830	struct cvmx_l2c_tadx_tag_s {
2831#ifdef __BIG_ENDIAN_BITFIELD
2832		uint64_t reserved_46_63:18;
2833		uint64_t ecc:6;
2834		uint64_t reserved_36_39:4;
2835		uint64_t tag:19;
2836		uint64_t reserved_4_16:13;
2837		uint64_t use:1;
2838		uint64_t valid:1;
2839		uint64_t dirty:1;
2840		uint64_t lock:1;
2841#else
2842		uint64_t lock:1;
2843		uint64_t dirty:1;
2844		uint64_t valid:1;
2845		uint64_t use:1;
2846		uint64_t reserved_4_16:13;
2847		uint64_t tag:19;
2848		uint64_t reserved_36_39:4;
2849		uint64_t ecc:6;
2850		uint64_t reserved_46_63:18;
2851#endif
2852	} s;
2853	struct cvmx_l2c_tadx_tag_s cn61xx;
2854	struct cvmx_l2c_tadx_tag_s cn63xx;
2855	struct cvmx_l2c_tadx_tag_s cn63xxp1;
2856	struct cvmx_l2c_tadx_tag_s cn66xx;
2857	struct cvmx_l2c_tadx_tag_s cn68xx;
2858	struct cvmx_l2c_tadx_tag_s cn68xxp1;
2859	struct cvmx_l2c_tadx_tag_s cnf71xx;
2860};
2861
2862union cvmx_l2c_ver_id {
2863	uint64_t u64;
2864	struct cvmx_l2c_ver_id_s {
2865#ifdef __BIG_ENDIAN_BITFIELD
2866		uint64_t mask:64;
2867#else
2868		uint64_t mask:64;
2869#endif
2870	} s;
2871	struct cvmx_l2c_ver_id_s cn61xx;
2872	struct cvmx_l2c_ver_id_s cn63xx;
2873	struct cvmx_l2c_ver_id_s cn63xxp1;
2874	struct cvmx_l2c_ver_id_s cn66xx;
2875	struct cvmx_l2c_ver_id_s cn68xx;
2876	struct cvmx_l2c_ver_id_s cn68xxp1;
2877	struct cvmx_l2c_ver_id_s cnf71xx;
2878};
2879
2880union cvmx_l2c_ver_iob {
2881	uint64_t u64;
2882	struct cvmx_l2c_ver_iob_s {
2883#ifdef __BIG_ENDIAN_BITFIELD
2884		uint64_t reserved_2_63:62;
2885		uint64_t mask:2;
2886#else
2887		uint64_t mask:2;
2888		uint64_t reserved_2_63:62;
2889#endif
2890	} s;
2891	struct cvmx_l2c_ver_iob_cn61xx {
2892#ifdef __BIG_ENDIAN_BITFIELD
2893		uint64_t reserved_1_63:63;
2894		uint64_t mask:1;
2895#else
2896		uint64_t mask:1;
2897		uint64_t reserved_1_63:63;
2898#endif
2899	} cn61xx;
2900	struct cvmx_l2c_ver_iob_cn61xx cn63xx;
2901	struct cvmx_l2c_ver_iob_cn61xx cn63xxp1;
2902	struct cvmx_l2c_ver_iob_cn61xx cn66xx;
2903	struct cvmx_l2c_ver_iob_s cn68xx;
2904	struct cvmx_l2c_ver_iob_s cn68xxp1;
2905	struct cvmx_l2c_ver_iob_cn61xx cnf71xx;
2906};
2907
2908union cvmx_l2c_ver_msc {
2909	uint64_t u64;
2910	struct cvmx_l2c_ver_msc_s {
2911#ifdef __BIG_ENDIAN_BITFIELD
2912		uint64_t reserved_2_63:62;
2913		uint64_t invl2:1;
2914		uint64_t dwb:1;
2915#else
2916		uint64_t dwb:1;
2917		uint64_t invl2:1;
2918		uint64_t reserved_2_63:62;
2919#endif
2920	} s;
2921	struct cvmx_l2c_ver_msc_s cn61xx;
2922	struct cvmx_l2c_ver_msc_s cn63xx;
2923	struct cvmx_l2c_ver_msc_s cn66xx;
2924	struct cvmx_l2c_ver_msc_s cn68xx;
2925	struct cvmx_l2c_ver_msc_s cn68xxp1;
2926	struct cvmx_l2c_ver_msc_s cnf71xx;
2927};
2928
2929union cvmx_l2c_ver_pp {
2930	uint64_t u64;
2931	struct cvmx_l2c_ver_pp_s {
2932#ifdef __BIG_ENDIAN_BITFIELD
2933		uint64_t reserved_32_63:32;
2934		uint64_t mask:32;
2935#else
2936		uint64_t mask:32;
2937		uint64_t reserved_32_63:32;
2938#endif
2939	} s;
2940	struct cvmx_l2c_ver_pp_cn61xx {
2941#ifdef __BIG_ENDIAN_BITFIELD
2942		uint64_t reserved_4_63:60;
2943		uint64_t mask:4;
2944#else
2945		uint64_t mask:4;
2946		uint64_t reserved_4_63:60;
2947#endif
2948	} cn61xx;
2949	struct cvmx_l2c_ver_pp_cn63xx {
2950#ifdef __BIG_ENDIAN_BITFIELD
2951		uint64_t reserved_6_63:58;
2952		uint64_t mask:6;
2953#else
2954		uint64_t mask:6;
2955		uint64_t reserved_6_63:58;
2956#endif
2957	} cn63xx;
2958	struct cvmx_l2c_ver_pp_cn63xx cn63xxp1;
2959	struct cvmx_l2c_ver_pp_cn66xx {
2960#ifdef __BIG_ENDIAN_BITFIELD
2961		uint64_t reserved_10_63:54;
2962		uint64_t mask:10;
2963#else
2964		uint64_t mask:10;
2965		uint64_t reserved_10_63:54;
2966#endif
2967	} cn66xx;
2968	struct cvmx_l2c_ver_pp_s cn68xx;
2969	struct cvmx_l2c_ver_pp_s cn68xxp1;
2970	struct cvmx_l2c_ver_pp_cn61xx cnf71xx;
2971};
2972
2973union cvmx_l2c_virtid_iobx {
2974	uint64_t u64;
2975	struct cvmx_l2c_virtid_iobx_s {
2976#ifdef __BIG_ENDIAN_BITFIELD
2977		uint64_t reserved_14_63:50;
2978		uint64_t dwbid:6;
2979		uint64_t reserved_6_7:2;
2980		uint64_t id:6;
2981#else
2982		uint64_t id:6;
2983		uint64_t reserved_6_7:2;
2984		uint64_t dwbid:6;
2985		uint64_t reserved_14_63:50;
2986#endif
2987	} s;
2988	struct cvmx_l2c_virtid_iobx_s cn61xx;
2989	struct cvmx_l2c_virtid_iobx_s cn63xx;
2990	struct cvmx_l2c_virtid_iobx_s cn63xxp1;
2991	struct cvmx_l2c_virtid_iobx_s cn66xx;
2992	struct cvmx_l2c_virtid_iobx_s cn68xx;
2993	struct cvmx_l2c_virtid_iobx_s cn68xxp1;
2994	struct cvmx_l2c_virtid_iobx_s cnf71xx;
2995};
2996
2997union cvmx_l2c_virtid_ppx {
2998	uint64_t u64;
2999	struct cvmx_l2c_virtid_ppx_s {
3000#ifdef __BIG_ENDIAN_BITFIELD
3001		uint64_t reserved_6_63:58;
3002		uint64_t id:6;
3003#else
3004		uint64_t id:6;
3005		uint64_t reserved_6_63:58;
3006#endif
3007	} s;
3008	struct cvmx_l2c_virtid_ppx_s cn61xx;
3009	struct cvmx_l2c_virtid_ppx_s cn63xx;
3010	struct cvmx_l2c_virtid_ppx_s cn63xxp1;
3011	struct cvmx_l2c_virtid_ppx_s cn66xx;
3012	struct cvmx_l2c_virtid_ppx_s cn68xx;
3013	struct cvmx_l2c_virtid_ppx_s cn68xxp1;
3014	struct cvmx_l2c_virtid_ppx_s cnf71xx;
3015};
3016
3017union cvmx_l2c_vrt_ctl {
3018	uint64_t u64;
3019	struct cvmx_l2c_vrt_ctl_s {
3020#ifdef __BIG_ENDIAN_BITFIELD
3021		uint64_t reserved_9_63:55;
3022		uint64_t ooberr:1;
3023		uint64_t reserved_7_7:1;
3024		uint64_t memsz:3;
3025		uint64_t numid:3;
3026		uint64_t enable:1;
3027#else
3028		uint64_t enable:1;
3029		uint64_t numid:3;
3030		uint64_t memsz:3;
3031		uint64_t reserved_7_7:1;
3032		uint64_t ooberr:1;
3033		uint64_t reserved_9_63:55;
3034#endif
3035	} s;
3036	struct cvmx_l2c_vrt_ctl_s cn61xx;
3037	struct cvmx_l2c_vrt_ctl_s cn63xx;
3038	struct cvmx_l2c_vrt_ctl_s cn63xxp1;
3039	struct cvmx_l2c_vrt_ctl_s cn66xx;
3040	struct cvmx_l2c_vrt_ctl_s cn68xx;
3041	struct cvmx_l2c_vrt_ctl_s cn68xxp1;
3042	struct cvmx_l2c_vrt_ctl_s cnf71xx;
3043};
3044
3045union cvmx_l2c_vrt_memx {
3046	uint64_t u64;
3047	struct cvmx_l2c_vrt_memx_s {
3048#ifdef __BIG_ENDIAN_BITFIELD
3049		uint64_t reserved_36_63:28;
3050		uint64_t parity:4;
3051		uint64_t data:32;
3052#else
3053		uint64_t data:32;
3054		uint64_t parity:4;
3055		uint64_t reserved_36_63:28;
3056#endif
3057	} s;
3058	struct cvmx_l2c_vrt_memx_s cn61xx;
3059	struct cvmx_l2c_vrt_memx_s cn63xx;
3060	struct cvmx_l2c_vrt_memx_s cn63xxp1;
3061	struct cvmx_l2c_vrt_memx_s cn66xx;
3062	struct cvmx_l2c_vrt_memx_s cn68xx;
3063	struct cvmx_l2c_vrt_memx_s cn68xxp1;
3064	struct cvmx_l2c_vrt_memx_s cnf71xx;
3065};
3066
3067union cvmx_l2c_wpar_iobx {
3068	uint64_t u64;
3069	struct cvmx_l2c_wpar_iobx_s {
3070#ifdef __BIG_ENDIAN_BITFIELD
3071		uint64_t reserved_16_63:48;
3072		uint64_t mask:16;
3073#else
3074		uint64_t mask:16;
3075		uint64_t reserved_16_63:48;
3076#endif
3077	} s;
3078	struct cvmx_l2c_wpar_iobx_s cn61xx;
3079	struct cvmx_l2c_wpar_iobx_s cn63xx;
3080	struct cvmx_l2c_wpar_iobx_s cn63xxp1;
3081	struct cvmx_l2c_wpar_iobx_s cn66xx;
3082	struct cvmx_l2c_wpar_iobx_s cn68xx;
3083	struct cvmx_l2c_wpar_iobx_s cn68xxp1;
3084	struct cvmx_l2c_wpar_iobx_s cnf71xx;
3085};
3086
3087union cvmx_l2c_wpar_ppx {
3088	uint64_t u64;
3089	struct cvmx_l2c_wpar_ppx_s {
3090#ifdef __BIG_ENDIAN_BITFIELD
3091		uint64_t reserved_16_63:48;
3092		uint64_t mask:16;
3093#else
3094		uint64_t mask:16;
3095		uint64_t reserved_16_63:48;
3096#endif
3097	} s;
3098	struct cvmx_l2c_wpar_ppx_s cn61xx;
3099	struct cvmx_l2c_wpar_ppx_s cn63xx;
3100	struct cvmx_l2c_wpar_ppx_s cn63xxp1;
3101	struct cvmx_l2c_wpar_ppx_s cn66xx;
3102	struct cvmx_l2c_wpar_ppx_s cn68xx;
3103	struct cvmx_l2c_wpar_ppx_s cn68xxp1;
3104	struct cvmx_l2c_wpar_ppx_s cnf71xx;
3105};
3106
3107union cvmx_l2c_xmcx_pfc {
3108	uint64_t u64;
3109	struct cvmx_l2c_xmcx_pfc_s {
3110#ifdef __BIG_ENDIAN_BITFIELD
3111		uint64_t count:64;
3112#else
3113		uint64_t count:64;
3114#endif
3115	} s;
3116	struct cvmx_l2c_xmcx_pfc_s cn61xx;
3117	struct cvmx_l2c_xmcx_pfc_s cn63xx;
3118	struct cvmx_l2c_xmcx_pfc_s cn63xxp1;
3119	struct cvmx_l2c_xmcx_pfc_s cn66xx;
3120	struct cvmx_l2c_xmcx_pfc_s cn68xx;
3121	struct cvmx_l2c_xmcx_pfc_s cn68xxp1;
3122	struct cvmx_l2c_xmcx_pfc_s cnf71xx;
3123};
3124
3125union cvmx_l2c_xmc_cmd {
3126	uint64_t u64;
3127	struct cvmx_l2c_xmc_cmd_s {
3128#ifdef __BIG_ENDIAN_BITFIELD
3129		uint64_t inuse:1;
3130		uint64_t cmd:6;
3131		uint64_t reserved_38_56:19;
3132		uint64_t addr:38;
3133#else
3134		uint64_t addr:38;
3135		uint64_t reserved_38_56:19;
3136		uint64_t cmd:6;
3137		uint64_t inuse:1;
3138#endif
3139	} s;
3140	struct cvmx_l2c_xmc_cmd_s cn61xx;
3141	struct cvmx_l2c_xmc_cmd_s cn63xx;
3142	struct cvmx_l2c_xmc_cmd_s cn63xxp1;
3143	struct cvmx_l2c_xmc_cmd_s cn66xx;
3144	struct cvmx_l2c_xmc_cmd_s cn68xx;
3145	struct cvmx_l2c_xmc_cmd_s cn68xxp1;
3146	struct cvmx_l2c_xmc_cmd_s cnf71xx;
3147};
3148
3149union cvmx_l2c_xmdx_pfc {
3150	uint64_t u64;
3151	struct cvmx_l2c_xmdx_pfc_s {
3152#ifdef __BIG_ENDIAN_BITFIELD
3153		uint64_t count:64;
3154#else
3155		uint64_t count:64;
3156#endif
3157	} s;
3158	struct cvmx_l2c_xmdx_pfc_s cn61xx;
3159	struct cvmx_l2c_xmdx_pfc_s cn63xx;
3160	struct cvmx_l2c_xmdx_pfc_s cn63xxp1;
3161	struct cvmx_l2c_xmdx_pfc_s cn66xx;
3162	struct cvmx_l2c_xmdx_pfc_s cn68xx;
3163	struct cvmx_l2c_xmdx_pfc_s cn68xxp1;
3164	struct cvmx_l2c_xmdx_pfc_s cnf71xx;
3165};
3166
3167#endif