1*4882a593Smuzhiyun /***********************license start*************** 2*4882a593Smuzhiyun * Author: Cavium Networks 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Contact: support@caviumnetworks.com 5*4882a593Smuzhiyun * This file is part of the OCTEON SDK 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * Copyright (c) 2003-2012 Cavium Networks 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * This file is free software; you can redistribute it and/or modify 10*4882a593Smuzhiyun * it under the terms of the GNU General Public License, Version 2, as 11*4882a593Smuzhiyun * published by the Free Software Foundation. 12*4882a593Smuzhiyun * 13*4882a593Smuzhiyun * This file is distributed in the hope that it will be useful, but 14*4882a593Smuzhiyun * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 15*4882a593Smuzhiyun * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 16*4882a593Smuzhiyun * NONINFRINGEMENT. See the GNU General Public License for more 17*4882a593Smuzhiyun * details. 18*4882a593Smuzhiyun * 19*4882a593Smuzhiyun * You should have received a copy of the GNU General Public License 20*4882a593Smuzhiyun * along with this file; if not, write to the Free Software 21*4882a593Smuzhiyun * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 22*4882a593Smuzhiyun * or visit http://www.gnu.org/licenses/. 23*4882a593Smuzhiyun * 24*4882a593Smuzhiyun * This file may also be available under a different license from Cavium. 25*4882a593Smuzhiyun * Contact Cavium Networks for more information 26*4882a593Smuzhiyun ***********************license end**************************************/ 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #ifndef __CVMX_POW_DEFS_H__ 29*4882a593Smuzhiyun #define __CVMX_POW_DEFS_H__ 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #define CVMX_POW_BIST_STAT (CVMX_ADD_IO_SEG(0x00016700000003F8ull)) 32*4882a593Smuzhiyun #define CVMX_POW_DS_PC (CVMX_ADD_IO_SEG(0x0001670000000398ull)) 33*4882a593Smuzhiyun #define CVMX_POW_ECC_ERR (CVMX_ADD_IO_SEG(0x0001670000000218ull)) 34*4882a593Smuzhiyun #define CVMX_POW_INT_CTL (CVMX_ADD_IO_SEG(0x0001670000000220ull)) 35*4882a593Smuzhiyun #define CVMX_POW_IQ_CNTX(offset) (CVMX_ADD_IO_SEG(0x0001670000000340ull) + ((offset) & 7) * 8) 36*4882a593Smuzhiyun #define CVMX_POW_IQ_COM_CNT (CVMX_ADD_IO_SEG(0x0001670000000388ull)) 37*4882a593Smuzhiyun #define CVMX_POW_IQ_INT (CVMX_ADD_IO_SEG(0x0001670000000238ull)) 38*4882a593Smuzhiyun #define CVMX_POW_IQ_INT_EN (CVMX_ADD_IO_SEG(0x0001670000000240ull)) 39*4882a593Smuzhiyun #define CVMX_POW_IQ_THRX(offset) (CVMX_ADD_IO_SEG(0x00016700000003A0ull) + ((offset) & 7) * 8) 40*4882a593Smuzhiyun #define CVMX_POW_NOS_CNT (CVMX_ADD_IO_SEG(0x0001670000000228ull)) 41*4882a593Smuzhiyun #define CVMX_POW_NW_TIM (CVMX_ADD_IO_SEG(0x0001670000000210ull)) 42*4882a593Smuzhiyun #define CVMX_POW_PF_RST_MSK (CVMX_ADD_IO_SEG(0x0001670000000230ull)) 43*4882a593Smuzhiyun #define CVMX_POW_PP_GRP_MSKX(offset) (CVMX_ADD_IO_SEG(0x0001670000000000ull) + ((offset) & 15) * 8) 44*4882a593Smuzhiyun #define CVMX_POW_QOS_RNDX(offset) (CVMX_ADD_IO_SEG(0x00016700000001C0ull) + ((offset) & 7) * 8) 45*4882a593Smuzhiyun #define CVMX_POW_QOS_THRX(offset) (CVMX_ADD_IO_SEG(0x0001670000000180ull) + ((offset) & 7) * 8) 46*4882a593Smuzhiyun #define CVMX_POW_TS_PC (CVMX_ADD_IO_SEG(0x0001670000000390ull)) 47*4882a593Smuzhiyun #define CVMX_POW_WA_COM_PC (CVMX_ADD_IO_SEG(0x0001670000000380ull)) 48*4882a593Smuzhiyun #define CVMX_POW_WA_PCX(offset) (CVMX_ADD_IO_SEG(0x0001670000000300ull) + ((offset) & 7) * 8) 49*4882a593Smuzhiyun #define CVMX_POW_WQ_INT (CVMX_ADD_IO_SEG(0x0001670000000200ull)) 50*4882a593Smuzhiyun #define CVMX_POW_WQ_INT_CNTX(offset) (CVMX_ADD_IO_SEG(0x0001670000000100ull) + ((offset) & 15) * 8) 51*4882a593Smuzhiyun #define CVMX_POW_WQ_INT_PC (CVMX_ADD_IO_SEG(0x0001670000000208ull)) 52*4882a593Smuzhiyun #define CVMX_POW_WQ_INT_THRX(offset) (CVMX_ADD_IO_SEG(0x0001670000000080ull) + ((offset) & 15) * 8) 53*4882a593Smuzhiyun #define CVMX_POW_WS_PCX(offset) (CVMX_ADD_IO_SEG(0x0001670000000280ull) + ((offset) & 15) * 8) 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun #define CVMX_SSO_WQ_INT (CVMX_ADD_IO_SEG(0x0001670000001000ull)) 56*4882a593Smuzhiyun #define CVMX_SSO_WQ_IQ_DIS (CVMX_ADD_IO_SEG(0x0001670000001010ull)) 57*4882a593Smuzhiyun #define CVMX_SSO_WQ_INT_PC (CVMX_ADD_IO_SEG(0x0001670000001020ull)) 58*4882a593Smuzhiyun #define CVMX_SSO_PPX_GRP_MSK(offset) (CVMX_ADD_IO_SEG(0x0001670000006000ull) + ((offset) & 31) * 8) 59*4882a593Smuzhiyun #define CVMX_SSO_WQ_INT_THRX(offset) (CVMX_ADD_IO_SEG(0x0001670000007000ull) + ((offset) & 63) * 8) 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun union cvmx_pow_bist_stat { 62*4882a593Smuzhiyun uint64_t u64; 63*4882a593Smuzhiyun struct cvmx_pow_bist_stat_s { 64*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 65*4882a593Smuzhiyun uint64_t reserved_32_63:32; 66*4882a593Smuzhiyun uint64_t pp:16; 67*4882a593Smuzhiyun uint64_t reserved_0_15:16; 68*4882a593Smuzhiyun #else 69*4882a593Smuzhiyun uint64_t reserved_0_15:16; 70*4882a593Smuzhiyun uint64_t pp:16; 71*4882a593Smuzhiyun uint64_t reserved_32_63:32; 72*4882a593Smuzhiyun #endif 73*4882a593Smuzhiyun } s; 74*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn30xx { 75*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 76*4882a593Smuzhiyun uint64_t reserved_17_63:47; 77*4882a593Smuzhiyun uint64_t pp:1; 78*4882a593Smuzhiyun uint64_t reserved_9_15:7; 79*4882a593Smuzhiyun uint64_t cam:1; 80*4882a593Smuzhiyun uint64_t nbt1:1; 81*4882a593Smuzhiyun uint64_t nbt0:1; 82*4882a593Smuzhiyun uint64_t index:1; 83*4882a593Smuzhiyun uint64_t fidx:1; 84*4882a593Smuzhiyun uint64_t nbr1:1; 85*4882a593Smuzhiyun uint64_t nbr0:1; 86*4882a593Smuzhiyun uint64_t pend:1; 87*4882a593Smuzhiyun uint64_t adr:1; 88*4882a593Smuzhiyun #else 89*4882a593Smuzhiyun uint64_t adr:1; 90*4882a593Smuzhiyun uint64_t pend:1; 91*4882a593Smuzhiyun uint64_t nbr0:1; 92*4882a593Smuzhiyun uint64_t nbr1:1; 93*4882a593Smuzhiyun uint64_t fidx:1; 94*4882a593Smuzhiyun uint64_t index:1; 95*4882a593Smuzhiyun uint64_t nbt0:1; 96*4882a593Smuzhiyun uint64_t nbt1:1; 97*4882a593Smuzhiyun uint64_t cam:1; 98*4882a593Smuzhiyun uint64_t reserved_9_15:7; 99*4882a593Smuzhiyun uint64_t pp:1; 100*4882a593Smuzhiyun uint64_t reserved_17_63:47; 101*4882a593Smuzhiyun #endif 102*4882a593Smuzhiyun } cn30xx; 103*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn31xx { 104*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 105*4882a593Smuzhiyun uint64_t reserved_18_63:46; 106*4882a593Smuzhiyun uint64_t pp:2; 107*4882a593Smuzhiyun uint64_t reserved_9_15:7; 108*4882a593Smuzhiyun uint64_t cam:1; 109*4882a593Smuzhiyun uint64_t nbt1:1; 110*4882a593Smuzhiyun uint64_t nbt0:1; 111*4882a593Smuzhiyun uint64_t index:1; 112*4882a593Smuzhiyun uint64_t fidx:1; 113*4882a593Smuzhiyun uint64_t nbr1:1; 114*4882a593Smuzhiyun uint64_t nbr0:1; 115*4882a593Smuzhiyun uint64_t pend:1; 116*4882a593Smuzhiyun uint64_t adr:1; 117*4882a593Smuzhiyun #else 118*4882a593Smuzhiyun uint64_t adr:1; 119*4882a593Smuzhiyun uint64_t pend:1; 120*4882a593Smuzhiyun uint64_t nbr0:1; 121*4882a593Smuzhiyun uint64_t nbr1:1; 122*4882a593Smuzhiyun uint64_t fidx:1; 123*4882a593Smuzhiyun uint64_t index:1; 124*4882a593Smuzhiyun uint64_t nbt0:1; 125*4882a593Smuzhiyun uint64_t nbt1:1; 126*4882a593Smuzhiyun uint64_t cam:1; 127*4882a593Smuzhiyun uint64_t reserved_9_15:7; 128*4882a593Smuzhiyun uint64_t pp:2; 129*4882a593Smuzhiyun uint64_t reserved_18_63:46; 130*4882a593Smuzhiyun #endif 131*4882a593Smuzhiyun } cn31xx; 132*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn38xx { 133*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 134*4882a593Smuzhiyun uint64_t reserved_32_63:32; 135*4882a593Smuzhiyun uint64_t pp:16; 136*4882a593Smuzhiyun uint64_t reserved_10_15:6; 137*4882a593Smuzhiyun uint64_t cam:1; 138*4882a593Smuzhiyun uint64_t nbt:1; 139*4882a593Smuzhiyun uint64_t index:1; 140*4882a593Smuzhiyun uint64_t fidx:1; 141*4882a593Smuzhiyun uint64_t nbr1:1; 142*4882a593Smuzhiyun uint64_t nbr0:1; 143*4882a593Smuzhiyun uint64_t pend1:1; 144*4882a593Smuzhiyun uint64_t pend0:1; 145*4882a593Smuzhiyun uint64_t adr1:1; 146*4882a593Smuzhiyun uint64_t adr0:1; 147*4882a593Smuzhiyun #else 148*4882a593Smuzhiyun uint64_t adr0:1; 149*4882a593Smuzhiyun uint64_t adr1:1; 150*4882a593Smuzhiyun uint64_t pend0:1; 151*4882a593Smuzhiyun uint64_t pend1:1; 152*4882a593Smuzhiyun uint64_t nbr0:1; 153*4882a593Smuzhiyun uint64_t nbr1:1; 154*4882a593Smuzhiyun uint64_t fidx:1; 155*4882a593Smuzhiyun uint64_t index:1; 156*4882a593Smuzhiyun uint64_t nbt:1; 157*4882a593Smuzhiyun uint64_t cam:1; 158*4882a593Smuzhiyun uint64_t reserved_10_15:6; 159*4882a593Smuzhiyun uint64_t pp:16; 160*4882a593Smuzhiyun uint64_t reserved_32_63:32; 161*4882a593Smuzhiyun #endif 162*4882a593Smuzhiyun } cn38xx; 163*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn52xx { 164*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 165*4882a593Smuzhiyun uint64_t reserved_20_63:44; 166*4882a593Smuzhiyun uint64_t pp:4; 167*4882a593Smuzhiyun uint64_t reserved_9_15:7; 168*4882a593Smuzhiyun uint64_t cam:1; 169*4882a593Smuzhiyun uint64_t nbt1:1; 170*4882a593Smuzhiyun uint64_t nbt0:1; 171*4882a593Smuzhiyun uint64_t index:1; 172*4882a593Smuzhiyun uint64_t fidx:1; 173*4882a593Smuzhiyun uint64_t nbr1:1; 174*4882a593Smuzhiyun uint64_t nbr0:1; 175*4882a593Smuzhiyun uint64_t pend:1; 176*4882a593Smuzhiyun uint64_t adr:1; 177*4882a593Smuzhiyun #else 178*4882a593Smuzhiyun uint64_t adr:1; 179*4882a593Smuzhiyun uint64_t pend:1; 180*4882a593Smuzhiyun uint64_t nbr0:1; 181*4882a593Smuzhiyun uint64_t nbr1:1; 182*4882a593Smuzhiyun uint64_t fidx:1; 183*4882a593Smuzhiyun uint64_t index:1; 184*4882a593Smuzhiyun uint64_t nbt0:1; 185*4882a593Smuzhiyun uint64_t nbt1:1; 186*4882a593Smuzhiyun uint64_t cam:1; 187*4882a593Smuzhiyun uint64_t reserved_9_15:7; 188*4882a593Smuzhiyun uint64_t pp:4; 189*4882a593Smuzhiyun uint64_t reserved_20_63:44; 190*4882a593Smuzhiyun #endif 191*4882a593Smuzhiyun } cn52xx; 192*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn56xx { 193*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 194*4882a593Smuzhiyun uint64_t reserved_28_63:36; 195*4882a593Smuzhiyun uint64_t pp:12; 196*4882a593Smuzhiyun uint64_t reserved_10_15:6; 197*4882a593Smuzhiyun uint64_t cam:1; 198*4882a593Smuzhiyun uint64_t nbt:1; 199*4882a593Smuzhiyun uint64_t index:1; 200*4882a593Smuzhiyun uint64_t fidx:1; 201*4882a593Smuzhiyun uint64_t nbr1:1; 202*4882a593Smuzhiyun uint64_t nbr0:1; 203*4882a593Smuzhiyun uint64_t pend1:1; 204*4882a593Smuzhiyun uint64_t pend0:1; 205*4882a593Smuzhiyun uint64_t adr1:1; 206*4882a593Smuzhiyun uint64_t adr0:1; 207*4882a593Smuzhiyun #else 208*4882a593Smuzhiyun uint64_t adr0:1; 209*4882a593Smuzhiyun uint64_t adr1:1; 210*4882a593Smuzhiyun uint64_t pend0:1; 211*4882a593Smuzhiyun uint64_t pend1:1; 212*4882a593Smuzhiyun uint64_t nbr0:1; 213*4882a593Smuzhiyun uint64_t nbr1:1; 214*4882a593Smuzhiyun uint64_t fidx:1; 215*4882a593Smuzhiyun uint64_t index:1; 216*4882a593Smuzhiyun uint64_t nbt:1; 217*4882a593Smuzhiyun uint64_t cam:1; 218*4882a593Smuzhiyun uint64_t reserved_10_15:6; 219*4882a593Smuzhiyun uint64_t pp:12; 220*4882a593Smuzhiyun uint64_t reserved_28_63:36; 221*4882a593Smuzhiyun #endif 222*4882a593Smuzhiyun } cn56xx; 223*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn61xx { 224*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 225*4882a593Smuzhiyun uint64_t reserved_20_63:44; 226*4882a593Smuzhiyun uint64_t pp:4; 227*4882a593Smuzhiyun uint64_t reserved_12_15:4; 228*4882a593Smuzhiyun uint64_t cam:1; 229*4882a593Smuzhiyun uint64_t nbr:3; 230*4882a593Smuzhiyun uint64_t nbt:4; 231*4882a593Smuzhiyun uint64_t index:1; 232*4882a593Smuzhiyun uint64_t fidx:1; 233*4882a593Smuzhiyun uint64_t pend:1; 234*4882a593Smuzhiyun uint64_t adr:1; 235*4882a593Smuzhiyun #else 236*4882a593Smuzhiyun uint64_t adr:1; 237*4882a593Smuzhiyun uint64_t pend:1; 238*4882a593Smuzhiyun uint64_t fidx:1; 239*4882a593Smuzhiyun uint64_t index:1; 240*4882a593Smuzhiyun uint64_t nbt:4; 241*4882a593Smuzhiyun uint64_t nbr:3; 242*4882a593Smuzhiyun uint64_t cam:1; 243*4882a593Smuzhiyun uint64_t reserved_12_15:4; 244*4882a593Smuzhiyun uint64_t pp:4; 245*4882a593Smuzhiyun uint64_t reserved_20_63:44; 246*4882a593Smuzhiyun #endif 247*4882a593Smuzhiyun } cn61xx; 248*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn63xx { 249*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 250*4882a593Smuzhiyun uint64_t reserved_22_63:42; 251*4882a593Smuzhiyun uint64_t pp:6; 252*4882a593Smuzhiyun uint64_t reserved_12_15:4; 253*4882a593Smuzhiyun uint64_t cam:1; 254*4882a593Smuzhiyun uint64_t nbr:3; 255*4882a593Smuzhiyun uint64_t nbt:4; 256*4882a593Smuzhiyun uint64_t index:1; 257*4882a593Smuzhiyun uint64_t fidx:1; 258*4882a593Smuzhiyun uint64_t pend:1; 259*4882a593Smuzhiyun uint64_t adr:1; 260*4882a593Smuzhiyun #else 261*4882a593Smuzhiyun uint64_t adr:1; 262*4882a593Smuzhiyun uint64_t pend:1; 263*4882a593Smuzhiyun uint64_t fidx:1; 264*4882a593Smuzhiyun uint64_t index:1; 265*4882a593Smuzhiyun uint64_t nbt:4; 266*4882a593Smuzhiyun uint64_t nbr:3; 267*4882a593Smuzhiyun uint64_t cam:1; 268*4882a593Smuzhiyun uint64_t reserved_12_15:4; 269*4882a593Smuzhiyun uint64_t pp:6; 270*4882a593Smuzhiyun uint64_t reserved_22_63:42; 271*4882a593Smuzhiyun #endif 272*4882a593Smuzhiyun } cn63xx; 273*4882a593Smuzhiyun struct cvmx_pow_bist_stat_cn66xx { 274*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 275*4882a593Smuzhiyun uint64_t reserved_26_63:38; 276*4882a593Smuzhiyun uint64_t pp:10; 277*4882a593Smuzhiyun uint64_t reserved_12_15:4; 278*4882a593Smuzhiyun uint64_t cam:1; 279*4882a593Smuzhiyun uint64_t nbr:3; 280*4882a593Smuzhiyun uint64_t nbt:4; 281*4882a593Smuzhiyun uint64_t index:1; 282*4882a593Smuzhiyun uint64_t fidx:1; 283*4882a593Smuzhiyun uint64_t pend:1; 284*4882a593Smuzhiyun uint64_t adr:1; 285*4882a593Smuzhiyun #else 286*4882a593Smuzhiyun uint64_t adr:1; 287*4882a593Smuzhiyun uint64_t pend:1; 288*4882a593Smuzhiyun uint64_t fidx:1; 289*4882a593Smuzhiyun uint64_t index:1; 290*4882a593Smuzhiyun uint64_t nbt:4; 291*4882a593Smuzhiyun uint64_t nbr:3; 292*4882a593Smuzhiyun uint64_t cam:1; 293*4882a593Smuzhiyun uint64_t reserved_12_15:4; 294*4882a593Smuzhiyun uint64_t pp:10; 295*4882a593Smuzhiyun uint64_t reserved_26_63:38; 296*4882a593Smuzhiyun #endif 297*4882a593Smuzhiyun } cn66xx; 298*4882a593Smuzhiyun }; 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun union cvmx_pow_ds_pc { 301*4882a593Smuzhiyun uint64_t u64; 302*4882a593Smuzhiyun struct cvmx_pow_ds_pc_s { 303*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 304*4882a593Smuzhiyun uint64_t reserved_32_63:32; 305*4882a593Smuzhiyun uint64_t ds_pc:32; 306*4882a593Smuzhiyun #else 307*4882a593Smuzhiyun uint64_t ds_pc:32; 308*4882a593Smuzhiyun uint64_t reserved_32_63:32; 309*4882a593Smuzhiyun #endif 310*4882a593Smuzhiyun } s; 311*4882a593Smuzhiyun }; 312*4882a593Smuzhiyun 313*4882a593Smuzhiyun union cvmx_pow_ecc_err { 314*4882a593Smuzhiyun uint64_t u64; 315*4882a593Smuzhiyun struct cvmx_pow_ecc_err_s { 316*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 317*4882a593Smuzhiyun uint64_t reserved_45_63:19; 318*4882a593Smuzhiyun uint64_t iop_ie:13; 319*4882a593Smuzhiyun uint64_t reserved_29_31:3; 320*4882a593Smuzhiyun uint64_t iop:13; 321*4882a593Smuzhiyun uint64_t reserved_14_15:2; 322*4882a593Smuzhiyun uint64_t rpe_ie:1; 323*4882a593Smuzhiyun uint64_t rpe:1; 324*4882a593Smuzhiyun uint64_t reserved_9_11:3; 325*4882a593Smuzhiyun uint64_t syn:5; 326*4882a593Smuzhiyun uint64_t dbe_ie:1; 327*4882a593Smuzhiyun uint64_t sbe_ie:1; 328*4882a593Smuzhiyun uint64_t dbe:1; 329*4882a593Smuzhiyun uint64_t sbe:1; 330*4882a593Smuzhiyun #else 331*4882a593Smuzhiyun uint64_t sbe:1; 332*4882a593Smuzhiyun uint64_t dbe:1; 333*4882a593Smuzhiyun uint64_t sbe_ie:1; 334*4882a593Smuzhiyun uint64_t dbe_ie:1; 335*4882a593Smuzhiyun uint64_t syn:5; 336*4882a593Smuzhiyun uint64_t reserved_9_11:3; 337*4882a593Smuzhiyun uint64_t rpe:1; 338*4882a593Smuzhiyun uint64_t rpe_ie:1; 339*4882a593Smuzhiyun uint64_t reserved_14_15:2; 340*4882a593Smuzhiyun uint64_t iop:13; 341*4882a593Smuzhiyun uint64_t reserved_29_31:3; 342*4882a593Smuzhiyun uint64_t iop_ie:13; 343*4882a593Smuzhiyun uint64_t reserved_45_63:19; 344*4882a593Smuzhiyun #endif 345*4882a593Smuzhiyun } s; 346*4882a593Smuzhiyun struct cvmx_pow_ecc_err_cn31xx { 347*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 348*4882a593Smuzhiyun uint64_t reserved_14_63:50; 349*4882a593Smuzhiyun uint64_t rpe_ie:1; 350*4882a593Smuzhiyun uint64_t rpe:1; 351*4882a593Smuzhiyun uint64_t reserved_9_11:3; 352*4882a593Smuzhiyun uint64_t syn:5; 353*4882a593Smuzhiyun uint64_t dbe_ie:1; 354*4882a593Smuzhiyun uint64_t sbe_ie:1; 355*4882a593Smuzhiyun uint64_t dbe:1; 356*4882a593Smuzhiyun uint64_t sbe:1; 357*4882a593Smuzhiyun #else 358*4882a593Smuzhiyun uint64_t sbe:1; 359*4882a593Smuzhiyun uint64_t dbe:1; 360*4882a593Smuzhiyun uint64_t sbe_ie:1; 361*4882a593Smuzhiyun uint64_t dbe_ie:1; 362*4882a593Smuzhiyun uint64_t syn:5; 363*4882a593Smuzhiyun uint64_t reserved_9_11:3; 364*4882a593Smuzhiyun uint64_t rpe:1; 365*4882a593Smuzhiyun uint64_t rpe_ie:1; 366*4882a593Smuzhiyun uint64_t reserved_14_63:50; 367*4882a593Smuzhiyun #endif 368*4882a593Smuzhiyun } cn31xx; 369*4882a593Smuzhiyun }; 370*4882a593Smuzhiyun 371*4882a593Smuzhiyun union cvmx_pow_int_ctl { 372*4882a593Smuzhiyun uint64_t u64; 373*4882a593Smuzhiyun struct cvmx_pow_int_ctl_s { 374*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 375*4882a593Smuzhiyun uint64_t reserved_6_63:58; 376*4882a593Smuzhiyun uint64_t pfr_dis:1; 377*4882a593Smuzhiyun uint64_t nbr_thr:5; 378*4882a593Smuzhiyun #else 379*4882a593Smuzhiyun uint64_t nbr_thr:5; 380*4882a593Smuzhiyun uint64_t pfr_dis:1; 381*4882a593Smuzhiyun uint64_t reserved_6_63:58; 382*4882a593Smuzhiyun #endif 383*4882a593Smuzhiyun } s; 384*4882a593Smuzhiyun }; 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun union cvmx_pow_iq_cntx { 387*4882a593Smuzhiyun uint64_t u64; 388*4882a593Smuzhiyun struct cvmx_pow_iq_cntx_s { 389*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 390*4882a593Smuzhiyun uint64_t reserved_32_63:32; 391*4882a593Smuzhiyun uint64_t iq_cnt:32; 392*4882a593Smuzhiyun #else 393*4882a593Smuzhiyun uint64_t iq_cnt:32; 394*4882a593Smuzhiyun uint64_t reserved_32_63:32; 395*4882a593Smuzhiyun #endif 396*4882a593Smuzhiyun } s; 397*4882a593Smuzhiyun }; 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun union cvmx_pow_iq_com_cnt { 400*4882a593Smuzhiyun uint64_t u64; 401*4882a593Smuzhiyun struct cvmx_pow_iq_com_cnt_s { 402*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 403*4882a593Smuzhiyun uint64_t reserved_32_63:32; 404*4882a593Smuzhiyun uint64_t iq_cnt:32; 405*4882a593Smuzhiyun #else 406*4882a593Smuzhiyun uint64_t iq_cnt:32; 407*4882a593Smuzhiyun uint64_t reserved_32_63:32; 408*4882a593Smuzhiyun #endif 409*4882a593Smuzhiyun } s; 410*4882a593Smuzhiyun }; 411*4882a593Smuzhiyun 412*4882a593Smuzhiyun union cvmx_pow_iq_int { 413*4882a593Smuzhiyun uint64_t u64; 414*4882a593Smuzhiyun struct cvmx_pow_iq_int_s { 415*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 416*4882a593Smuzhiyun uint64_t reserved_8_63:56; 417*4882a593Smuzhiyun uint64_t iq_int:8; 418*4882a593Smuzhiyun #else 419*4882a593Smuzhiyun uint64_t iq_int:8; 420*4882a593Smuzhiyun uint64_t reserved_8_63:56; 421*4882a593Smuzhiyun #endif 422*4882a593Smuzhiyun } s; 423*4882a593Smuzhiyun }; 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun union cvmx_pow_iq_int_en { 426*4882a593Smuzhiyun uint64_t u64; 427*4882a593Smuzhiyun struct cvmx_pow_iq_int_en_s { 428*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 429*4882a593Smuzhiyun uint64_t reserved_8_63:56; 430*4882a593Smuzhiyun uint64_t int_en:8; 431*4882a593Smuzhiyun #else 432*4882a593Smuzhiyun uint64_t int_en:8; 433*4882a593Smuzhiyun uint64_t reserved_8_63:56; 434*4882a593Smuzhiyun #endif 435*4882a593Smuzhiyun } s; 436*4882a593Smuzhiyun }; 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun union cvmx_pow_iq_thrx { 439*4882a593Smuzhiyun uint64_t u64; 440*4882a593Smuzhiyun struct cvmx_pow_iq_thrx_s { 441*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 442*4882a593Smuzhiyun uint64_t reserved_32_63:32; 443*4882a593Smuzhiyun uint64_t iq_thr:32; 444*4882a593Smuzhiyun #else 445*4882a593Smuzhiyun uint64_t iq_thr:32; 446*4882a593Smuzhiyun uint64_t reserved_32_63:32; 447*4882a593Smuzhiyun #endif 448*4882a593Smuzhiyun } s; 449*4882a593Smuzhiyun }; 450*4882a593Smuzhiyun 451*4882a593Smuzhiyun union cvmx_pow_nos_cnt { 452*4882a593Smuzhiyun uint64_t u64; 453*4882a593Smuzhiyun struct cvmx_pow_nos_cnt_s { 454*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 455*4882a593Smuzhiyun uint64_t reserved_12_63:52; 456*4882a593Smuzhiyun uint64_t nos_cnt:12; 457*4882a593Smuzhiyun #else 458*4882a593Smuzhiyun uint64_t nos_cnt:12; 459*4882a593Smuzhiyun uint64_t reserved_12_63:52; 460*4882a593Smuzhiyun #endif 461*4882a593Smuzhiyun } s; 462*4882a593Smuzhiyun struct cvmx_pow_nos_cnt_cn30xx { 463*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 464*4882a593Smuzhiyun uint64_t reserved_7_63:57; 465*4882a593Smuzhiyun uint64_t nos_cnt:7; 466*4882a593Smuzhiyun #else 467*4882a593Smuzhiyun uint64_t nos_cnt:7; 468*4882a593Smuzhiyun uint64_t reserved_7_63:57; 469*4882a593Smuzhiyun #endif 470*4882a593Smuzhiyun } cn30xx; 471*4882a593Smuzhiyun struct cvmx_pow_nos_cnt_cn31xx { 472*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 473*4882a593Smuzhiyun uint64_t reserved_9_63:55; 474*4882a593Smuzhiyun uint64_t nos_cnt:9; 475*4882a593Smuzhiyun #else 476*4882a593Smuzhiyun uint64_t nos_cnt:9; 477*4882a593Smuzhiyun uint64_t reserved_9_63:55; 478*4882a593Smuzhiyun #endif 479*4882a593Smuzhiyun } cn31xx; 480*4882a593Smuzhiyun struct cvmx_pow_nos_cnt_cn52xx { 481*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 482*4882a593Smuzhiyun uint64_t reserved_10_63:54; 483*4882a593Smuzhiyun uint64_t nos_cnt:10; 484*4882a593Smuzhiyun #else 485*4882a593Smuzhiyun uint64_t nos_cnt:10; 486*4882a593Smuzhiyun uint64_t reserved_10_63:54; 487*4882a593Smuzhiyun #endif 488*4882a593Smuzhiyun } cn52xx; 489*4882a593Smuzhiyun struct cvmx_pow_nos_cnt_cn63xx { 490*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 491*4882a593Smuzhiyun uint64_t reserved_11_63:53; 492*4882a593Smuzhiyun uint64_t nos_cnt:11; 493*4882a593Smuzhiyun #else 494*4882a593Smuzhiyun uint64_t nos_cnt:11; 495*4882a593Smuzhiyun uint64_t reserved_11_63:53; 496*4882a593Smuzhiyun #endif 497*4882a593Smuzhiyun } cn63xx; 498*4882a593Smuzhiyun }; 499*4882a593Smuzhiyun 500*4882a593Smuzhiyun union cvmx_pow_nw_tim { 501*4882a593Smuzhiyun uint64_t u64; 502*4882a593Smuzhiyun struct cvmx_pow_nw_tim_s { 503*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 504*4882a593Smuzhiyun uint64_t reserved_10_63:54; 505*4882a593Smuzhiyun uint64_t nw_tim:10; 506*4882a593Smuzhiyun #else 507*4882a593Smuzhiyun uint64_t nw_tim:10; 508*4882a593Smuzhiyun uint64_t reserved_10_63:54; 509*4882a593Smuzhiyun #endif 510*4882a593Smuzhiyun } s; 511*4882a593Smuzhiyun }; 512*4882a593Smuzhiyun 513*4882a593Smuzhiyun union cvmx_pow_pf_rst_msk { 514*4882a593Smuzhiyun uint64_t u64; 515*4882a593Smuzhiyun struct cvmx_pow_pf_rst_msk_s { 516*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 517*4882a593Smuzhiyun uint64_t reserved_8_63:56; 518*4882a593Smuzhiyun uint64_t rst_msk:8; 519*4882a593Smuzhiyun #else 520*4882a593Smuzhiyun uint64_t rst_msk:8; 521*4882a593Smuzhiyun uint64_t reserved_8_63:56; 522*4882a593Smuzhiyun #endif 523*4882a593Smuzhiyun } s; 524*4882a593Smuzhiyun }; 525*4882a593Smuzhiyun 526*4882a593Smuzhiyun union cvmx_pow_pp_grp_mskx { 527*4882a593Smuzhiyun uint64_t u64; 528*4882a593Smuzhiyun struct cvmx_pow_pp_grp_mskx_s { 529*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 530*4882a593Smuzhiyun uint64_t reserved_48_63:16; 531*4882a593Smuzhiyun uint64_t qos7_pri:4; 532*4882a593Smuzhiyun uint64_t qos6_pri:4; 533*4882a593Smuzhiyun uint64_t qos5_pri:4; 534*4882a593Smuzhiyun uint64_t qos4_pri:4; 535*4882a593Smuzhiyun uint64_t qos3_pri:4; 536*4882a593Smuzhiyun uint64_t qos2_pri:4; 537*4882a593Smuzhiyun uint64_t qos1_pri:4; 538*4882a593Smuzhiyun uint64_t qos0_pri:4; 539*4882a593Smuzhiyun uint64_t grp_msk:16; 540*4882a593Smuzhiyun #else 541*4882a593Smuzhiyun uint64_t grp_msk:16; 542*4882a593Smuzhiyun uint64_t qos0_pri:4; 543*4882a593Smuzhiyun uint64_t qos1_pri:4; 544*4882a593Smuzhiyun uint64_t qos2_pri:4; 545*4882a593Smuzhiyun uint64_t qos3_pri:4; 546*4882a593Smuzhiyun uint64_t qos4_pri:4; 547*4882a593Smuzhiyun uint64_t qos5_pri:4; 548*4882a593Smuzhiyun uint64_t qos6_pri:4; 549*4882a593Smuzhiyun uint64_t qos7_pri:4; 550*4882a593Smuzhiyun uint64_t reserved_48_63:16; 551*4882a593Smuzhiyun #endif 552*4882a593Smuzhiyun } s; 553*4882a593Smuzhiyun struct cvmx_pow_pp_grp_mskx_cn30xx { 554*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 555*4882a593Smuzhiyun uint64_t reserved_16_63:48; 556*4882a593Smuzhiyun uint64_t grp_msk:16; 557*4882a593Smuzhiyun #else 558*4882a593Smuzhiyun uint64_t grp_msk:16; 559*4882a593Smuzhiyun uint64_t reserved_16_63:48; 560*4882a593Smuzhiyun #endif 561*4882a593Smuzhiyun } cn30xx; 562*4882a593Smuzhiyun }; 563*4882a593Smuzhiyun 564*4882a593Smuzhiyun union cvmx_pow_qos_rndx { 565*4882a593Smuzhiyun uint64_t u64; 566*4882a593Smuzhiyun struct cvmx_pow_qos_rndx_s { 567*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 568*4882a593Smuzhiyun uint64_t reserved_32_63:32; 569*4882a593Smuzhiyun uint64_t rnd_p3:8; 570*4882a593Smuzhiyun uint64_t rnd_p2:8; 571*4882a593Smuzhiyun uint64_t rnd_p1:8; 572*4882a593Smuzhiyun uint64_t rnd:8; 573*4882a593Smuzhiyun #else 574*4882a593Smuzhiyun uint64_t rnd:8; 575*4882a593Smuzhiyun uint64_t rnd_p1:8; 576*4882a593Smuzhiyun uint64_t rnd_p2:8; 577*4882a593Smuzhiyun uint64_t rnd_p3:8; 578*4882a593Smuzhiyun uint64_t reserved_32_63:32; 579*4882a593Smuzhiyun #endif 580*4882a593Smuzhiyun } s; 581*4882a593Smuzhiyun }; 582*4882a593Smuzhiyun 583*4882a593Smuzhiyun union cvmx_pow_qos_thrx { 584*4882a593Smuzhiyun uint64_t u64; 585*4882a593Smuzhiyun struct cvmx_pow_qos_thrx_s { 586*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 587*4882a593Smuzhiyun uint64_t reserved_60_63:4; 588*4882a593Smuzhiyun uint64_t des_cnt:12; 589*4882a593Smuzhiyun uint64_t buf_cnt:12; 590*4882a593Smuzhiyun uint64_t free_cnt:12; 591*4882a593Smuzhiyun uint64_t reserved_23_23:1; 592*4882a593Smuzhiyun uint64_t max_thr:11; 593*4882a593Smuzhiyun uint64_t reserved_11_11:1; 594*4882a593Smuzhiyun uint64_t min_thr:11; 595*4882a593Smuzhiyun #else 596*4882a593Smuzhiyun uint64_t min_thr:11; 597*4882a593Smuzhiyun uint64_t reserved_11_11:1; 598*4882a593Smuzhiyun uint64_t max_thr:11; 599*4882a593Smuzhiyun uint64_t reserved_23_23:1; 600*4882a593Smuzhiyun uint64_t free_cnt:12; 601*4882a593Smuzhiyun uint64_t buf_cnt:12; 602*4882a593Smuzhiyun uint64_t des_cnt:12; 603*4882a593Smuzhiyun uint64_t reserved_60_63:4; 604*4882a593Smuzhiyun #endif 605*4882a593Smuzhiyun } s; 606*4882a593Smuzhiyun struct cvmx_pow_qos_thrx_cn30xx { 607*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 608*4882a593Smuzhiyun uint64_t reserved_55_63:9; 609*4882a593Smuzhiyun uint64_t des_cnt:7; 610*4882a593Smuzhiyun uint64_t reserved_43_47:5; 611*4882a593Smuzhiyun uint64_t buf_cnt:7; 612*4882a593Smuzhiyun uint64_t reserved_31_35:5; 613*4882a593Smuzhiyun uint64_t free_cnt:7; 614*4882a593Smuzhiyun uint64_t reserved_18_23:6; 615*4882a593Smuzhiyun uint64_t max_thr:6; 616*4882a593Smuzhiyun uint64_t reserved_6_11:6; 617*4882a593Smuzhiyun uint64_t min_thr:6; 618*4882a593Smuzhiyun #else 619*4882a593Smuzhiyun uint64_t min_thr:6; 620*4882a593Smuzhiyun uint64_t reserved_6_11:6; 621*4882a593Smuzhiyun uint64_t max_thr:6; 622*4882a593Smuzhiyun uint64_t reserved_18_23:6; 623*4882a593Smuzhiyun uint64_t free_cnt:7; 624*4882a593Smuzhiyun uint64_t reserved_31_35:5; 625*4882a593Smuzhiyun uint64_t buf_cnt:7; 626*4882a593Smuzhiyun uint64_t reserved_43_47:5; 627*4882a593Smuzhiyun uint64_t des_cnt:7; 628*4882a593Smuzhiyun uint64_t reserved_55_63:9; 629*4882a593Smuzhiyun #endif 630*4882a593Smuzhiyun } cn30xx; 631*4882a593Smuzhiyun struct cvmx_pow_qos_thrx_cn31xx { 632*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 633*4882a593Smuzhiyun uint64_t reserved_57_63:7; 634*4882a593Smuzhiyun uint64_t des_cnt:9; 635*4882a593Smuzhiyun uint64_t reserved_45_47:3; 636*4882a593Smuzhiyun uint64_t buf_cnt:9; 637*4882a593Smuzhiyun uint64_t reserved_33_35:3; 638*4882a593Smuzhiyun uint64_t free_cnt:9; 639*4882a593Smuzhiyun uint64_t reserved_20_23:4; 640*4882a593Smuzhiyun uint64_t max_thr:8; 641*4882a593Smuzhiyun uint64_t reserved_8_11:4; 642*4882a593Smuzhiyun uint64_t min_thr:8; 643*4882a593Smuzhiyun #else 644*4882a593Smuzhiyun uint64_t min_thr:8; 645*4882a593Smuzhiyun uint64_t reserved_8_11:4; 646*4882a593Smuzhiyun uint64_t max_thr:8; 647*4882a593Smuzhiyun uint64_t reserved_20_23:4; 648*4882a593Smuzhiyun uint64_t free_cnt:9; 649*4882a593Smuzhiyun uint64_t reserved_33_35:3; 650*4882a593Smuzhiyun uint64_t buf_cnt:9; 651*4882a593Smuzhiyun uint64_t reserved_45_47:3; 652*4882a593Smuzhiyun uint64_t des_cnt:9; 653*4882a593Smuzhiyun uint64_t reserved_57_63:7; 654*4882a593Smuzhiyun #endif 655*4882a593Smuzhiyun } cn31xx; 656*4882a593Smuzhiyun struct cvmx_pow_qos_thrx_cn52xx { 657*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 658*4882a593Smuzhiyun uint64_t reserved_58_63:6; 659*4882a593Smuzhiyun uint64_t des_cnt:10; 660*4882a593Smuzhiyun uint64_t reserved_46_47:2; 661*4882a593Smuzhiyun uint64_t buf_cnt:10; 662*4882a593Smuzhiyun uint64_t reserved_34_35:2; 663*4882a593Smuzhiyun uint64_t free_cnt:10; 664*4882a593Smuzhiyun uint64_t reserved_21_23:3; 665*4882a593Smuzhiyun uint64_t max_thr:9; 666*4882a593Smuzhiyun uint64_t reserved_9_11:3; 667*4882a593Smuzhiyun uint64_t min_thr:9; 668*4882a593Smuzhiyun #else 669*4882a593Smuzhiyun uint64_t min_thr:9; 670*4882a593Smuzhiyun uint64_t reserved_9_11:3; 671*4882a593Smuzhiyun uint64_t max_thr:9; 672*4882a593Smuzhiyun uint64_t reserved_21_23:3; 673*4882a593Smuzhiyun uint64_t free_cnt:10; 674*4882a593Smuzhiyun uint64_t reserved_34_35:2; 675*4882a593Smuzhiyun uint64_t buf_cnt:10; 676*4882a593Smuzhiyun uint64_t reserved_46_47:2; 677*4882a593Smuzhiyun uint64_t des_cnt:10; 678*4882a593Smuzhiyun uint64_t reserved_58_63:6; 679*4882a593Smuzhiyun #endif 680*4882a593Smuzhiyun } cn52xx; 681*4882a593Smuzhiyun struct cvmx_pow_qos_thrx_cn63xx { 682*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 683*4882a593Smuzhiyun uint64_t reserved_59_63:5; 684*4882a593Smuzhiyun uint64_t des_cnt:11; 685*4882a593Smuzhiyun uint64_t reserved_47_47:1; 686*4882a593Smuzhiyun uint64_t buf_cnt:11; 687*4882a593Smuzhiyun uint64_t reserved_35_35:1; 688*4882a593Smuzhiyun uint64_t free_cnt:11; 689*4882a593Smuzhiyun uint64_t reserved_22_23:2; 690*4882a593Smuzhiyun uint64_t max_thr:10; 691*4882a593Smuzhiyun uint64_t reserved_10_11:2; 692*4882a593Smuzhiyun uint64_t min_thr:10; 693*4882a593Smuzhiyun #else 694*4882a593Smuzhiyun uint64_t min_thr:10; 695*4882a593Smuzhiyun uint64_t reserved_10_11:2; 696*4882a593Smuzhiyun uint64_t max_thr:10; 697*4882a593Smuzhiyun uint64_t reserved_22_23:2; 698*4882a593Smuzhiyun uint64_t free_cnt:11; 699*4882a593Smuzhiyun uint64_t reserved_35_35:1; 700*4882a593Smuzhiyun uint64_t buf_cnt:11; 701*4882a593Smuzhiyun uint64_t reserved_47_47:1; 702*4882a593Smuzhiyun uint64_t des_cnt:11; 703*4882a593Smuzhiyun uint64_t reserved_59_63:5; 704*4882a593Smuzhiyun #endif 705*4882a593Smuzhiyun } cn63xx; 706*4882a593Smuzhiyun }; 707*4882a593Smuzhiyun 708*4882a593Smuzhiyun union cvmx_pow_ts_pc { 709*4882a593Smuzhiyun uint64_t u64; 710*4882a593Smuzhiyun struct cvmx_pow_ts_pc_s { 711*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 712*4882a593Smuzhiyun uint64_t reserved_32_63:32; 713*4882a593Smuzhiyun uint64_t ts_pc:32; 714*4882a593Smuzhiyun #else 715*4882a593Smuzhiyun uint64_t ts_pc:32; 716*4882a593Smuzhiyun uint64_t reserved_32_63:32; 717*4882a593Smuzhiyun #endif 718*4882a593Smuzhiyun } s; 719*4882a593Smuzhiyun }; 720*4882a593Smuzhiyun 721*4882a593Smuzhiyun union cvmx_pow_wa_com_pc { 722*4882a593Smuzhiyun uint64_t u64; 723*4882a593Smuzhiyun struct cvmx_pow_wa_com_pc_s { 724*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 725*4882a593Smuzhiyun uint64_t reserved_32_63:32; 726*4882a593Smuzhiyun uint64_t wa_pc:32; 727*4882a593Smuzhiyun #else 728*4882a593Smuzhiyun uint64_t wa_pc:32; 729*4882a593Smuzhiyun uint64_t reserved_32_63:32; 730*4882a593Smuzhiyun #endif 731*4882a593Smuzhiyun } s; 732*4882a593Smuzhiyun }; 733*4882a593Smuzhiyun 734*4882a593Smuzhiyun union cvmx_pow_wa_pcx { 735*4882a593Smuzhiyun uint64_t u64; 736*4882a593Smuzhiyun struct cvmx_pow_wa_pcx_s { 737*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 738*4882a593Smuzhiyun uint64_t reserved_32_63:32; 739*4882a593Smuzhiyun uint64_t wa_pc:32; 740*4882a593Smuzhiyun #else 741*4882a593Smuzhiyun uint64_t wa_pc:32; 742*4882a593Smuzhiyun uint64_t reserved_32_63:32; 743*4882a593Smuzhiyun #endif 744*4882a593Smuzhiyun } s; 745*4882a593Smuzhiyun }; 746*4882a593Smuzhiyun 747*4882a593Smuzhiyun union cvmx_pow_wq_int { 748*4882a593Smuzhiyun uint64_t u64; 749*4882a593Smuzhiyun struct cvmx_pow_wq_int_s { 750*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 751*4882a593Smuzhiyun uint64_t reserved_32_63:32; 752*4882a593Smuzhiyun uint64_t iq_dis:16; 753*4882a593Smuzhiyun uint64_t wq_int:16; 754*4882a593Smuzhiyun #else 755*4882a593Smuzhiyun uint64_t wq_int:16; 756*4882a593Smuzhiyun uint64_t iq_dis:16; 757*4882a593Smuzhiyun uint64_t reserved_32_63:32; 758*4882a593Smuzhiyun #endif 759*4882a593Smuzhiyun } s; 760*4882a593Smuzhiyun }; 761*4882a593Smuzhiyun 762*4882a593Smuzhiyun union cvmx_pow_wq_int_cntx { 763*4882a593Smuzhiyun uint64_t u64; 764*4882a593Smuzhiyun struct cvmx_pow_wq_int_cntx_s { 765*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 766*4882a593Smuzhiyun uint64_t reserved_28_63:36; 767*4882a593Smuzhiyun uint64_t tc_cnt:4; 768*4882a593Smuzhiyun uint64_t ds_cnt:12; 769*4882a593Smuzhiyun uint64_t iq_cnt:12; 770*4882a593Smuzhiyun #else 771*4882a593Smuzhiyun uint64_t iq_cnt:12; 772*4882a593Smuzhiyun uint64_t ds_cnt:12; 773*4882a593Smuzhiyun uint64_t tc_cnt:4; 774*4882a593Smuzhiyun uint64_t reserved_28_63:36; 775*4882a593Smuzhiyun #endif 776*4882a593Smuzhiyun } s; 777*4882a593Smuzhiyun struct cvmx_pow_wq_int_cntx_cn30xx { 778*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 779*4882a593Smuzhiyun uint64_t reserved_28_63:36; 780*4882a593Smuzhiyun uint64_t tc_cnt:4; 781*4882a593Smuzhiyun uint64_t reserved_19_23:5; 782*4882a593Smuzhiyun uint64_t ds_cnt:7; 783*4882a593Smuzhiyun uint64_t reserved_7_11:5; 784*4882a593Smuzhiyun uint64_t iq_cnt:7; 785*4882a593Smuzhiyun #else 786*4882a593Smuzhiyun uint64_t iq_cnt:7; 787*4882a593Smuzhiyun uint64_t reserved_7_11:5; 788*4882a593Smuzhiyun uint64_t ds_cnt:7; 789*4882a593Smuzhiyun uint64_t reserved_19_23:5; 790*4882a593Smuzhiyun uint64_t tc_cnt:4; 791*4882a593Smuzhiyun uint64_t reserved_28_63:36; 792*4882a593Smuzhiyun #endif 793*4882a593Smuzhiyun } cn30xx; 794*4882a593Smuzhiyun struct cvmx_pow_wq_int_cntx_cn31xx { 795*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 796*4882a593Smuzhiyun uint64_t reserved_28_63:36; 797*4882a593Smuzhiyun uint64_t tc_cnt:4; 798*4882a593Smuzhiyun uint64_t reserved_21_23:3; 799*4882a593Smuzhiyun uint64_t ds_cnt:9; 800*4882a593Smuzhiyun uint64_t reserved_9_11:3; 801*4882a593Smuzhiyun uint64_t iq_cnt:9; 802*4882a593Smuzhiyun #else 803*4882a593Smuzhiyun uint64_t iq_cnt:9; 804*4882a593Smuzhiyun uint64_t reserved_9_11:3; 805*4882a593Smuzhiyun uint64_t ds_cnt:9; 806*4882a593Smuzhiyun uint64_t reserved_21_23:3; 807*4882a593Smuzhiyun uint64_t tc_cnt:4; 808*4882a593Smuzhiyun uint64_t reserved_28_63:36; 809*4882a593Smuzhiyun #endif 810*4882a593Smuzhiyun } cn31xx; 811*4882a593Smuzhiyun struct cvmx_pow_wq_int_cntx_cn52xx { 812*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 813*4882a593Smuzhiyun uint64_t reserved_28_63:36; 814*4882a593Smuzhiyun uint64_t tc_cnt:4; 815*4882a593Smuzhiyun uint64_t reserved_22_23:2; 816*4882a593Smuzhiyun uint64_t ds_cnt:10; 817*4882a593Smuzhiyun uint64_t reserved_10_11:2; 818*4882a593Smuzhiyun uint64_t iq_cnt:10; 819*4882a593Smuzhiyun #else 820*4882a593Smuzhiyun uint64_t iq_cnt:10; 821*4882a593Smuzhiyun uint64_t reserved_10_11:2; 822*4882a593Smuzhiyun uint64_t ds_cnt:10; 823*4882a593Smuzhiyun uint64_t reserved_22_23:2; 824*4882a593Smuzhiyun uint64_t tc_cnt:4; 825*4882a593Smuzhiyun uint64_t reserved_28_63:36; 826*4882a593Smuzhiyun #endif 827*4882a593Smuzhiyun } cn52xx; 828*4882a593Smuzhiyun struct cvmx_pow_wq_int_cntx_cn63xx { 829*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 830*4882a593Smuzhiyun uint64_t reserved_28_63:36; 831*4882a593Smuzhiyun uint64_t tc_cnt:4; 832*4882a593Smuzhiyun uint64_t reserved_23_23:1; 833*4882a593Smuzhiyun uint64_t ds_cnt:11; 834*4882a593Smuzhiyun uint64_t reserved_11_11:1; 835*4882a593Smuzhiyun uint64_t iq_cnt:11; 836*4882a593Smuzhiyun #else 837*4882a593Smuzhiyun uint64_t iq_cnt:11; 838*4882a593Smuzhiyun uint64_t reserved_11_11:1; 839*4882a593Smuzhiyun uint64_t ds_cnt:11; 840*4882a593Smuzhiyun uint64_t reserved_23_23:1; 841*4882a593Smuzhiyun uint64_t tc_cnt:4; 842*4882a593Smuzhiyun uint64_t reserved_28_63:36; 843*4882a593Smuzhiyun #endif 844*4882a593Smuzhiyun } cn63xx; 845*4882a593Smuzhiyun }; 846*4882a593Smuzhiyun 847*4882a593Smuzhiyun union cvmx_pow_wq_int_pc { 848*4882a593Smuzhiyun uint64_t u64; 849*4882a593Smuzhiyun struct cvmx_pow_wq_int_pc_s { 850*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 851*4882a593Smuzhiyun uint64_t reserved_60_63:4; 852*4882a593Smuzhiyun uint64_t pc:28; 853*4882a593Smuzhiyun uint64_t reserved_28_31:4; 854*4882a593Smuzhiyun uint64_t pc_thr:20; 855*4882a593Smuzhiyun uint64_t reserved_0_7:8; 856*4882a593Smuzhiyun #else 857*4882a593Smuzhiyun uint64_t reserved_0_7:8; 858*4882a593Smuzhiyun uint64_t pc_thr:20; 859*4882a593Smuzhiyun uint64_t reserved_28_31:4; 860*4882a593Smuzhiyun uint64_t pc:28; 861*4882a593Smuzhiyun uint64_t reserved_60_63:4; 862*4882a593Smuzhiyun #endif 863*4882a593Smuzhiyun } s; 864*4882a593Smuzhiyun }; 865*4882a593Smuzhiyun 866*4882a593Smuzhiyun union cvmx_pow_wq_int_thrx { 867*4882a593Smuzhiyun uint64_t u64; 868*4882a593Smuzhiyun struct cvmx_pow_wq_int_thrx_s { 869*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 870*4882a593Smuzhiyun uint64_t reserved_29_63:35; 871*4882a593Smuzhiyun uint64_t tc_en:1; 872*4882a593Smuzhiyun uint64_t tc_thr:4; 873*4882a593Smuzhiyun uint64_t reserved_23_23:1; 874*4882a593Smuzhiyun uint64_t ds_thr:11; 875*4882a593Smuzhiyun uint64_t reserved_11_11:1; 876*4882a593Smuzhiyun uint64_t iq_thr:11; 877*4882a593Smuzhiyun #else 878*4882a593Smuzhiyun uint64_t iq_thr:11; 879*4882a593Smuzhiyun uint64_t reserved_11_11:1; 880*4882a593Smuzhiyun uint64_t ds_thr:11; 881*4882a593Smuzhiyun uint64_t reserved_23_23:1; 882*4882a593Smuzhiyun uint64_t tc_thr:4; 883*4882a593Smuzhiyun uint64_t tc_en:1; 884*4882a593Smuzhiyun uint64_t reserved_29_63:35; 885*4882a593Smuzhiyun #endif 886*4882a593Smuzhiyun } s; 887*4882a593Smuzhiyun struct cvmx_pow_wq_int_thrx_cn30xx { 888*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 889*4882a593Smuzhiyun uint64_t reserved_29_63:35; 890*4882a593Smuzhiyun uint64_t tc_en:1; 891*4882a593Smuzhiyun uint64_t tc_thr:4; 892*4882a593Smuzhiyun uint64_t reserved_18_23:6; 893*4882a593Smuzhiyun uint64_t ds_thr:6; 894*4882a593Smuzhiyun uint64_t reserved_6_11:6; 895*4882a593Smuzhiyun uint64_t iq_thr:6; 896*4882a593Smuzhiyun #else 897*4882a593Smuzhiyun uint64_t iq_thr:6; 898*4882a593Smuzhiyun uint64_t reserved_6_11:6; 899*4882a593Smuzhiyun uint64_t ds_thr:6; 900*4882a593Smuzhiyun uint64_t reserved_18_23:6; 901*4882a593Smuzhiyun uint64_t tc_thr:4; 902*4882a593Smuzhiyun uint64_t tc_en:1; 903*4882a593Smuzhiyun uint64_t reserved_29_63:35; 904*4882a593Smuzhiyun #endif 905*4882a593Smuzhiyun } cn30xx; 906*4882a593Smuzhiyun struct cvmx_pow_wq_int_thrx_cn31xx { 907*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 908*4882a593Smuzhiyun uint64_t reserved_29_63:35; 909*4882a593Smuzhiyun uint64_t tc_en:1; 910*4882a593Smuzhiyun uint64_t tc_thr:4; 911*4882a593Smuzhiyun uint64_t reserved_20_23:4; 912*4882a593Smuzhiyun uint64_t ds_thr:8; 913*4882a593Smuzhiyun uint64_t reserved_8_11:4; 914*4882a593Smuzhiyun uint64_t iq_thr:8; 915*4882a593Smuzhiyun #else 916*4882a593Smuzhiyun uint64_t iq_thr:8; 917*4882a593Smuzhiyun uint64_t reserved_8_11:4; 918*4882a593Smuzhiyun uint64_t ds_thr:8; 919*4882a593Smuzhiyun uint64_t reserved_20_23:4; 920*4882a593Smuzhiyun uint64_t tc_thr:4; 921*4882a593Smuzhiyun uint64_t tc_en:1; 922*4882a593Smuzhiyun uint64_t reserved_29_63:35; 923*4882a593Smuzhiyun #endif 924*4882a593Smuzhiyun } cn31xx; 925*4882a593Smuzhiyun struct cvmx_pow_wq_int_thrx_cn52xx { 926*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 927*4882a593Smuzhiyun uint64_t reserved_29_63:35; 928*4882a593Smuzhiyun uint64_t tc_en:1; 929*4882a593Smuzhiyun uint64_t tc_thr:4; 930*4882a593Smuzhiyun uint64_t reserved_21_23:3; 931*4882a593Smuzhiyun uint64_t ds_thr:9; 932*4882a593Smuzhiyun uint64_t reserved_9_11:3; 933*4882a593Smuzhiyun uint64_t iq_thr:9; 934*4882a593Smuzhiyun #else 935*4882a593Smuzhiyun uint64_t iq_thr:9; 936*4882a593Smuzhiyun uint64_t reserved_9_11:3; 937*4882a593Smuzhiyun uint64_t ds_thr:9; 938*4882a593Smuzhiyun uint64_t reserved_21_23:3; 939*4882a593Smuzhiyun uint64_t tc_thr:4; 940*4882a593Smuzhiyun uint64_t tc_en:1; 941*4882a593Smuzhiyun uint64_t reserved_29_63:35; 942*4882a593Smuzhiyun #endif 943*4882a593Smuzhiyun } cn52xx; 944*4882a593Smuzhiyun struct cvmx_pow_wq_int_thrx_cn63xx { 945*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 946*4882a593Smuzhiyun uint64_t reserved_29_63:35; 947*4882a593Smuzhiyun uint64_t tc_en:1; 948*4882a593Smuzhiyun uint64_t tc_thr:4; 949*4882a593Smuzhiyun uint64_t reserved_22_23:2; 950*4882a593Smuzhiyun uint64_t ds_thr:10; 951*4882a593Smuzhiyun uint64_t reserved_10_11:2; 952*4882a593Smuzhiyun uint64_t iq_thr:10; 953*4882a593Smuzhiyun #else 954*4882a593Smuzhiyun uint64_t iq_thr:10; 955*4882a593Smuzhiyun uint64_t reserved_10_11:2; 956*4882a593Smuzhiyun uint64_t ds_thr:10; 957*4882a593Smuzhiyun uint64_t reserved_22_23:2; 958*4882a593Smuzhiyun uint64_t tc_thr:4; 959*4882a593Smuzhiyun uint64_t tc_en:1; 960*4882a593Smuzhiyun uint64_t reserved_29_63:35; 961*4882a593Smuzhiyun #endif 962*4882a593Smuzhiyun } cn63xx; 963*4882a593Smuzhiyun }; 964*4882a593Smuzhiyun 965*4882a593Smuzhiyun union cvmx_pow_ws_pcx { 966*4882a593Smuzhiyun uint64_t u64; 967*4882a593Smuzhiyun struct cvmx_pow_ws_pcx_s { 968*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 969*4882a593Smuzhiyun uint64_t reserved_32_63:32; 970*4882a593Smuzhiyun uint64_t ws_pc:32; 971*4882a593Smuzhiyun #else 972*4882a593Smuzhiyun uint64_t ws_pc:32; 973*4882a593Smuzhiyun uint64_t reserved_32_63:32; 974*4882a593Smuzhiyun #endif 975*4882a593Smuzhiyun } s; 976*4882a593Smuzhiyun }; 977*4882a593Smuzhiyun 978*4882a593Smuzhiyun union cvmx_sso_wq_int_thrx { 979*4882a593Smuzhiyun uint64_t u64; 980*4882a593Smuzhiyun struct { 981*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD 982*4882a593Smuzhiyun uint64_t reserved_33_63:31; 983*4882a593Smuzhiyun uint64_t tc_en:1; 984*4882a593Smuzhiyun uint64_t tc_thr:4; 985*4882a593Smuzhiyun uint64_t reserved_26_27:2; 986*4882a593Smuzhiyun uint64_t ds_thr:12; 987*4882a593Smuzhiyun uint64_t reserved_12_13:2; 988*4882a593Smuzhiyun uint64_t iq_thr:12; 989*4882a593Smuzhiyun #else 990*4882a593Smuzhiyun uint64_t iq_thr:12; 991*4882a593Smuzhiyun uint64_t reserved_12_13:2; 992*4882a593Smuzhiyun uint64_t ds_thr:12; 993*4882a593Smuzhiyun uint64_t reserved_26_27:2; 994*4882a593Smuzhiyun uint64_t tc_thr:4; 995*4882a593Smuzhiyun uint64_t tc_en:1; 996*4882a593Smuzhiyun uint64_t reserved_33_63:31; 997*4882a593Smuzhiyun #endif 998*4882a593Smuzhiyun } s; 999*4882a593Smuzhiyun }; 1000*4882a593Smuzhiyun 1001*4882a593Smuzhiyun #endif 1002