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 108 union 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 131 union 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 249 union 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 353 union 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 455 union 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 549 union 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 575 union 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 613 union 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 635 union 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 789 union 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 807 union 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 947 union 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 1075 union 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 1105 union 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 1129 union 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 1207 union 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 1285 union 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 1313 union 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 1367 union 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 1384 union 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 1401 union 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 1434 union 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 1486 union 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 1578 union 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 1611 union 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 1629 union 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 1647 union 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 1675 union 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 1699 union 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 1859 union 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 1917 union 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 1989 union 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 2039 union 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 2058 union 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 2083 union 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 2108 union 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 2133 union 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 2157 union 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 2211 union 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 2264 union 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 2300 union 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 2328 union 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 2374 union 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 2392 union 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 2410 union 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 2470 union 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 2495 union 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 2520 union 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 2543 union 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 2575 union 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 2607 union 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 2639 union 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 2695 union 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 2730 union 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 2748 union 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 2766 union 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 2784 union 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 2802 union 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 2828 union 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 2862 union 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 2880 union 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 2908 union 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 2929 union 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 2973 union 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 2997 union 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 3017 union 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 3045 union 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 3067 union 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 3087 union 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 3107 union 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 3125 union 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 3149 union 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 3168