1a7187a2fSDavid Daney /***********************license start*************** 2a7187a2fSDavid Daney * Author: Cavium Networks 3a7187a2fSDavid Daney * 4a7187a2fSDavid Daney * Contact: support@caviumnetworks.com 5a7187a2fSDavid Daney * This file is part of the OCTEON SDK 6a7187a2fSDavid Daney * 7*c5aa59e8SDavid Daney * Copyright (c) 2003-2012 Cavium Networks 8a7187a2fSDavid Daney * 9a7187a2fSDavid Daney * This file is free software; you can redistribute it and/or modify 10a7187a2fSDavid Daney * it under the terms of the GNU General Public License, Version 2, as 11a7187a2fSDavid Daney * published by the Free Software Foundation. 12a7187a2fSDavid Daney * 13a7187a2fSDavid Daney * This file is distributed in the hope that it will be useful, but 14a7187a2fSDavid Daney * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 15a7187a2fSDavid Daney * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 16a7187a2fSDavid Daney * NONINFRINGEMENT. See the GNU General Public License for more 17a7187a2fSDavid Daney * details. 18a7187a2fSDavid Daney * 19a7187a2fSDavid Daney * You should have received a copy of the GNU General Public License 20a7187a2fSDavid Daney * along with this file; if not, write to the Free Software 21a7187a2fSDavid Daney * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 22a7187a2fSDavid Daney * or visit http://www.gnu.org/licenses/. 23a7187a2fSDavid Daney * 24a7187a2fSDavid Daney * This file may also be available under a different license from Cavium. 25a7187a2fSDavid Daney * Contact Cavium Networks for more information 26a7187a2fSDavid Daney ***********************license end**************************************/ 27a7187a2fSDavid Daney 28a7187a2fSDavid Daney #ifndef __CVMX_AGL_DEFS_H__ 29a7187a2fSDavid Daney #define __CVMX_AGL_DEFS_H__ 30a7187a2fSDavid Daney 31aa32a955SDavid Daney #define CVMX_AGL_GMX_BAD_REG (CVMX_ADD_IO_SEG(0x00011800E0000518ull)) 32aa32a955SDavid Daney #define CVMX_AGL_GMX_BIST (CVMX_ADD_IO_SEG(0x00011800E0000400ull)) 33aa32a955SDavid Daney #define CVMX_AGL_GMX_DRV_CTL (CVMX_ADD_IO_SEG(0x00011800E00007F0ull)) 34aa32a955SDavid Daney #define CVMX_AGL_GMX_INF_MODE (CVMX_ADD_IO_SEG(0x00011800E00007F8ull)) 35aa32a955SDavid Daney #define CVMX_AGL_GMX_PRTX_CFG(offset) (CVMX_ADD_IO_SEG(0x00011800E0000010ull) + ((offset) & 1) * 2048) 36aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM0(offset) (CVMX_ADD_IO_SEG(0x00011800E0000180ull) + ((offset) & 1) * 2048) 37aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM1(offset) (CVMX_ADD_IO_SEG(0x00011800E0000188ull) + ((offset) & 1) * 2048) 38aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM2(offset) (CVMX_ADD_IO_SEG(0x00011800E0000190ull) + ((offset) & 1) * 2048) 39aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM3(offset) (CVMX_ADD_IO_SEG(0x00011800E0000198ull) + ((offset) & 1) * 2048) 40aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM4(offset) (CVMX_ADD_IO_SEG(0x00011800E00001A0ull) + ((offset) & 1) * 2048) 41aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM5(offset) (CVMX_ADD_IO_SEG(0x00011800E00001A8ull) + ((offset) & 1) * 2048) 42aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CAM_EN(offset) (CVMX_ADD_IO_SEG(0x00011800E0000108ull) + ((offset) & 1) * 2048) 43aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_ADR_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000100ull) + ((offset) & 1) * 2048) 44aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_DECISION(offset) (CVMX_ADD_IO_SEG(0x00011800E0000040ull) + ((offset) & 1) * 2048) 45aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_FRM_CHK(offset) (CVMX_ADD_IO_SEG(0x00011800E0000020ull) + ((offset) & 1) * 2048) 46aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_FRM_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000018ull) + ((offset) & 1) * 2048) 47aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_FRM_MAX(offset) (CVMX_ADD_IO_SEG(0x00011800E0000030ull) + ((offset) & 1) * 2048) 48aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_FRM_MIN(offset) (CVMX_ADD_IO_SEG(0x00011800E0000028ull) + ((offset) & 1) * 2048) 49aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_IFG(offset) (CVMX_ADD_IO_SEG(0x00011800E0000058ull) + ((offset) & 1) * 2048) 50aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_INT_EN(offset) (CVMX_ADD_IO_SEG(0x00011800E0000008ull) + ((offset) & 1) * 2048) 51aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_INT_REG(offset) (CVMX_ADD_IO_SEG(0x00011800E0000000ull) + ((offset) & 1) * 2048) 52aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_JABBER(offset) (CVMX_ADD_IO_SEG(0x00011800E0000038ull) + ((offset) & 1) * 2048) 53aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_PAUSE_DROP_TIME(offset) (CVMX_ADD_IO_SEG(0x00011800E0000068ull) + ((offset) & 1) * 2048) 54aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_RX_INBND(offset) (CVMX_ADD_IO_SEG(0x00011800E0000060ull) + ((offset) & 1) * 2048) 55aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000050ull) + ((offset) & 1) * 2048) 56aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_OCTS(offset) (CVMX_ADD_IO_SEG(0x00011800E0000088ull) + ((offset) & 1) * 2048) 57aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_OCTS_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000098ull) + ((offset) & 1) * 2048) 58aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_OCTS_DMAC(offset) (CVMX_ADD_IO_SEG(0x00011800E00000A8ull) + ((offset) & 1) * 2048) 59aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_OCTS_DRP(offset) (CVMX_ADD_IO_SEG(0x00011800E00000B8ull) + ((offset) & 1) * 2048) 60aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_PKTS(offset) (CVMX_ADD_IO_SEG(0x00011800E0000080ull) + ((offset) & 1) * 2048) 61aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_PKTS_BAD(offset) (CVMX_ADD_IO_SEG(0x00011800E00000C0ull) + ((offset) & 1) * 2048) 62aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_PKTS_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000090ull) + ((offset) & 1) * 2048) 63aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_PKTS_DMAC(offset) (CVMX_ADD_IO_SEG(0x00011800E00000A0ull) + ((offset) & 1) * 2048) 64aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_STATS_PKTS_DRP(offset) (CVMX_ADD_IO_SEG(0x00011800E00000B0ull) + ((offset) & 1) * 2048) 65aa32a955SDavid Daney #define CVMX_AGL_GMX_RXX_UDD_SKP(offset) (CVMX_ADD_IO_SEG(0x00011800E0000048ull) + ((offset) & 1) * 2048) 66aa32a955SDavid Daney #define CVMX_AGL_GMX_RX_BP_DROPX(offset) (CVMX_ADD_IO_SEG(0x00011800E0000420ull) + ((offset) & 1) * 8) 67aa32a955SDavid Daney #define CVMX_AGL_GMX_RX_BP_OFFX(offset) (CVMX_ADD_IO_SEG(0x00011800E0000460ull) + ((offset) & 1) * 8) 68aa32a955SDavid Daney #define CVMX_AGL_GMX_RX_BP_ONX(offset) (CVMX_ADD_IO_SEG(0x00011800E0000440ull) + ((offset) & 1) * 8) 69aa32a955SDavid Daney #define CVMX_AGL_GMX_RX_PRT_INFO (CVMX_ADD_IO_SEG(0x00011800E00004E8ull)) 70aa32a955SDavid Daney #define CVMX_AGL_GMX_RX_TX_STATUS (CVMX_ADD_IO_SEG(0x00011800E00007E8ull)) 71aa32a955SDavid Daney #define CVMX_AGL_GMX_SMACX(offset) (CVMX_ADD_IO_SEG(0x00011800E0000230ull) + ((offset) & 1) * 2048) 72aa32a955SDavid Daney #define CVMX_AGL_GMX_STAT_BP (CVMX_ADD_IO_SEG(0x00011800E0000520ull)) 73aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_APPEND(offset) (CVMX_ADD_IO_SEG(0x00011800E0000218ull) + ((offset) & 1) * 2048) 74aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_CLK(offset) (CVMX_ADD_IO_SEG(0x00011800E0000208ull) + ((offset) & 1) * 2048) 75aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000270ull) + ((offset) & 1) * 2048) 76aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_MIN_PKT(offset) (CVMX_ADD_IO_SEG(0x00011800E0000240ull) + ((offset) & 1) * 2048) 77aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_PAUSE_PKT_INTERVAL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000248ull) + ((offset) & 1) * 2048) 78aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_PAUSE_PKT_TIME(offset) (CVMX_ADD_IO_SEG(0x00011800E0000238ull) + ((offset) & 1) * 2048) 79aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_PAUSE_TOGO(offset) (CVMX_ADD_IO_SEG(0x00011800E0000258ull) + ((offset) & 1) * 2048) 80aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_PAUSE_ZERO(offset) (CVMX_ADD_IO_SEG(0x00011800E0000260ull) + ((offset) & 1) * 2048) 81aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_SOFT_PAUSE(offset) (CVMX_ADD_IO_SEG(0x00011800E0000250ull) + ((offset) & 1) * 2048) 82aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT0(offset) (CVMX_ADD_IO_SEG(0x00011800E0000280ull) + ((offset) & 1) * 2048) 83aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT1(offset) (CVMX_ADD_IO_SEG(0x00011800E0000288ull) + ((offset) & 1) * 2048) 84aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT2(offset) (CVMX_ADD_IO_SEG(0x00011800E0000290ull) + ((offset) & 1) * 2048) 85aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT3(offset) (CVMX_ADD_IO_SEG(0x00011800E0000298ull) + ((offset) & 1) * 2048) 86aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT4(offset) (CVMX_ADD_IO_SEG(0x00011800E00002A0ull) + ((offset) & 1) * 2048) 87aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT5(offset) (CVMX_ADD_IO_SEG(0x00011800E00002A8ull) + ((offset) & 1) * 2048) 88aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT6(offset) (CVMX_ADD_IO_SEG(0x00011800E00002B0ull) + ((offset) & 1) * 2048) 89aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT7(offset) (CVMX_ADD_IO_SEG(0x00011800E00002B8ull) + ((offset) & 1) * 2048) 90aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT8(offset) (CVMX_ADD_IO_SEG(0x00011800E00002C0ull) + ((offset) & 1) * 2048) 91aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STAT9(offset) (CVMX_ADD_IO_SEG(0x00011800E00002C8ull) + ((offset) & 1) * 2048) 92aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_STATS_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0000268ull) + ((offset) & 1) * 2048) 93aa32a955SDavid Daney #define CVMX_AGL_GMX_TXX_THRESH(offset) (CVMX_ADD_IO_SEG(0x00011800E0000210ull) + ((offset) & 1) * 2048) 94aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_BP (CVMX_ADD_IO_SEG(0x00011800E00004D0ull)) 95aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_COL_ATTEMPT (CVMX_ADD_IO_SEG(0x00011800E0000498ull)) 96aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_IFG (CVMX_ADD_IO_SEG(0x00011800E0000488ull)) 97aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_INT_EN (CVMX_ADD_IO_SEG(0x00011800E0000508ull)) 98aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_INT_REG (CVMX_ADD_IO_SEG(0x00011800E0000500ull)) 99aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_JAM (CVMX_ADD_IO_SEG(0x00011800E0000490ull)) 100aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_LFSR (CVMX_ADD_IO_SEG(0x00011800E00004F8ull)) 101aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_OVR_BP (CVMX_ADD_IO_SEG(0x00011800E00004C8ull)) 102aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_PAUSE_PKT_DMAC (CVMX_ADD_IO_SEG(0x00011800E00004A0ull)) 103aa32a955SDavid Daney #define CVMX_AGL_GMX_TX_PAUSE_PKT_TYPE (CVMX_ADD_IO_SEG(0x00011800E00004A8ull)) 104aa32a955SDavid Daney #define CVMX_AGL_PRTX_CTL(offset) (CVMX_ADD_IO_SEG(0x00011800E0002000ull) + ((offset) & 1) * 8) 105a7187a2fSDavid Daney 106a7187a2fSDavid Daney union cvmx_agl_gmx_bad_reg { 107a7187a2fSDavid Daney uint64_t u64; 108a7187a2fSDavid Daney struct cvmx_agl_gmx_bad_reg_s { 109*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 110a7187a2fSDavid Daney uint64_t reserved_38_63:26; 111a7187a2fSDavid Daney uint64_t txpsh1:1; 112a7187a2fSDavid Daney uint64_t txpop1:1; 113a7187a2fSDavid Daney uint64_t ovrflw1:1; 114a7187a2fSDavid Daney uint64_t txpsh:1; 115a7187a2fSDavid Daney uint64_t txpop:1; 116a7187a2fSDavid Daney uint64_t ovrflw:1; 117a7187a2fSDavid Daney uint64_t reserved_27_31:5; 118a7187a2fSDavid Daney uint64_t statovr:1; 119aa32a955SDavid Daney uint64_t reserved_24_25:2; 120aa32a955SDavid Daney uint64_t loststat:2; 121aa32a955SDavid Daney uint64_t reserved_4_21:18; 122aa32a955SDavid Daney uint64_t out_ovr:2; 123aa32a955SDavid Daney uint64_t reserved_0_1:2; 124*c5aa59e8SDavid Daney #else 125*c5aa59e8SDavid Daney uint64_t reserved_0_1:2; 126*c5aa59e8SDavid Daney uint64_t out_ovr:2; 127*c5aa59e8SDavid Daney uint64_t reserved_4_21:18; 128*c5aa59e8SDavid Daney uint64_t loststat:2; 129*c5aa59e8SDavid Daney uint64_t reserved_24_25:2; 130*c5aa59e8SDavid Daney uint64_t statovr:1; 131*c5aa59e8SDavid Daney uint64_t reserved_27_31:5; 132*c5aa59e8SDavid Daney uint64_t ovrflw:1; 133*c5aa59e8SDavid Daney uint64_t txpop:1; 134*c5aa59e8SDavid Daney uint64_t txpsh:1; 135*c5aa59e8SDavid Daney uint64_t ovrflw1:1; 136*c5aa59e8SDavid Daney uint64_t txpop1:1; 137*c5aa59e8SDavid Daney uint64_t txpsh1:1; 138*c5aa59e8SDavid Daney uint64_t reserved_38_63:26; 139*c5aa59e8SDavid Daney #endif 140aa32a955SDavid Daney } s; 141aa32a955SDavid Daney struct cvmx_agl_gmx_bad_reg_cn52xx { 142*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 143aa32a955SDavid Daney uint64_t reserved_38_63:26; 144aa32a955SDavid Daney uint64_t txpsh1:1; 145aa32a955SDavid Daney uint64_t txpop1:1; 146aa32a955SDavid Daney uint64_t ovrflw1:1; 147aa32a955SDavid Daney uint64_t txpsh:1; 148aa32a955SDavid Daney uint64_t txpop:1; 149aa32a955SDavid Daney uint64_t ovrflw:1; 150aa32a955SDavid Daney uint64_t reserved_27_31:5; 151aa32a955SDavid Daney uint64_t statovr:1; 152a7187a2fSDavid Daney uint64_t reserved_23_25:3; 153a7187a2fSDavid Daney uint64_t loststat:1; 154a7187a2fSDavid Daney uint64_t reserved_4_21:18; 155a7187a2fSDavid Daney uint64_t out_ovr:2; 156a7187a2fSDavid Daney uint64_t reserved_0_1:2; 157*c5aa59e8SDavid Daney #else 158*c5aa59e8SDavid Daney uint64_t reserved_0_1:2; 159*c5aa59e8SDavid Daney uint64_t out_ovr:2; 160*c5aa59e8SDavid Daney uint64_t reserved_4_21:18; 161*c5aa59e8SDavid Daney uint64_t loststat:1; 162*c5aa59e8SDavid Daney uint64_t reserved_23_25:3; 163*c5aa59e8SDavid Daney uint64_t statovr:1; 164*c5aa59e8SDavid Daney uint64_t reserved_27_31:5; 165*c5aa59e8SDavid Daney uint64_t ovrflw:1; 166*c5aa59e8SDavid Daney uint64_t txpop:1; 167*c5aa59e8SDavid Daney uint64_t txpsh:1; 168*c5aa59e8SDavid Daney uint64_t ovrflw1:1; 169*c5aa59e8SDavid Daney uint64_t txpop1:1; 170*c5aa59e8SDavid Daney uint64_t txpsh1:1; 171*c5aa59e8SDavid Daney uint64_t reserved_38_63:26; 172*c5aa59e8SDavid Daney #endif 173aa32a955SDavid Daney } cn52xx; 174a7187a2fSDavid Daney struct cvmx_agl_gmx_bad_reg_cn56xx { 175*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 176a7187a2fSDavid Daney uint64_t reserved_35_63:29; 177a7187a2fSDavid Daney uint64_t txpsh:1; 178a7187a2fSDavid Daney uint64_t txpop:1; 179a7187a2fSDavid Daney uint64_t ovrflw:1; 180a7187a2fSDavid Daney uint64_t reserved_27_31:5; 181a7187a2fSDavid Daney uint64_t statovr:1; 182a7187a2fSDavid Daney uint64_t reserved_23_25:3; 183a7187a2fSDavid Daney uint64_t loststat:1; 184a7187a2fSDavid Daney uint64_t reserved_3_21:19; 185a7187a2fSDavid Daney uint64_t out_ovr:1; 186a7187a2fSDavid Daney uint64_t reserved_0_1:2; 187*c5aa59e8SDavid Daney #else 188*c5aa59e8SDavid Daney uint64_t reserved_0_1:2; 189*c5aa59e8SDavid Daney uint64_t out_ovr:1; 190*c5aa59e8SDavid Daney uint64_t reserved_3_21:19; 191*c5aa59e8SDavid Daney uint64_t loststat:1; 192*c5aa59e8SDavid Daney uint64_t reserved_23_25:3; 193*c5aa59e8SDavid Daney uint64_t statovr:1; 194*c5aa59e8SDavid Daney uint64_t reserved_27_31:5; 195*c5aa59e8SDavid Daney uint64_t ovrflw:1; 196*c5aa59e8SDavid Daney uint64_t txpop:1; 197*c5aa59e8SDavid Daney uint64_t txpsh:1; 198*c5aa59e8SDavid Daney uint64_t reserved_35_63:29; 199*c5aa59e8SDavid Daney #endif 200a7187a2fSDavid Daney } cn56xx; 201a7187a2fSDavid Daney }; 202a7187a2fSDavid Daney 203a7187a2fSDavid Daney union cvmx_agl_gmx_bist { 204a7187a2fSDavid Daney uint64_t u64; 205a7187a2fSDavid Daney struct cvmx_agl_gmx_bist_s { 206*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 207aa32a955SDavid Daney uint64_t reserved_25_63:39; 208aa32a955SDavid Daney uint64_t status:25; 209*c5aa59e8SDavid Daney #else 210*c5aa59e8SDavid Daney uint64_t status:25; 211*c5aa59e8SDavid Daney uint64_t reserved_25_63:39; 212*c5aa59e8SDavid Daney #endif 213aa32a955SDavid Daney } s; 214aa32a955SDavid Daney struct cvmx_agl_gmx_bist_cn52xx { 215*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 216a7187a2fSDavid Daney uint64_t reserved_10_63:54; 217a7187a2fSDavid Daney uint64_t status:10; 218*c5aa59e8SDavid Daney #else 219*c5aa59e8SDavid Daney uint64_t status:10; 220*c5aa59e8SDavid Daney uint64_t reserved_10_63:54; 221*c5aa59e8SDavid Daney #endif 222aa32a955SDavid Daney } cn52xx; 223a7187a2fSDavid Daney }; 224a7187a2fSDavid Daney 225a7187a2fSDavid Daney union cvmx_agl_gmx_drv_ctl { 226a7187a2fSDavid Daney uint64_t u64; 227a7187a2fSDavid Daney struct cvmx_agl_gmx_drv_ctl_s { 228*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 229a7187a2fSDavid Daney uint64_t reserved_49_63:15; 230a7187a2fSDavid Daney uint64_t byp_en1:1; 231a7187a2fSDavid Daney uint64_t reserved_45_47:3; 232a7187a2fSDavid Daney uint64_t pctl1:5; 233a7187a2fSDavid Daney uint64_t reserved_37_39:3; 234a7187a2fSDavid Daney uint64_t nctl1:5; 235a7187a2fSDavid Daney uint64_t reserved_17_31:15; 236a7187a2fSDavid Daney uint64_t byp_en:1; 237a7187a2fSDavid Daney uint64_t reserved_13_15:3; 238a7187a2fSDavid Daney uint64_t pctl:5; 239a7187a2fSDavid Daney uint64_t reserved_5_7:3; 240a7187a2fSDavid Daney uint64_t nctl:5; 241*c5aa59e8SDavid Daney #else 242*c5aa59e8SDavid Daney uint64_t nctl:5; 243*c5aa59e8SDavid Daney uint64_t reserved_5_7:3; 244*c5aa59e8SDavid Daney uint64_t pctl:5; 245*c5aa59e8SDavid Daney uint64_t reserved_13_15:3; 246*c5aa59e8SDavid Daney uint64_t byp_en:1; 247*c5aa59e8SDavid Daney uint64_t reserved_17_31:15; 248*c5aa59e8SDavid Daney uint64_t nctl1:5; 249*c5aa59e8SDavid Daney uint64_t reserved_37_39:3; 250*c5aa59e8SDavid Daney uint64_t pctl1:5; 251*c5aa59e8SDavid Daney uint64_t reserved_45_47:3; 252*c5aa59e8SDavid Daney uint64_t byp_en1:1; 253*c5aa59e8SDavid Daney uint64_t reserved_49_63:15; 254*c5aa59e8SDavid Daney #endif 255a7187a2fSDavid Daney } s; 256a7187a2fSDavid Daney struct cvmx_agl_gmx_drv_ctl_cn56xx { 257*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 258a7187a2fSDavid Daney uint64_t reserved_17_63:47; 259a7187a2fSDavid Daney uint64_t byp_en:1; 260a7187a2fSDavid Daney uint64_t reserved_13_15:3; 261a7187a2fSDavid Daney uint64_t pctl:5; 262a7187a2fSDavid Daney uint64_t reserved_5_7:3; 263a7187a2fSDavid Daney uint64_t nctl:5; 264*c5aa59e8SDavid Daney #else 265*c5aa59e8SDavid Daney uint64_t nctl:5; 266*c5aa59e8SDavid Daney uint64_t reserved_5_7:3; 267*c5aa59e8SDavid Daney uint64_t pctl:5; 268*c5aa59e8SDavid Daney uint64_t reserved_13_15:3; 269*c5aa59e8SDavid Daney uint64_t byp_en:1; 270*c5aa59e8SDavid Daney uint64_t reserved_17_63:47; 271*c5aa59e8SDavid Daney #endif 272a7187a2fSDavid Daney } cn56xx; 273a7187a2fSDavid Daney }; 274a7187a2fSDavid Daney 275a7187a2fSDavid Daney union cvmx_agl_gmx_inf_mode { 276a7187a2fSDavid Daney uint64_t u64; 277a7187a2fSDavid Daney struct cvmx_agl_gmx_inf_mode_s { 278*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 279a7187a2fSDavid Daney uint64_t reserved_2_63:62; 280a7187a2fSDavid Daney uint64_t en:1; 281a7187a2fSDavid Daney uint64_t reserved_0_0:1; 282*c5aa59e8SDavid Daney #else 283*c5aa59e8SDavid Daney uint64_t reserved_0_0:1; 284*c5aa59e8SDavid Daney uint64_t en:1; 285*c5aa59e8SDavid Daney uint64_t reserved_2_63:62; 286*c5aa59e8SDavid Daney #endif 287a7187a2fSDavid Daney } s; 288a7187a2fSDavid Daney }; 289a7187a2fSDavid Daney 290a7187a2fSDavid Daney union cvmx_agl_gmx_prtx_cfg { 291a7187a2fSDavid Daney uint64_t u64; 292a7187a2fSDavid Daney struct cvmx_agl_gmx_prtx_cfg_s { 293*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 294aa32a955SDavid Daney uint64_t reserved_14_63:50; 295aa32a955SDavid Daney uint64_t tx_idle:1; 296aa32a955SDavid Daney uint64_t rx_idle:1; 297aa32a955SDavid Daney uint64_t reserved_9_11:3; 298aa32a955SDavid Daney uint64_t speed_msb:1; 299aa32a955SDavid Daney uint64_t reserved_7_7:1; 300aa32a955SDavid Daney uint64_t burst:1; 301a7187a2fSDavid Daney uint64_t tx_en:1; 302a7187a2fSDavid Daney uint64_t rx_en:1; 303a7187a2fSDavid Daney uint64_t slottime:1; 304a7187a2fSDavid Daney uint64_t duplex:1; 305a7187a2fSDavid Daney uint64_t speed:1; 306a7187a2fSDavid Daney uint64_t en:1; 307*c5aa59e8SDavid Daney #else 308*c5aa59e8SDavid Daney uint64_t en:1; 309*c5aa59e8SDavid Daney uint64_t speed:1; 310*c5aa59e8SDavid Daney uint64_t duplex:1; 311*c5aa59e8SDavid Daney uint64_t slottime:1; 312*c5aa59e8SDavid Daney uint64_t rx_en:1; 313*c5aa59e8SDavid Daney uint64_t tx_en:1; 314*c5aa59e8SDavid Daney uint64_t burst:1; 315*c5aa59e8SDavid Daney uint64_t reserved_7_7:1; 316*c5aa59e8SDavid Daney uint64_t speed_msb:1; 317*c5aa59e8SDavid Daney uint64_t reserved_9_11:3; 318*c5aa59e8SDavid Daney uint64_t rx_idle:1; 319*c5aa59e8SDavid Daney uint64_t tx_idle:1; 320*c5aa59e8SDavid Daney uint64_t reserved_14_63:50; 321*c5aa59e8SDavid Daney #endif 322a7187a2fSDavid Daney } s; 323aa32a955SDavid Daney struct cvmx_agl_gmx_prtx_cfg_cn52xx { 324*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 325aa32a955SDavid Daney uint64_t reserved_6_63:58; 326aa32a955SDavid Daney uint64_t tx_en:1; 327aa32a955SDavid Daney uint64_t rx_en:1; 328aa32a955SDavid Daney uint64_t slottime:1; 329aa32a955SDavid Daney uint64_t duplex:1; 330aa32a955SDavid Daney uint64_t speed:1; 331aa32a955SDavid Daney uint64_t en:1; 332*c5aa59e8SDavid Daney #else 333*c5aa59e8SDavid Daney uint64_t en:1; 334*c5aa59e8SDavid Daney uint64_t speed:1; 335*c5aa59e8SDavid Daney uint64_t duplex:1; 336*c5aa59e8SDavid Daney uint64_t slottime:1; 337*c5aa59e8SDavid Daney uint64_t rx_en:1; 338*c5aa59e8SDavid Daney uint64_t tx_en:1; 339*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 340*c5aa59e8SDavid Daney #endif 341aa32a955SDavid Daney } cn52xx; 342a7187a2fSDavid Daney }; 343a7187a2fSDavid Daney 344a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam0 { 345a7187a2fSDavid Daney uint64_t u64; 346a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam0_s { 347*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 348a7187a2fSDavid Daney uint64_t adr:64; 349*c5aa59e8SDavid Daney #else 350*c5aa59e8SDavid Daney uint64_t adr:64; 351*c5aa59e8SDavid Daney #endif 352a7187a2fSDavid Daney } s; 353a7187a2fSDavid Daney }; 354a7187a2fSDavid Daney 355a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam1 { 356a7187a2fSDavid Daney uint64_t u64; 357a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam1_s { 358*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 359a7187a2fSDavid Daney uint64_t adr:64; 360*c5aa59e8SDavid Daney #else 361*c5aa59e8SDavid Daney uint64_t adr:64; 362*c5aa59e8SDavid Daney #endif 363a7187a2fSDavid Daney } s; 364a7187a2fSDavid Daney }; 365a7187a2fSDavid Daney 366a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam2 { 367a7187a2fSDavid Daney uint64_t u64; 368a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam2_s { 369*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 370a7187a2fSDavid Daney uint64_t adr:64; 371*c5aa59e8SDavid Daney #else 372*c5aa59e8SDavid Daney uint64_t adr:64; 373*c5aa59e8SDavid Daney #endif 374a7187a2fSDavid Daney } s; 375a7187a2fSDavid Daney }; 376a7187a2fSDavid Daney 377a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam3 { 378a7187a2fSDavid Daney uint64_t u64; 379a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam3_s { 380*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 381a7187a2fSDavid Daney uint64_t adr:64; 382*c5aa59e8SDavid Daney #else 383*c5aa59e8SDavid Daney uint64_t adr:64; 384*c5aa59e8SDavid Daney #endif 385a7187a2fSDavid Daney } s; 386a7187a2fSDavid Daney }; 387a7187a2fSDavid Daney 388a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam4 { 389a7187a2fSDavid Daney uint64_t u64; 390a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam4_s { 391*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 392a7187a2fSDavid Daney uint64_t adr:64; 393*c5aa59e8SDavid Daney #else 394*c5aa59e8SDavid Daney uint64_t adr:64; 395*c5aa59e8SDavid Daney #endif 396a7187a2fSDavid Daney } s; 397a7187a2fSDavid Daney }; 398a7187a2fSDavid Daney 399a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam5 { 400a7187a2fSDavid Daney uint64_t u64; 401a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam5_s { 402*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 403a7187a2fSDavid Daney uint64_t adr:64; 404*c5aa59e8SDavid Daney #else 405*c5aa59e8SDavid Daney uint64_t adr:64; 406*c5aa59e8SDavid Daney #endif 407a7187a2fSDavid Daney } s; 408a7187a2fSDavid Daney }; 409a7187a2fSDavid Daney 410a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_cam_en { 411a7187a2fSDavid Daney uint64_t u64; 412a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_cam_en_s { 413*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 414a7187a2fSDavid Daney uint64_t reserved_8_63:56; 415a7187a2fSDavid Daney uint64_t en:8; 416*c5aa59e8SDavid Daney #else 417*c5aa59e8SDavid Daney uint64_t en:8; 418*c5aa59e8SDavid Daney uint64_t reserved_8_63:56; 419*c5aa59e8SDavid Daney #endif 420a7187a2fSDavid Daney } s; 421a7187a2fSDavid Daney }; 422a7187a2fSDavid Daney 423a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_adr_ctl { 424a7187a2fSDavid Daney uint64_t u64; 425a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_adr_ctl_s { 426*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 427a7187a2fSDavid Daney uint64_t reserved_4_63:60; 428a7187a2fSDavid Daney uint64_t cam_mode:1; 429a7187a2fSDavid Daney uint64_t mcst:2; 430a7187a2fSDavid Daney uint64_t bcst:1; 431*c5aa59e8SDavid Daney #else 432*c5aa59e8SDavid Daney uint64_t bcst:1; 433*c5aa59e8SDavid Daney uint64_t mcst:2; 434*c5aa59e8SDavid Daney uint64_t cam_mode:1; 435*c5aa59e8SDavid Daney uint64_t reserved_4_63:60; 436*c5aa59e8SDavid Daney #endif 437a7187a2fSDavid Daney } s; 438a7187a2fSDavid Daney }; 439a7187a2fSDavid Daney 440a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_decision { 441a7187a2fSDavid Daney uint64_t u64; 442a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_decision_s { 443*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 444a7187a2fSDavid Daney uint64_t reserved_5_63:59; 445a7187a2fSDavid Daney uint64_t cnt:5; 446*c5aa59e8SDavid Daney #else 447*c5aa59e8SDavid Daney uint64_t cnt:5; 448*c5aa59e8SDavid Daney uint64_t reserved_5_63:59; 449*c5aa59e8SDavid Daney #endif 450a7187a2fSDavid Daney } s; 451a7187a2fSDavid Daney }; 452a7187a2fSDavid Daney 453a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_frm_chk { 454a7187a2fSDavid Daney uint64_t u64; 455a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_frm_chk_s { 456*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 457aa32a955SDavid Daney uint64_t reserved_10_63:54; 458aa32a955SDavid Daney uint64_t niberr:1; 459aa32a955SDavid Daney uint64_t skperr:1; 460aa32a955SDavid Daney uint64_t rcverr:1; 461aa32a955SDavid Daney uint64_t lenerr:1; 462aa32a955SDavid Daney uint64_t alnerr:1; 463aa32a955SDavid Daney uint64_t fcserr:1; 464aa32a955SDavid Daney uint64_t jabber:1; 465aa32a955SDavid Daney uint64_t maxerr:1; 466aa32a955SDavid Daney uint64_t carext:1; 467aa32a955SDavid Daney uint64_t minerr:1; 468*c5aa59e8SDavid Daney #else 469*c5aa59e8SDavid Daney uint64_t minerr:1; 470*c5aa59e8SDavid Daney uint64_t carext:1; 471*c5aa59e8SDavid Daney uint64_t maxerr:1; 472*c5aa59e8SDavid Daney uint64_t jabber:1; 473*c5aa59e8SDavid Daney uint64_t fcserr:1; 474*c5aa59e8SDavid Daney uint64_t alnerr:1; 475*c5aa59e8SDavid Daney uint64_t lenerr:1; 476*c5aa59e8SDavid Daney uint64_t rcverr:1; 477*c5aa59e8SDavid Daney uint64_t skperr:1; 478*c5aa59e8SDavid Daney uint64_t niberr:1; 479*c5aa59e8SDavid Daney uint64_t reserved_10_63:54; 480*c5aa59e8SDavid Daney #endif 481aa32a955SDavid Daney } s; 482aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_frm_chk_cn52xx { 483*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 484a7187a2fSDavid Daney uint64_t reserved_9_63:55; 485a7187a2fSDavid Daney uint64_t skperr:1; 486a7187a2fSDavid Daney uint64_t rcverr:1; 487a7187a2fSDavid Daney uint64_t lenerr:1; 488a7187a2fSDavid Daney uint64_t alnerr:1; 489a7187a2fSDavid Daney uint64_t fcserr:1; 490a7187a2fSDavid Daney uint64_t jabber:1; 491a7187a2fSDavid Daney uint64_t maxerr:1; 492a7187a2fSDavid Daney uint64_t reserved_1_1:1; 493a7187a2fSDavid Daney uint64_t minerr:1; 494*c5aa59e8SDavid Daney #else 495*c5aa59e8SDavid Daney uint64_t minerr:1; 496*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 497*c5aa59e8SDavid Daney uint64_t maxerr:1; 498*c5aa59e8SDavid Daney uint64_t jabber:1; 499*c5aa59e8SDavid Daney uint64_t fcserr:1; 500*c5aa59e8SDavid Daney uint64_t alnerr:1; 501*c5aa59e8SDavid Daney uint64_t lenerr:1; 502*c5aa59e8SDavid Daney uint64_t rcverr:1; 503*c5aa59e8SDavid Daney uint64_t skperr:1; 504*c5aa59e8SDavid Daney uint64_t reserved_9_63:55; 505*c5aa59e8SDavid Daney #endif 506aa32a955SDavid Daney } cn52xx; 507a7187a2fSDavid Daney }; 508a7187a2fSDavid Daney 509a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_frm_ctl { 510a7187a2fSDavid Daney uint64_t u64; 511a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_frm_ctl_s { 512*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 513aa32a955SDavid Daney uint64_t reserved_13_63:51; 514aa32a955SDavid Daney uint64_t ptp_mode:1; 515aa32a955SDavid Daney uint64_t reserved_11_11:1; 516aa32a955SDavid Daney uint64_t null_dis:1; 517a7187a2fSDavid Daney uint64_t pre_align:1; 518a7187a2fSDavid Daney uint64_t pad_len:1; 519a7187a2fSDavid Daney uint64_t vlan_len:1; 520a7187a2fSDavid Daney uint64_t pre_free:1; 521a7187a2fSDavid Daney uint64_t ctl_smac:1; 522a7187a2fSDavid Daney uint64_t ctl_mcst:1; 523a7187a2fSDavid Daney uint64_t ctl_bck:1; 524a7187a2fSDavid Daney uint64_t ctl_drp:1; 525a7187a2fSDavid Daney uint64_t pre_strp:1; 526a7187a2fSDavid Daney uint64_t pre_chk:1; 527*c5aa59e8SDavid Daney #else 528*c5aa59e8SDavid Daney uint64_t pre_chk:1; 529*c5aa59e8SDavid Daney uint64_t pre_strp:1; 530*c5aa59e8SDavid Daney uint64_t ctl_drp:1; 531*c5aa59e8SDavid Daney uint64_t ctl_bck:1; 532*c5aa59e8SDavid Daney uint64_t ctl_mcst:1; 533*c5aa59e8SDavid Daney uint64_t ctl_smac:1; 534*c5aa59e8SDavid Daney uint64_t pre_free:1; 535*c5aa59e8SDavid Daney uint64_t vlan_len:1; 536*c5aa59e8SDavid Daney uint64_t pad_len:1; 537*c5aa59e8SDavid Daney uint64_t pre_align:1; 538*c5aa59e8SDavid Daney uint64_t null_dis:1; 539*c5aa59e8SDavid Daney uint64_t reserved_11_11:1; 540*c5aa59e8SDavid Daney uint64_t ptp_mode:1; 541*c5aa59e8SDavid Daney uint64_t reserved_13_63:51; 542*c5aa59e8SDavid Daney #endif 543a7187a2fSDavid Daney } s; 544aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_frm_ctl_cn52xx { 545*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 546aa32a955SDavid Daney uint64_t reserved_10_63:54; 547aa32a955SDavid Daney uint64_t pre_align:1; 548aa32a955SDavid Daney uint64_t pad_len:1; 549aa32a955SDavid Daney uint64_t vlan_len:1; 550aa32a955SDavid Daney uint64_t pre_free:1; 551aa32a955SDavid Daney uint64_t ctl_smac:1; 552aa32a955SDavid Daney uint64_t ctl_mcst:1; 553aa32a955SDavid Daney uint64_t ctl_bck:1; 554aa32a955SDavid Daney uint64_t ctl_drp:1; 555aa32a955SDavid Daney uint64_t pre_strp:1; 556aa32a955SDavid Daney uint64_t pre_chk:1; 557*c5aa59e8SDavid Daney #else 558*c5aa59e8SDavid Daney uint64_t pre_chk:1; 559*c5aa59e8SDavid Daney uint64_t pre_strp:1; 560*c5aa59e8SDavid Daney uint64_t ctl_drp:1; 561*c5aa59e8SDavid Daney uint64_t ctl_bck:1; 562*c5aa59e8SDavid Daney uint64_t ctl_mcst:1; 563*c5aa59e8SDavid Daney uint64_t ctl_smac:1; 564*c5aa59e8SDavid Daney uint64_t pre_free:1; 565*c5aa59e8SDavid Daney uint64_t vlan_len:1; 566*c5aa59e8SDavid Daney uint64_t pad_len:1; 567*c5aa59e8SDavid Daney uint64_t pre_align:1; 568*c5aa59e8SDavid Daney uint64_t reserved_10_63:54; 569*c5aa59e8SDavid Daney #endif 570aa32a955SDavid Daney } cn52xx; 571a7187a2fSDavid Daney }; 572a7187a2fSDavid Daney 573a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_frm_max { 574a7187a2fSDavid Daney uint64_t u64; 575a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_frm_max_s { 576*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 577a7187a2fSDavid Daney uint64_t reserved_16_63:48; 578a7187a2fSDavid Daney uint64_t len:16; 579*c5aa59e8SDavid Daney #else 580*c5aa59e8SDavid Daney uint64_t len:16; 581*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 582*c5aa59e8SDavid Daney #endif 583a7187a2fSDavid Daney } s; 584a7187a2fSDavid Daney }; 585a7187a2fSDavid Daney 586a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_frm_min { 587a7187a2fSDavid Daney uint64_t u64; 588a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_frm_min_s { 589*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 590a7187a2fSDavid Daney uint64_t reserved_16_63:48; 591a7187a2fSDavid Daney uint64_t len:16; 592*c5aa59e8SDavid Daney #else 593*c5aa59e8SDavid Daney uint64_t len:16; 594*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 595*c5aa59e8SDavid Daney #endif 596a7187a2fSDavid Daney } s; 597a7187a2fSDavid Daney }; 598a7187a2fSDavid Daney 599a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_ifg { 600a7187a2fSDavid Daney uint64_t u64; 601a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_ifg_s { 602*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 603a7187a2fSDavid Daney uint64_t reserved_4_63:60; 604a7187a2fSDavid Daney uint64_t ifg:4; 605*c5aa59e8SDavid Daney #else 606*c5aa59e8SDavid Daney uint64_t ifg:4; 607*c5aa59e8SDavid Daney uint64_t reserved_4_63:60; 608*c5aa59e8SDavid Daney #endif 609a7187a2fSDavid Daney } s; 610a7187a2fSDavid Daney }; 611a7187a2fSDavid Daney 612a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_int_en { 613a7187a2fSDavid Daney uint64_t u64; 614a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_int_en_s { 615*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 616a7187a2fSDavid Daney uint64_t reserved_20_63:44; 617a7187a2fSDavid Daney uint64_t pause_drp:1; 618aa32a955SDavid Daney uint64_t phy_dupx:1; 619aa32a955SDavid Daney uint64_t phy_spd:1; 620aa32a955SDavid Daney uint64_t phy_link:1; 621a7187a2fSDavid Daney uint64_t ifgerr:1; 622a7187a2fSDavid Daney uint64_t coldet:1; 623a7187a2fSDavid Daney uint64_t falerr:1; 624a7187a2fSDavid Daney uint64_t rsverr:1; 625a7187a2fSDavid Daney uint64_t pcterr:1; 626a7187a2fSDavid Daney uint64_t ovrerr:1; 627aa32a955SDavid Daney uint64_t niberr:1; 628a7187a2fSDavid Daney uint64_t skperr:1; 629a7187a2fSDavid Daney uint64_t rcverr:1; 630a7187a2fSDavid Daney uint64_t lenerr:1; 631a7187a2fSDavid Daney uint64_t alnerr:1; 632a7187a2fSDavid Daney uint64_t fcserr:1; 633a7187a2fSDavid Daney uint64_t jabber:1; 634a7187a2fSDavid Daney uint64_t maxerr:1; 635aa32a955SDavid Daney uint64_t carext:1; 636a7187a2fSDavid Daney uint64_t minerr:1; 637*c5aa59e8SDavid Daney #else 638*c5aa59e8SDavid Daney uint64_t minerr:1; 639*c5aa59e8SDavid Daney uint64_t carext:1; 640*c5aa59e8SDavid Daney uint64_t maxerr:1; 641*c5aa59e8SDavid Daney uint64_t jabber:1; 642*c5aa59e8SDavid Daney uint64_t fcserr:1; 643*c5aa59e8SDavid Daney uint64_t alnerr:1; 644*c5aa59e8SDavid Daney uint64_t lenerr:1; 645*c5aa59e8SDavid Daney uint64_t rcverr:1; 646*c5aa59e8SDavid Daney uint64_t skperr:1; 647*c5aa59e8SDavid Daney uint64_t niberr:1; 648*c5aa59e8SDavid Daney uint64_t ovrerr:1; 649*c5aa59e8SDavid Daney uint64_t pcterr:1; 650*c5aa59e8SDavid Daney uint64_t rsverr:1; 651*c5aa59e8SDavid Daney uint64_t falerr:1; 652*c5aa59e8SDavid Daney uint64_t coldet:1; 653*c5aa59e8SDavid Daney uint64_t ifgerr:1; 654*c5aa59e8SDavid Daney uint64_t phy_link:1; 655*c5aa59e8SDavid Daney uint64_t phy_spd:1; 656*c5aa59e8SDavid Daney uint64_t phy_dupx:1; 657*c5aa59e8SDavid Daney uint64_t pause_drp:1; 658*c5aa59e8SDavid Daney uint64_t reserved_20_63:44; 659*c5aa59e8SDavid Daney #endif 660a7187a2fSDavid Daney } s; 661aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_int_en_cn52xx { 662*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 663a7187a2fSDavid Daney uint64_t reserved_20_63:44; 664a7187a2fSDavid Daney uint64_t pause_drp:1; 665a7187a2fSDavid Daney uint64_t reserved_16_18:3; 666a7187a2fSDavid Daney uint64_t ifgerr:1; 667a7187a2fSDavid Daney uint64_t coldet:1; 668a7187a2fSDavid Daney uint64_t falerr:1; 669a7187a2fSDavid Daney uint64_t rsverr:1; 670a7187a2fSDavid Daney uint64_t pcterr:1; 671a7187a2fSDavid Daney uint64_t ovrerr:1; 672a7187a2fSDavid Daney uint64_t reserved_9_9:1; 673a7187a2fSDavid Daney uint64_t skperr:1; 674a7187a2fSDavid Daney uint64_t rcverr:1; 675a7187a2fSDavid Daney uint64_t lenerr:1; 676a7187a2fSDavid Daney uint64_t alnerr:1; 677a7187a2fSDavid Daney uint64_t fcserr:1; 678a7187a2fSDavid Daney uint64_t jabber:1; 679a7187a2fSDavid Daney uint64_t maxerr:1; 680a7187a2fSDavid Daney uint64_t reserved_1_1:1; 681a7187a2fSDavid Daney uint64_t minerr:1; 682*c5aa59e8SDavid Daney #else 683*c5aa59e8SDavid Daney uint64_t minerr:1; 684*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 685*c5aa59e8SDavid Daney uint64_t maxerr:1; 686*c5aa59e8SDavid Daney uint64_t jabber:1; 687*c5aa59e8SDavid Daney uint64_t fcserr:1; 688*c5aa59e8SDavid Daney uint64_t alnerr:1; 689*c5aa59e8SDavid Daney uint64_t lenerr:1; 690*c5aa59e8SDavid Daney uint64_t rcverr:1; 691*c5aa59e8SDavid Daney uint64_t skperr:1; 692*c5aa59e8SDavid Daney uint64_t reserved_9_9:1; 693*c5aa59e8SDavid Daney uint64_t ovrerr:1; 694*c5aa59e8SDavid Daney uint64_t pcterr:1; 695*c5aa59e8SDavid Daney uint64_t rsverr:1; 696*c5aa59e8SDavid Daney uint64_t falerr:1; 697*c5aa59e8SDavid Daney uint64_t coldet:1; 698*c5aa59e8SDavid Daney uint64_t ifgerr:1; 699*c5aa59e8SDavid Daney uint64_t reserved_16_18:3; 700*c5aa59e8SDavid Daney uint64_t pause_drp:1; 701*c5aa59e8SDavid Daney uint64_t reserved_20_63:44; 702*c5aa59e8SDavid Daney #endif 703aa32a955SDavid Daney } cn52xx; 704aa32a955SDavid Daney }; 705aa32a955SDavid Daney 706aa32a955SDavid Daney union cvmx_agl_gmx_rxx_int_reg { 707aa32a955SDavid Daney uint64_t u64; 708aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_int_reg_s { 709*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 710aa32a955SDavid Daney uint64_t reserved_20_63:44; 711aa32a955SDavid Daney uint64_t pause_drp:1; 712aa32a955SDavid Daney uint64_t phy_dupx:1; 713aa32a955SDavid Daney uint64_t phy_spd:1; 714aa32a955SDavid Daney uint64_t phy_link:1; 715aa32a955SDavid Daney uint64_t ifgerr:1; 716aa32a955SDavid Daney uint64_t coldet:1; 717aa32a955SDavid Daney uint64_t falerr:1; 718aa32a955SDavid Daney uint64_t rsverr:1; 719aa32a955SDavid Daney uint64_t pcterr:1; 720aa32a955SDavid Daney uint64_t ovrerr:1; 721aa32a955SDavid Daney uint64_t niberr:1; 722aa32a955SDavid Daney uint64_t skperr:1; 723aa32a955SDavid Daney uint64_t rcverr:1; 724aa32a955SDavid Daney uint64_t lenerr:1; 725aa32a955SDavid Daney uint64_t alnerr:1; 726aa32a955SDavid Daney uint64_t fcserr:1; 727aa32a955SDavid Daney uint64_t jabber:1; 728aa32a955SDavid Daney uint64_t maxerr:1; 729aa32a955SDavid Daney uint64_t carext:1; 730aa32a955SDavid Daney uint64_t minerr:1; 731*c5aa59e8SDavid Daney #else 732*c5aa59e8SDavid Daney uint64_t minerr:1; 733*c5aa59e8SDavid Daney uint64_t carext:1; 734*c5aa59e8SDavid Daney uint64_t maxerr:1; 735*c5aa59e8SDavid Daney uint64_t jabber:1; 736*c5aa59e8SDavid Daney uint64_t fcserr:1; 737*c5aa59e8SDavid Daney uint64_t alnerr:1; 738*c5aa59e8SDavid Daney uint64_t lenerr:1; 739*c5aa59e8SDavid Daney uint64_t rcverr:1; 740*c5aa59e8SDavid Daney uint64_t skperr:1; 741*c5aa59e8SDavid Daney uint64_t niberr:1; 742*c5aa59e8SDavid Daney uint64_t ovrerr:1; 743*c5aa59e8SDavid Daney uint64_t pcterr:1; 744*c5aa59e8SDavid Daney uint64_t rsverr:1; 745*c5aa59e8SDavid Daney uint64_t falerr:1; 746*c5aa59e8SDavid Daney uint64_t coldet:1; 747*c5aa59e8SDavid Daney uint64_t ifgerr:1; 748*c5aa59e8SDavid Daney uint64_t phy_link:1; 749*c5aa59e8SDavid Daney uint64_t phy_spd:1; 750*c5aa59e8SDavid Daney uint64_t phy_dupx:1; 751*c5aa59e8SDavid Daney uint64_t pause_drp:1; 752*c5aa59e8SDavid Daney uint64_t reserved_20_63:44; 753*c5aa59e8SDavid Daney #endif 754a7187a2fSDavid Daney } s; 755aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_int_reg_cn52xx { 756*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 757aa32a955SDavid Daney uint64_t reserved_20_63:44; 758aa32a955SDavid Daney uint64_t pause_drp:1; 759aa32a955SDavid Daney uint64_t reserved_16_18:3; 760aa32a955SDavid Daney uint64_t ifgerr:1; 761aa32a955SDavid Daney uint64_t coldet:1; 762aa32a955SDavid Daney uint64_t falerr:1; 763aa32a955SDavid Daney uint64_t rsverr:1; 764aa32a955SDavid Daney uint64_t pcterr:1; 765aa32a955SDavid Daney uint64_t ovrerr:1; 766aa32a955SDavid Daney uint64_t reserved_9_9:1; 767aa32a955SDavid Daney uint64_t skperr:1; 768aa32a955SDavid Daney uint64_t rcverr:1; 769aa32a955SDavid Daney uint64_t lenerr:1; 770aa32a955SDavid Daney uint64_t alnerr:1; 771aa32a955SDavid Daney uint64_t fcserr:1; 772aa32a955SDavid Daney uint64_t jabber:1; 773aa32a955SDavid Daney uint64_t maxerr:1; 774aa32a955SDavid Daney uint64_t reserved_1_1:1; 775aa32a955SDavid Daney uint64_t minerr:1; 776*c5aa59e8SDavid Daney #else 777*c5aa59e8SDavid Daney uint64_t minerr:1; 778*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 779*c5aa59e8SDavid Daney uint64_t maxerr:1; 780*c5aa59e8SDavid Daney uint64_t jabber:1; 781*c5aa59e8SDavid Daney uint64_t fcserr:1; 782*c5aa59e8SDavid Daney uint64_t alnerr:1; 783*c5aa59e8SDavid Daney uint64_t lenerr:1; 784*c5aa59e8SDavid Daney uint64_t rcverr:1; 785*c5aa59e8SDavid Daney uint64_t skperr:1; 786*c5aa59e8SDavid Daney uint64_t reserved_9_9:1; 787*c5aa59e8SDavid Daney uint64_t ovrerr:1; 788*c5aa59e8SDavid Daney uint64_t pcterr:1; 789*c5aa59e8SDavid Daney uint64_t rsverr:1; 790*c5aa59e8SDavid Daney uint64_t falerr:1; 791*c5aa59e8SDavid Daney uint64_t coldet:1; 792*c5aa59e8SDavid Daney uint64_t ifgerr:1; 793*c5aa59e8SDavid Daney uint64_t reserved_16_18:3; 794*c5aa59e8SDavid Daney uint64_t pause_drp:1; 795*c5aa59e8SDavid Daney uint64_t reserved_20_63:44; 796*c5aa59e8SDavid Daney #endif 797aa32a955SDavid Daney } cn52xx; 798a7187a2fSDavid Daney }; 799a7187a2fSDavid Daney 800a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_jabber { 801a7187a2fSDavid Daney uint64_t u64; 802a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_jabber_s { 803*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 804a7187a2fSDavid Daney uint64_t reserved_16_63:48; 805a7187a2fSDavid Daney uint64_t cnt:16; 806*c5aa59e8SDavid Daney #else 807*c5aa59e8SDavid Daney uint64_t cnt:16; 808*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 809*c5aa59e8SDavid Daney #endif 810a7187a2fSDavid Daney } s; 811a7187a2fSDavid Daney }; 812a7187a2fSDavid Daney 813a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_pause_drop_time { 814a7187a2fSDavid Daney uint64_t u64; 815a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_pause_drop_time_s { 816*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 817a7187a2fSDavid Daney uint64_t reserved_16_63:48; 818a7187a2fSDavid Daney uint64_t status:16; 819*c5aa59e8SDavid Daney #else 820*c5aa59e8SDavid Daney uint64_t status:16; 821*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 822*c5aa59e8SDavid Daney #endif 823a7187a2fSDavid Daney } s; 824aa32a955SDavid Daney }; 825aa32a955SDavid Daney 826aa32a955SDavid Daney union cvmx_agl_gmx_rxx_rx_inbnd { 827aa32a955SDavid Daney uint64_t u64; 828aa32a955SDavid Daney struct cvmx_agl_gmx_rxx_rx_inbnd_s { 829*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 830aa32a955SDavid Daney uint64_t reserved_4_63:60; 831aa32a955SDavid Daney uint64_t duplex:1; 832aa32a955SDavid Daney uint64_t speed:2; 833aa32a955SDavid Daney uint64_t status:1; 834*c5aa59e8SDavid Daney #else 835*c5aa59e8SDavid Daney uint64_t status:1; 836*c5aa59e8SDavid Daney uint64_t speed:2; 837*c5aa59e8SDavid Daney uint64_t duplex:1; 838*c5aa59e8SDavid Daney uint64_t reserved_4_63:60; 839*c5aa59e8SDavid Daney #endif 840aa32a955SDavid Daney } s; 841a7187a2fSDavid Daney }; 842a7187a2fSDavid Daney 843a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_ctl { 844a7187a2fSDavid Daney uint64_t u64; 845a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_ctl_s { 846*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 847a7187a2fSDavid Daney uint64_t reserved_1_63:63; 848a7187a2fSDavid Daney uint64_t rd_clr:1; 849*c5aa59e8SDavid Daney #else 850*c5aa59e8SDavid Daney uint64_t rd_clr:1; 851*c5aa59e8SDavid Daney uint64_t reserved_1_63:63; 852*c5aa59e8SDavid Daney #endif 853a7187a2fSDavid Daney } s; 854a7187a2fSDavid Daney }; 855a7187a2fSDavid Daney 856a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_octs { 857a7187a2fSDavid Daney uint64_t u64; 858a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_octs_s { 859*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 860a7187a2fSDavid Daney uint64_t reserved_48_63:16; 861a7187a2fSDavid Daney uint64_t cnt:48; 862*c5aa59e8SDavid Daney #else 863*c5aa59e8SDavid Daney uint64_t cnt:48; 864*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 865*c5aa59e8SDavid Daney #endif 866a7187a2fSDavid Daney } s; 867a7187a2fSDavid Daney }; 868a7187a2fSDavid Daney 869a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_octs_ctl { 870a7187a2fSDavid Daney uint64_t u64; 871a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_octs_ctl_s { 872*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 873a7187a2fSDavid Daney uint64_t reserved_48_63:16; 874a7187a2fSDavid Daney uint64_t cnt:48; 875*c5aa59e8SDavid Daney #else 876*c5aa59e8SDavid Daney uint64_t cnt:48; 877*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 878*c5aa59e8SDavid Daney #endif 879a7187a2fSDavid Daney } s; 880a7187a2fSDavid Daney }; 881a7187a2fSDavid Daney 882a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_octs_dmac { 883a7187a2fSDavid Daney uint64_t u64; 884a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_octs_dmac_s { 885*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 886a7187a2fSDavid Daney uint64_t reserved_48_63:16; 887a7187a2fSDavid Daney uint64_t cnt:48; 888*c5aa59e8SDavid Daney #else 889*c5aa59e8SDavid Daney uint64_t cnt:48; 890*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 891*c5aa59e8SDavid Daney #endif 892a7187a2fSDavid Daney } s; 893a7187a2fSDavid Daney }; 894a7187a2fSDavid Daney 895a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_octs_drp { 896a7187a2fSDavid Daney uint64_t u64; 897a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_octs_drp_s { 898*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 899a7187a2fSDavid Daney uint64_t reserved_48_63:16; 900a7187a2fSDavid Daney uint64_t cnt:48; 901*c5aa59e8SDavid Daney #else 902*c5aa59e8SDavid Daney uint64_t cnt:48; 903*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 904*c5aa59e8SDavid Daney #endif 905a7187a2fSDavid Daney } s; 906a7187a2fSDavid Daney }; 907a7187a2fSDavid Daney 908a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_pkts { 909a7187a2fSDavid Daney uint64_t u64; 910a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_pkts_s { 911*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 912a7187a2fSDavid Daney uint64_t reserved_32_63:32; 913a7187a2fSDavid Daney uint64_t cnt:32; 914*c5aa59e8SDavid Daney #else 915*c5aa59e8SDavid Daney uint64_t cnt:32; 916*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 917*c5aa59e8SDavid Daney #endif 918a7187a2fSDavid Daney } s; 919a7187a2fSDavid Daney }; 920a7187a2fSDavid Daney 921a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_pkts_bad { 922a7187a2fSDavid Daney uint64_t u64; 923a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_pkts_bad_s { 924*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 925a7187a2fSDavid Daney uint64_t reserved_32_63:32; 926a7187a2fSDavid Daney uint64_t cnt:32; 927*c5aa59e8SDavid Daney #else 928*c5aa59e8SDavid Daney uint64_t cnt:32; 929*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 930*c5aa59e8SDavid Daney #endif 931a7187a2fSDavid Daney } s; 932a7187a2fSDavid Daney }; 933a7187a2fSDavid Daney 934a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_pkts_ctl { 935a7187a2fSDavid Daney uint64_t u64; 936a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_pkts_ctl_s { 937*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 938a7187a2fSDavid Daney uint64_t reserved_32_63:32; 939a7187a2fSDavid Daney uint64_t cnt:32; 940*c5aa59e8SDavid Daney #else 941*c5aa59e8SDavid Daney uint64_t cnt:32; 942*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 943*c5aa59e8SDavid Daney #endif 944a7187a2fSDavid Daney } s; 945a7187a2fSDavid Daney }; 946a7187a2fSDavid Daney 947a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_pkts_dmac { 948a7187a2fSDavid Daney uint64_t u64; 949a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_pkts_dmac_s { 950*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 951a7187a2fSDavid Daney uint64_t reserved_32_63:32; 952a7187a2fSDavid Daney uint64_t cnt:32; 953*c5aa59e8SDavid Daney #else 954*c5aa59e8SDavid Daney uint64_t cnt:32; 955*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 956*c5aa59e8SDavid Daney #endif 957a7187a2fSDavid Daney } s; 958a7187a2fSDavid Daney }; 959a7187a2fSDavid Daney 960a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_stats_pkts_drp { 961a7187a2fSDavid Daney uint64_t u64; 962a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_stats_pkts_drp_s { 963*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 964a7187a2fSDavid Daney uint64_t reserved_32_63:32; 965a7187a2fSDavid Daney uint64_t cnt:32; 966*c5aa59e8SDavid Daney #else 967*c5aa59e8SDavid Daney uint64_t cnt:32; 968*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 969*c5aa59e8SDavid Daney #endif 970a7187a2fSDavid Daney } s; 971a7187a2fSDavid Daney }; 972a7187a2fSDavid Daney 973a7187a2fSDavid Daney union cvmx_agl_gmx_rxx_udd_skp { 974a7187a2fSDavid Daney uint64_t u64; 975a7187a2fSDavid Daney struct cvmx_agl_gmx_rxx_udd_skp_s { 976*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 977a7187a2fSDavid Daney uint64_t reserved_9_63:55; 978a7187a2fSDavid Daney uint64_t fcssel:1; 979a7187a2fSDavid Daney uint64_t reserved_7_7:1; 980a7187a2fSDavid Daney uint64_t len:7; 981*c5aa59e8SDavid Daney #else 982*c5aa59e8SDavid Daney uint64_t len:7; 983*c5aa59e8SDavid Daney uint64_t reserved_7_7:1; 984*c5aa59e8SDavid Daney uint64_t fcssel:1; 985*c5aa59e8SDavid Daney uint64_t reserved_9_63:55; 986*c5aa59e8SDavid Daney #endif 987a7187a2fSDavid Daney } s; 988a7187a2fSDavid Daney }; 989a7187a2fSDavid Daney 990a7187a2fSDavid Daney union cvmx_agl_gmx_rx_bp_dropx { 991a7187a2fSDavid Daney uint64_t u64; 992a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_bp_dropx_s { 993*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 994a7187a2fSDavid Daney uint64_t reserved_6_63:58; 995a7187a2fSDavid Daney uint64_t mark:6; 996*c5aa59e8SDavid Daney #else 997*c5aa59e8SDavid Daney uint64_t mark:6; 998*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 999*c5aa59e8SDavid Daney #endif 1000a7187a2fSDavid Daney } s; 1001a7187a2fSDavid Daney }; 1002a7187a2fSDavid Daney 1003a7187a2fSDavid Daney union cvmx_agl_gmx_rx_bp_offx { 1004a7187a2fSDavid Daney uint64_t u64; 1005a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_bp_offx_s { 1006*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1007a7187a2fSDavid Daney uint64_t reserved_6_63:58; 1008a7187a2fSDavid Daney uint64_t mark:6; 1009*c5aa59e8SDavid Daney #else 1010*c5aa59e8SDavid Daney uint64_t mark:6; 1011*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 1012*c5aa59e8SDavid Daney #endif 1013a7187a2fSDavid Daney } s; 1014a7187a2fSDavid Daney }; 1015a7187a2fSDavid Daney 1016a7187a2fSDavid Daney union cvmx_agl_gmx_rx_bp_onx { 1017a7187a2fSDavid Daney uint64_t u64; 1018a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_bp_onx_s { 1019*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1020a7187a2fSDavid Daney uint64_t reserved_9_63:55; 1021a7187a2fSDavid Daney uint64_t mark:9; 1022*c5aa59e8SDavid Daney #else 1023*c5aa59e8SDavid Daney uint64_t mark:9; 1024*c5aa59e8SDavid Daney uint64_t reserved_9_63:55; 1025*c5aa59e8SDavid Daney #endif 1026a7187a2fSDavid Daney } s; 1027a7187a2fSDavid Daney }; 1028a7187a2fSDavid Daney 1029a7187a2fSDavid Daney union cvmx_agl_gmx_rx_prt_info { 1030a7187a2fSDavid Daney uint64_t u64; 1031a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_prt_info_s { 1032*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1033a7187a2fSDavid Daney uint64_t reserved_18_63:46; 1034a7187a2fSDavid Daney uint64_t drop:2; 1035a7187a2fSDavid Daney uint64_t reserved_2_15:14; 1036a7187a2fSDavid Daney uint64_t commit:2; 1037*c5aa59e8SDavid Daney #else 1038*c5aa59e8SDavid Daney uint64_t commit:2; 1039*c5aa59e8SDavid Daney uint64_t reserved_2_15:14; 1040*c5aa59e8SDavid Daney uint64_t drop:2; 1041*c5aa59e8SDavid Daney uint64_t reserved_18_63:46; 1042*c5aa59e8SDavid Daney #endif 1043a7187a2fSDavid Daney } s; 1044a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_prt_info_cn56xx { 1045*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1046a7187a2fSDavid Daney uint64_t reserved_17_63:47; 1047a7187a2fSDavid Daney uint64_t drop:1; 1048a7187a2fSDavid Daney uint64_t reserved_1_15:15; 1049a7187a2fSDavid Daney uint64_t commit:1; 1050*c5aa59e8SDavid Daney #else 1051*c5aa59e8SDavid Daney uint64_t commit:1; 1052*c5aa59e8SDavid Daney uint64_t reserved_1_15:15; 1053*c5aa59e8SDavid Daney uint64_t drop:1; 1054*c5aa59e8SDavid Daney uint64_t reserved_17_63:47; 1055*c5aa59e8SDavid Daney #endif 1056a7187a2fSDavid Daney } cn56xx; 1057a7187a2fSDavid Daney }; 1058a7187a2fSDavid Daney 1059a7187a2fSDavid Daney union cvmx_agl_gmx_rx_tx_status { 1060a7187a2fSDavid Daney uint64_t u64; 1061a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_tx_status_s { 1062*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1063a7187a2fSDavid Daney uint64_t reserved_6_63:58; 1064a7187a2fSDavid Daney uint64_t tx:2; 1065a7187a2fSDavid Daney uint64_t reserved_2_3:2; 1066a7187a2fSDavid Daney uint64_t rx:2; 1067*c5aa59e8SDavid Daney #else 1068*c5aa59e8SDavid Daney uint64_t rx:2; 1069*c5aa59e8SDavid Daney uint64_t reserved_2_3:2; 1070*c5aa59e8SDavid Daney uint64_t tx:2; 1071*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 1072*c5aa59e8SDavid Daney #endif 1073a7187a2fSDavid Daney } s; 1074a7187a2fSDavid Daney struct cvmx_agl_gmx_rx_tx_status_cn56xx { 1075*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1076a7187a2fSDavid Daney uint64_t reserved_5_63:59; 1077a7187a2fSDavid Daney uint64_t tx:1; 1078a7187a2fSDavid Daney uint64_t reserved_1_3:3; 1079a7187a2fSDavid Daney uint64_t rx:1; 1080*c5aa59e8SDavid Daney #else 1081*c5aa59e8SDavid Daney uint64_t rx:1; 1082*c5aa59e8SDavid Daney uint64_t reserved_1_3:3; 1083*c5aa59e8SDavid Daney uint64_t tx:1; 1084*c5aa59e8SDavid Daney uint64_t reserved_5_63:59; 1085*c5aa59e8SDavid Daney #endif 1086a7187a2fSDavid Daney } cn56xx; 1087a7187a2fSDavid Daney }; 1088a7187a2fSDavid Daney 1089a7187a2fSDavid Daney union cvmx_agl_gmx_smacx { 1090a7187a2fSDavid Daney uint64_t u64; 1091a7187a2fSDavid Daney struct cvmx_agl_gmx_smacx_s { 1092*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1093a7187a2fSDavid Daney uint64_t reserved_48_63:16; 1094a7187a2fSDavid Daney uint64_t smac:48; 1095*c5aa59e8SDavid Daney #else 1096*c5aa59e8SDavid Daney uint64_t smac:48; 1097*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 1098*c5aa59e8SDavid Daney #endif 1099a7187a2fSDavid Daney } s; 1100a7187a2fSDavid Daney }; 1101a7187a2fSDavid Daney 1102a7187a2fSDavid Daney union cvmx_agl_gmx_stat_bp { 1103a7187a2fSDavid Daney uint64_t u64; 1104a7187a2fSDavid Daney struct cvmx_agl_gmx_stat_bp_s { 1105*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1106a7187a2fSDavid Daney uint64_t reserved_17_63:47; 1107a7187a2fSDavid Daney uint64_t bp:1; 1108a7187a2fSDavid Daney uint64_t cnt:16; 1109*c5aa59e8SDavid Daney #else 1110*c5aa59e8SDavid Daney uint64_t cnt:16; 1111*c5aa59e8SDavid Daney uint64_t bp:1; 1112*c5aa59e8SDavid Daney uint64_t reserved_17_63:47; 1113*c5aa59e8SDavid Daney #endif 1114a7187a2fSDavid Daney } s; 1115a7187a2fSDavid Daney }; 1116a7187a2fSDavid Daney 1117a7187a2fSDavid Daney union cvmx_agl_gmx_txx_append { 1118a7187a2fSDavid Daney uint64_t u64; 1119a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_append_s { 1120*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1121a7187a2fSDavid Daney uint64_t reserved_4_63:60; 1122a7187a2fSDavid Daney uint64_t force_fcs:1; 1123a7187a2fSDavid Daney uint64_t fcs:1; 1124a7187a2fSDavid Daney uint64_t pad:1; 1125a7187a2fSDavid Daney uint64_t preamble:1; 1126*c5aa59e8SDavid Daney #else 1127*c5aa59e8SDavid Daney uint64_t preamble:1; 1128*c5aa59e8SDavid Daney uint64_t pad:1; 1129*c5aa59e8SDavid Daney uint64_t fcs:1; 1130*c5aa59e8SDavid Daney uint64_t force_fcs:1; 1131*c5aa59e8SDavid Daney uint64_t reserved_4_63:60; 1132*c5aa59e8SDavid Daney #endif 1133a7187a2fSDavid Daney } s; 1134aa32a955SDavid Daney }; 1135aa32a955SDavid Daney 1136aa32a955SDavid Daney union cvmx_agl_gmx_txx_clk { 1137aa32a955SDavid Daney uint64_t u64; 1138aa32a955SDavid Daney struct cvmx_agl_gmx_txx_clk_s { 1139*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1140aa32a955SDavid Daney uint64_t reserved_6_63:58; 1141aa32a955SDavid Daney uint64_t clk_cnt:6; 1142*c5aa59e8SDavid Daney #else 1143*c5aa59e8SDavid Daney uint64_t clk_cnt:6; 1144*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 1145*c5aa59e8SDavid Daney #endif 1146aa32a955SDavid Daney } s; 1147a7187a2fSDavid Daney }; 1148a7187a2fSDavid Daney 1149a7187a2fSDavid Daney union cvmx_agl_gmx_txx_ctl { 1150a7187a2fSDavid Daney uint64_t u64; 1151a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_ctl_s { 1152*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1153a7187a2fSDavid Daney uint64_t reserved_2_63:62; 1154a7187a2fSDavid Daney uint64_t xsdef_en:1; 1155a7187a2fSDavid Daney uint64_t xscol_en:1; 1156*c5aa59e8SDavid Daney #else 1157*c5aa59e8SDavid Daney uint64_t xscol_en:1; 1158*c5aa59e8SDavid Daney uint64_t xsdef_en:1; 1159*c5aa59e8SDavid Daney uint64_t reserved_2_63:62; 1160*c5aa59e8SDavid Daney #endif 1161a7187a2fSDavid Daney } s; 1162a7187a2fSDavid Daney }; 1163a7187a2fSDavid Daney 1164a7187a2fSDavid Daney union cvmx_agl_gmx_txx_min_pkt { 1165a7187a2fSDavid Daney uint64_t u64; 1166a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_min_pkt_s { 1167*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1168a7187a2fSDavid Daney uint64_t reserved_8_63:56; 1169a7187a2fSDavid Daney uint64_t min_size:8; 1170*c5aa59e8SDavid Daney #else 1171*c5aa59e8SDavid Daney uint64_t min_size:8; 1172*c5aa59e8SDavid Daney uint64_t reserved_8_63:56; 1173*c5aa59e8SDavid Daney #endif 1174a7187a2fSDavid Daney } s; 1175a7187a2fSDavid Daney }; 1176a7187a2fSDavid Daney 1177a7187a2fSDavid Daney union cvmx_agl_gmx_txx_pause_pkt_interval { 1178a7187a2fSDavid Daney uint64_t u64; 1179a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_pause_pkt_interval_s { 1180*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1181a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1182a7187a2fSDavid Daney uint64_t interval:16; 1183*c5aa59e8SDavid Daney #else 1184*c5aa59e8SDavid Daney uint64_t interval:16; 1185*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1186*c5aa59e8SDavid Daney #endif 1187a7187a2fSDavid Daney } s; 1188a7187a2fSDavid Daney }; 1189a7187a2fSDavid Daney 1190a7187a2fSDavid Daney union cvmx_agl_gmx_txx_pause_pkt_time { 1191a7187a2fSDavid Daney uint64_t u64; 1192a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_pause_pkt_time_s { 1193*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1194a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1195a7187a2fSDavid Daney uint64_t time:16; 1196*c5aa59e8SDavid Daney #else 1197*c5aa59e8SDavid Daney uint64_t time:16; 1198*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1199*c5aa59e8SDavid Daney #endif 1200a7187a2fSDavid Daney } s; 1201a7187a2fSDavid Daney }; 1202a7187a2fSDavid Daney 1203a7187a2fSDavid Daney union cvmx_agl_gmx_txx_pause_togo { 1204a7187a2fSDavid Daney uint64_t u64; 1205a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_pause_togo_s { 1206*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1207a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1208a7187a2fSDavid Daney uint64_t time:16; 1209*c5aa59e8SDavid Daney #else 1210*c5aa59e8SDavid Daney uint64_t time:16; 1211*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1212*c5aa59e8SDavid Daney #endif 1213a7187a2fSDavid Daney } s; 1214a7187a2fSDavid Daney }; 1215a7187a2fSDavid Daney 1216a7187a2fSDavid Daney union cvmx_agl_gmx_txx_pause_zero { 1217a7187a2fSDavid Daney uint64_t u64; 1218a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_pause_zero_s { 1219*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1220a7187a2fSDavid Daney uint64_t reserved_1_63:63; 1221a7187a2fSDavid Daney uint64_t send:1; 1222*c5aa59e8SDavid Daney #else 1223*c5aa59e8SDavid Daney uint64_t send:1; 1224*c5aa59e8SDavid Daney uint64_t reserved_1_63:63; 1225*c5aa59e8SDavid Daney #endif 1226a7187a2fSDavid Daney } s; 1227a7187a2fSDavid Daney }; 1228a7187a2fSDavid Daney 1229a7187a2fSDavid Daney union cvmx_agl_gmx_txx_soft_pause { 1230a7187a2fSDavid Daney uint64_t u64; 1231a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_soft_pause_s { 1232*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1233a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1234a7187a2fSDavid Daney uint64_t time:16; 1235*c5aa59e8SDavid Daney #else 1236*c5aa59e8SDavid Daney uint64_t time:16; 1237*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1238*c5aa59e8SDavid Daney #endif 1239a7187a2fSDavid Daney } s; 1240a7187a2fSDavid Daney }; 1241a7187a2fSDavid Daney 1242a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat0 { 1243a7187a2fSDavid Daney uint64_t u64; 1244a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat0_s { 1245*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1246a7187a2fSDavid Daney uint64_t xsdef:32; 1247a7187a2fSDavid Daney uint64_t xscol:32; 1248*c5aa59e8SDavid Daney #else 1249*c5aa59e8SDavid Daney uint64_t xscol:32; 1250*c5aa59e8SDavid Daney uint64_t xsdef:32; 1251*c5aa59e8SDavid Daney #endif 1252a7187a2fSDavid Daney } s; 1253a7187a2fSDavid Daney }; 1254a7187a2fSDavid Daney 1255a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat1 { 1256a7187a2fSDavid Daney uint64_t u64; 1257a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat1_s { 1258*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1259a7187a2fSDavid Daney uint64_t scol:32; 1260a7187a2fSDavid Daney uint64_t mcol:32; 1261*c5aa59e8SDavid Daney #else 1262*c5aa59e8SDavid Daney uint64_t mcol:32; 1263*c5aa59e8SDavid Daney uint64_t scol:32; 1264*c5aa59e8SDavid Daney #endif 1265a7187a2fSDavid Daney } s; 1266a7187a2fSDavid Daney }; 1267a7187a2fSDavid Daney 1268a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat2 { 1269a7187a2fSDavid Daney uint64_t u64; 1270a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat2_s { 1271*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1272a7187a2fSDavid Daney uint64_t reserved_48_63:16; 1273a7187a2fSDavid Daney uint64_t octs:48; 1274*c5aa59e8SDavid Daney #else 1275*c5aa59e8SDavid Daney uint64_t octs:48; 1276*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 1277*c5aa59e8SDavid Daney #endif 1278a7187a2fSDavid Daney } s; 1279a7187a2fSDavid Daney }; 1280a7187a2fSDavid Daney 1281a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat3 { 1282a7187a2fSDavid Daney uint64_t u64; 1283a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat3_s { 1284*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1285a7187a2fSDavid Daney uint64_t reserved_32_63:32; 1286a7187a2fSDavid Daney uint64_t pkts:32; 1287*c5aa59e8SDavid Daney #else 1288*c5aa59e8SDavid Daney uint64_t pkts:32; 1289*c5aa59e8SDavid Daney uint64_t reserved_32_63:32; 1290*c5aa59e8SDavid Daney #endif 1291a7187a2fSDavid Daney } s; 1292a7187a2fSDavid Daney }; 1293a7187a2fSDavid Daney 1294a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat4 { 1295a7187a2fSDavid Daney uint64_t u64; 1296a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat4_s { 1297*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1298a7187a2fSDavid Daney uint64_t hist1:32; 1299a7187a2fSDavid Daney uint64_t hist0:32; 1300*c5aa59e8SDavid Daney #else 1301*c5aa59e8SDavid Daney uint64_t hist0:32; 1302*c5aa59e8SDavid Daney uint64_t hist1:32; 1303*c5aa59e8SDavid Daney #endif 1304a7187a2fSDavid Daney } s; 1305a7187a2fSDavid Daney }; 1306a7187a2fSDavid Daney 1307a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat5 { 1308a7187a2fSDavid Daney uint64_t u64; 1309a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat5_s { 1310*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1311a7187a2fSDavid Daney uint64_t hist3:32; 1312a7187a2fSDavid Daney uint64_t hist2:32; 1313*c5aa59e8SDavid Daney #else 1314*c5aa59e8SDavid Daney uint64_t hist2:32; 1315*c5aa59e8SDavid Daney uint64_t hist3:32; 1316*c5aa59e8SDavid Daney #endif 1317a7187a2fSDavid Daney } s; 1318a7187a2fSDavid Daney }; 1319a7187a2fSDavid Daney 1320a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat6 { 1321a7187a2fSDavid Daney uint64_t u64; 1322a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat6_s { 1323*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1324a7187a2fSDavid Daney uint64_t hist5:32; 1325a7187a2fSDavid Daney uint64_t hist4:32; 1326*c5aa59e8SDavid Daney #else 1327*c5aa59e8SDavid Daney uint64_t hist4:32; 1328*c5aa59e8SDavid Daney uint64_t hist5:32; 1329*c5aa59e8SDavid Daney #endif 1330a7187a2fSDavid Daney } s; 1331a7187a2fSDavid Daney }; 1332a7187a2fSDavid Daney 1333a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat7 { 1334a7187a2fSDavid Daney uint64_t u64; 1335a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat7_s { 1336*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1337a7187a2fSDavid Daney uint64_t hist7:32; 1338a7187a2fSDavid Daney uint64_t hist6:32; 1339*c5aa59e8SDavid Daney #else 1340*c5aa59e8SDavid Daney uint64_t hist6:32; 1341*c5aa59e8SDavid Daney uint64_t hist7:32; 1342*c5aa59e8SDavid Daney #endif 1343a7187a2fSDavid Daney } s; 1344a7187a2fSDavid Daney }; 1345a7187a2fSDavid Daney 1346a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat8 { 1347a7187a2fSDavid Daney uint64_t u64; 1348a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat8_s { 1349*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1350a7187a2fSDavid Daney uint64_t mcst:32; 1351a7187a2fSDavid Daney uint64_t bcst:32; 1352*c5aa59e8SDavid Daney #else 1353*c5aa59e8SDavid Daney uint64_t bcst:32; 1354*c5aa59e8SDavid Daney uint64_t mcst:32; 1355*c5aa59e8SDavid Daney #endif 1356a7187a2fSDavid Daney } s; 1357a7187a2fSDavid Daney }; 1358a7187a2fSDavid Daney 1359a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stat9 { 1360a7187a2fSDavid Daney uint64_t u64; 1361a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stat9_s { 1362*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1363a7187a2fSDavid Daney uint64_t undflw:32; 1364a7187a2fSDavid Daney uint64_t ctl:32; 1365*c5aa59e8SDavid Daney #else 1366*c5aa59e8SDavid Daney uint64_t ctl:32; 1367*c5aa59e8SDavid Daney uint64_t undflw:32; 1368*c5aa59e8SDavid Daney #endif 1369a7187a2fSDavid Daney } s; 1370a7187a2fSDavid Daney }; 1371a7187a2fSDavid Daney 1372a7187a2fSDavid Daney union cvmx_agl_gmx_txx_stats_ctl { 1373a7187a2fSDavid Daney uint64_t u64; 1374a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_stats_ctl_s { 1375*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1376a7187a2fSDavid Daney uint64_t reserved_1_63:63; 1377a7187a2fSDavid Daney uint64_t rd_clr:1; 1378*c5aa59e8SDavid Daney #else 1379*c5aa59e8SDavid Daney uint64_t rd_clr:1; 1380*c5aa59e8SDavid Daney uint64_t reserved_1_63:63; 1381*c5aa59e8SDavid Daney #endif 1382a7187a2fSDavid Daney } s; 1383a7187a2fSDavid Daney }; 1384a7187a2fSDavid Daney 1385a7187a2fSDavid Daney union cvmx_agl_gmx_txx_thresh { 1386a7187a2fSDavid Daney uint64_t u64; 1387a7187a2fSDavid Daney struct cvmx_agl_gmx_txx_thresh_s { 1388*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1389a7187a2fSDavid Daney uint64_t reserved_6_63:58; 1390a7187a2fSDavid Daney uint64_t cnt:6; 1391*c5aa59e8SDavid Daney #else 1392*c5aa59e8SDavid Daney uint64_t cnt:6; 1393*c5aa59e8SDavid Daney uint64_t reserved_6_63:58; 1394*c5aa59e8SDavid Daney #endif 1395a7187a2fSDavid Daney } s; 1396a7187a2fSDavid Daney }; 1397a7187a2fSDavid Daney 1398a7187a2fSDavid Daney union cvmx_agl_gmx_tx_bp { 1399a7187a2fSDavid Daney uint64_t u64; 1400a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_bp_s { 1401*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1402a7187a2fSDavid Daney uint64_t reserved_2_63:62; 1403a7187a2fSDavid Daney uint64_t bp:2; 1404*c5aa59e8SDavid Daney #else 1405*c5aa59e8SDavid Daney uint64_t bp:2; 1406*c5aa59e8SDavid Daney uint64_t reserved_2_63:62; 1407*c5aa59e8SDavid Daney #endif 1408a7187a2fSDavid Daney } s; 1409a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_bp_cn56xx { 1410*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1411a7187a2fSDavid Daney uint64_t reserved_1_63:63; 1412a7187a2fSDavid Daney uint64_t bp:1; 1413*c5aa59e8SDavid Daney #else 1414*c5aa59e8SDavid Daney uint64_t bp:1; 1415*c5aa59e8SDavid Daney uint64_t reserved_1_63:63; 1416*c5aa59e8SDavid Daney #endif 1417a7187a2fSDavid Daney } cn56xx; 1418a7187a2fSDavid Daney }; 1419a7187a2fSDavid Daney 1420a7187a2fSDavid Daney union cvmx_agl_gmx_tx_col_attempt { 1421a7187a2fSDavid Daney uint64_t u64; 1422a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_col_attempt_s { 1423*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1424a7187a2fSDavid Daney uint64_t reserved_5_63:59; 1425a7187a2fSDavid Daney uint64_t limit:5; 1426*c5aa59e8SDavid Daney #else 1427*c5aa59e8SDavid Daney uint64_t limit:5; 1428*c5aa59e8SDavid Daney uint64_t reserved_5_63:59; 1429*c5aa59e8SDavid Daney #endif 1430a7187a2fSDavid Daney } s; 1431a7187a2fSDavid Daney }; 1432a7187a2fSDavid Daney 1433a7187a2fSDavid Daney union cvmx_agl_gmx_tx_ifg { 1434a7187a2fSDavid Daney uint64_t u64; 1435a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_ifg_s { 1436*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1437a7187a2fSDavid Daney uint64_t reserved_8_63:56; 1438a7187a2fSDavid Daney uint64_t ifg2:4; 1439a7187a2fSDavid Daney uint64_t ifg1:4; 1440*c5aa59e8SDavid Daney #else 1441*c5aa59e8SDavid Daney uint64_t ifg1:4; 1442*c5aa59e8SDavid Daney uint64_t ifg2:4; 1443*c5aa59e8SDavid Daney uint64_t reserved_8_63:56; 1444*c5aa59e8SDavid Daney #endif 1445a7187a2fSDavid Daney } s; 1446a7187a2fSDavid Daney }; 1447a7187a2fSDavid Daney 1448a7187a2fSDavid Daney union cvmx_agl_gmx_tx_int_en { 1449a7187a2fSDavid Daney uint64_t u64; 1450a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_int_en_s { 1451*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1452aa32a955SDavid Daney uint64_t reserved_22_63:42; 1453aa32a955SDavid Daney uint64_t ptp_lost:2; 1454aa32a955SDavid Daney uint64_t reserved_18_19:2; 1455a7187a2fSDavid Daney uint64_t late_col:2; 1456a7187a2fSDavid Daney uint64_t reserved_14_15:2; 1457a7187a2fSDavid Daney uint64_t xsdef:2; 1458a7187a2fSDavid Daney uint64_t reserved_10_11:2; 1459a7187a2fSDavid Daney uint64_t xscol:2; 1460a7187a2fSDavid Daney uint64_t reserved_4_7:4; 1461a7187a2fSDavid Daney uint64_t undflw:2; 1462a7187a2fSDavid Daney uint64_t reserved_1_1:1; 1463a7187a2fSDavid Daney uint64_t pko_nxa:1; 1464*c5aa59e8SDavid Daney #else 1465*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1466*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1467*c5aa59e8SDavid Daney uint64_t undflw:2; 1468*c5aa59e8SDavid Daney uint64_t reserved_4_7:4; 1469*c5aa59e8SDavid Daney uint64_t xscol:2; 1470*c5aa59e8SDavid Daney uint64_t reserved_10_11:2; 1471*c5aa59e8SDavid Daney uint64_t xsdef:2; 1472*c5aa59e8SDavid Daney uint64_t reserved_14_15:2; 1473*c5aa59e8SDavid Daney uint64_t late_col:2; 1474*c5aa59e8SDavid Daney uint64_t reserved_18_19:2; 1475*c5aa59e8SDavid Daney uint64_t ptp_lost:2; 1476*c5aa59e8SDavid Daney uint64_t reserved_22_63:42; 1477*c5aa59e8SDavid Daney #endif 1478a7187a2fSDavid Daney } s; 1479aa32a955SDavid Daney struct cvmx_agl_gmx_tx_int_en_cn52xx { 1480*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1481aa32a955SDavid Daney uint64_t reserved_18_63:46; 1482aa32a955SDavid Daney uint64_t late_col:2; 1483aa32a955SDavid Daney uint64_t reserved_14_15:2; 1484aa32a955SDavid Daney uint64_t xsdef:2; 1485aa32a955SDavid Daney uint64_t reserved_10_11:2; 1486aa32a955SDavid Daney uint64_t xscol:2; 1487aa32a955SDavid Daney uint64_t reserved_4_7:4; 1488aa32a955SDavid Daney uint64_t undflw:2; 1489aa32a955SDavid Daney uint64_t reserved_1_1:1; 1490aa32a955SDavid Daney uint64_t pko_nxa:1; 1491*c5aa59e8SDavid Daney #else 1492*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1493*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1494*c5aa59e8SDavid Daney uint64_t undflw:2; 1495*c5aa59e8SDavid Daney uint64_t reserved_4_7:4; 1496*c5aa59e8SDavid Daney uint64_t xscol:2; 1497*c5aa59e8SDavid Daney uint64_t reserved_10_11:2; 1498*c5aa59e8SDavid Daney uint64_t xsdef:2; 1499*c5aa59e8SDavid Daney uint64_t reserved_14_15:2; 1500*c5aa59e8SDavid Daney uint64_t late_col:2; 1501*c5aa59e8SDavid Daney uint64_t reserved_18_63:46; 1502*c5aa59e8SDavid Daney #endif 1503aa32a955SDavid Daney } cn52xx; 1504a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_int_en_cn56xx { 1505*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1506a7187a2fSDavid Daney uint64_t reserved_17_63:47; 1507a7187a2fSDavid Daney uint64_t late_col:1; 1508a7187a2fSDavid Daney uint64_t reserved_13_15:3; 1509a7187a2fSDavid Daney uint64_t xsdef:1; 1510a7187a2fSDavid Daney uint64_t reserved_9_11:3; 1511a7187a2fSDavid Daney uint64_t xscol:1; 1512a7187a2fSDavid Daney uint64_t reserved_3_7:5; 1513a7187a2fSDavid Daney uint64_t undflw:1; 1514a7187a2fSDavid Daney uint64_t reserved_1_1:1; 1515a7187a2fSDavid Daney uint64_t pko_nxa:1; 1516*c5aa59e8SDavid Daney #else 1517*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1518*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1519*c5aa59e8SDavid Daney uint64_t undflw:1; 1520*c5aa59e8SDavid Daney uint64_t reserved_3_7:5; 1521*c5aa59e8SDavid Daney uint64_t xscol:1; 1522*c5aa59e8SDavid Daney uint64_t reserved_9_11:3; 1523*c5aa59e8SDavid Daney uint64_t xsdef:1; 1524*c5aa59e8SDavid Daney uint64_t reserved_13_15:3; 1525*c5aa59e8SDavid Daney uint64_t late_col:1; 1526*c5aa59e8SDavid Daney uint64_t reserved_17_63:47; 1527*c5aa59e8SDavid Daney #endif 1528a7187a2fSDavid Daney } cn56xx; 1529a7187a2fSDavid Daney }; 1530a7187a2fSDavid Daney 1531a7187a2fSDavid Daney union cvmx_agl_gmx_tx_int_reg { 1532a7187a2fSDavid Daney uint64_t u64; 1533a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_int_reg_s { 1534*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1535aa32a955SDavid Daney uint64_t reserved_22_63:42; 1536aa32a955SDavid Daney uint64_t ptp_lost:2; 1537aa32a955SDavid Daney uint64_t reserved_18_19:2; 1538a7187a2fSDavid Daney uint64_t late_col:2; 1539a7187a2fSDavid Daney uint64_t reserved_14_15:2; 1540a7187a2fSDavid Daney uint64_t xsdef:2; 1541a7187a2fSDavid Daney uint64_t reserved_10_11:2; 1542a7187a2fSDavid Daney uint64_t xscol:2; 1543a7187a2fSDavid Daney uint64_t reserved_4_7:4; 1544a7187a2fSDavid Daney uint64_t undflw:2; 1545a7187a2fSDavid Daney uint64_t reserved_1_1:1; 1546a7187a2fSDavid Daney uint64_t pko_nxa:1; 1547*c5aa59e8SDavid Daney #else 1548*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1549*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1550*c5aa59e8SDavid Daney uint64_t undflw:2; 1551*c5aa59e8SDavid Daney uint64_t reserved_4_7:4; 1552*c5aa59e8SDavid Daney uint64_t xscol:2; 1553*c5aa59e8SDavid Daney uint64_t reserved_10_11:2; 1554*c5aa59e8SDavid Daney uint64_t xsdef:2; 1555*c5aa59e8SDavid Daney uint64_t reserved_14_15:2; 1556*c5aa59e8SDavid Daney uint64_t late_col:2; 1557*c5aa59e8SDavid Daney uint64_t reserved_18_19:2; 1558*c5aa59e8SDavid Daney uint64_t ptp_lost:2; 1559*c5aa59e8SDavid Daney uint64_t reserved_22_63:42; 1560*c5aa59e8SDavid Daney #endif 1561a7187a2fSDavid Daney } s; 1562aa32a955SDavid Daney struct cvmx_agl_gmx_tx_int_reg_cn52xx { 1563*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1564aa32a955SDavid Daney uint64_t reserved_18_63:46; 1565aa32a955SDavid Daney uint64_t late_col:2; 1566aa32a955SDavid Daney uint64_t reserved_14_15:2; 1567aa32a955SDavid Daney uint64_t xsdef:2; 1568aa32a955SDavid Daney uint64_t reserved_10_11:2; 1569aa32a955SDavid Daney uint64_t xscol:2; 1570aa32a955SDavid Daney uint64_t reserved_4_7:4; 1571aa32a955SDavid Daney uint64_t undflw:2; 1572aa32a955SDavid Daney uint64_t reserved_1_1:1; 1573aa32a955SDavid Daney uint64_t pko_nxa:1; 1574*c5aa59e8SDavid Daney #else 1575*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1576*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1577*c5aa59e8SDavid Daney uint64_t undflw:2; 1578*c5aa59e8SDavid Daney uint64_t reserved_4_7:4; 1579*c5aa59e8SDavid Daney uint64_t xscol:2; 1580*c5aa59e8SDavid Daney uint64_t reserved_10_11:2; 1581*c5aa59e8SDavid Daney uint64_t xsdef:2; 1582*c5aa59e8SDavid Daney uint64_t reserved_14_15:2; 1583*c5aa59e8SDavid Daney uint64_t late_col:2; 1584*c5aa59e8SDavid Daney uint64_t reserved_18_63:46; 1585*c5aa59e8SDavid Daney #endif 1586aa32a955SDavid Daney } cn52xx; 1587a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_int_reg_cn56xx { 1588*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1589a7187a2fSDavid Daney uint64_t reserved_17_63:47; 1590a7187a2fSDavid Daney uint64_t late_col:1; 1591a7187a2fSDavid Daney uint64_t reserved_13_15:3; 1592a7187a2fSDavid Daney uint64_t xsdef:1; 1593a7187a2fSDavid Daney uint64_t reserved_9_11:3; 1594a7187a2fSDavid Daney uint64_t xscol:1; 1595a7187a2fSDavid Daney uint64_t reserved_3_7:5; 1596a7187a2fSDavid Daney uint64_t undflw:1; 1597a7187a2fSDavid Daney uint64_t reserved_1_1:1; 1598a7187a2fSDavid Daney uint64_t pko_nxa:1; 1599*c5aa59e8SDavid Daney #else 1600*c5aa59e8SDavid Daney uint64_t pko_nxa:1; 1601*c5aa59e8SDavid Daney uint64_t reserved_1_1:1; 1602*c5aa59e8SDavid Daney uint64_t undflw:1; 1603*c5aa59e8SDavid Daney uint64_t reserved_3_7:5; 1604*c5aa59e8SDavid Daney uint64_t xscol:1; 1605*c5aa59e8SDavid Daney uint64_t reserved_9_11:3; 1606*c5aa59e8SDavid Daney uint64_t xsdef:1; 1607*c5aa59e8SDavid Daney uint64_t reserved_13_15:3; 1608*c5aa59e8SDavid Daney uint64_t late_col:1; 1609*c5aa59e8SDavid Daney uint64_t reserved_17_63:47; 1610*c5aa59e8SDavid Daney #endif 1611a7187a2fSDavid Daney } cn56xx; 1612a7187a2fSDavid Daney }; 1613a7187a2fSDavid Daney 1614a7187a2fSDavid Daney union cvmx_agl_gmx_tx_jam { 1615a7187a2fSDavid Daney uint64_t u64; 1616a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_jam_s { 1617*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1618a7187a2fSDavid Daney uint64_t reserved_8_63:56; 1619a7187a2fSDavid Daney uint64_t jam:8; 1620*c5aa59e8SDavid Daney #else 1621*c5aa59e8SDavid Daney uint64_t jam:8; 1622*c5aa59e8SDavid Daney uint64_t reserved_8_63:56; 1623*c5aa59e8SDavid Daney #endif 1624a7187a2fSDavid Daney } s; 1625a7187a2fSDavid Daney }; 1626a7187a2fSDavid Daney 1627a7187a2fSDavid Daney union cvmx_agl_gmx_tx_lfsr { 1628a7187a2fSDavid Daney uint64_t u64; 1629a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_lfsr_s { 1630*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1631a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1632a7187a2fSDavid Daney uint64_t lfsr:16; 1633*c5aa59e8SDavid Daney #else 1634*c5aa59e8SDavid Daney uint64_t lfsr:16; 1635*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1636*c5aa59e8SDavid Daney #endif 1637a7187a2fSDavid Daney } s; 1638a7187a2fSDavid Daney }; 1639a7187a2fSDavid Daney 1640a7187a2fSDavid Daney union cvmx_agl_gmx_tx_ovr_bp { 1641a7187a2fSDavid Daney uint64_t u64; 1642a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_ovr_bp_s { 1643*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1644a7187a2fSDavid Daney uint64_t reserved_10_63:54; 1645a7187a2fSDavid Daney uint64_t en:2; 1646a7187a2fSDavid Daney uint64_t reserved_6_7:2; 1647a7187a2fSDavid Daney uint64_t bp:2; 1648a7187a2fSDavid Daney uint64_t reserved_2_3:2; 1649a7187a2fSDavid Daney uint64_t ign_full:2; 1650*c5aa59e8SDavid Daney #else 1651*c5aa59e8SDavid Daney uint64_t ign_full:2; 1652*c5aa59e8SDavid Daney uint64_t reserved_2_3:2; 1653*c5aa59e8SDavid Daney uint64_t bp:2; 1654*c5aa59e8SDavid Daney uint64_t reserved_6_7:2; 1655*c5aa59e8SDavid Daney uint64_t en:2; 1656*c5aa59e8SDavid Daney uint64_t reserved_10_63:54; 1657*c5aa59e8SDavid Daney #endif 1658a7187a2fSDavid Daney } s; 1659a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_ovr_bp_cn56xx { 1660*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1661a7187a2fSDavid Daney uint64_t reserved_9_63:55; 1662a7187a2fSDavid Daney uint64_t en:1; 1663a7187a2fSDavid Daney uint64_t reserved_5_7:3; 1664a7187a2fSDavid Daney uint64_t bp:1; 1665a7187a2fSDavid Daney uint64_t reserved_1_3:3; 1666a7187a2fSDavid Daney uint64_t ign_full:1; 1667*c5aa59e8SDavid Daney #else 1668*c5aa59e8SDavid Daney uint64_t ign_full:1; 1669*c5aa59e8SDavid Daney uint64_t reserved_1_3:3; 1670*c5aa59e8SDavid Daney uint64_t bp:1; 1671*c5aa59e8SDavid Daney uint64_t reserved_5_7:3; 1672*c5aa59e8SDavid Daney uint64_t en:1; 1673*c5aa59e8SDavid Daney uint64_t reserved_9_63:55; 1674*c5aa59e8SDavid Daney #endif 1675a7187a2fSDavid Daney } cn56xx; 1676a7187a2fSDavid Daney }; 1677a7187a2fSDavid Daney 1678a7187a2fSDavid Daney union cvmx_agl_gmx_tx_pause_pkt_dmac { 1679a7187a2fSDavid Daney uint64_t u64; 1680a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_pause_pkt_dmac_s { 1681*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1682a7187a2fSDavid Daney uint64_t reserved_48_63:16; 1683a7187a2fSDavid Daney uint64_t dmac:48; 1684*c5aa59e8SDavid Daney #else 1685*c5aa59e8SDavid Daney uint64_t dmac:48; 1686*c5aa59e8SDavid Daney uint64_t reserved_48_63:16; 1687*c5aa59e8SDavid Daney #endif 1688a7187a2fSDavid Daney } s; 1689a7187a2fSDavid Daney }; 1690a7187a2fSDavid Daney 1691a7187a2fSDavid Daney union cvmx_agl_gmx_tx_pause_pkt_type { 1692a7187a2fSDavid Daney uint64_t u64; 1693a7187a2fSDavid Daney struct cvmx_agl_gmx_tx_pause_pkt_type_s { 1694*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1695a7187a2fSDavid Daney uint64_t reserved_16_63:48; 1696a7187a2fSDavid Daney uint64_t type:16; 1697*c5aa59e8SDavid Daney #else 1698*c5aa59e8SDavid Daney uint64_t type:16; 1699*c5aa59e8SDavid Daney uint64_t reserved_16_63:48; 1700*c5aa59e8SDavid Daney #endif 1701a7187a2fSDavid Daney } s; 1702aa32a955SDavid Daney }; 1703aa32a955SDavid Daney 1704aa32a955SDavid Daney union cvmx_agl_prtx_ctl { 1705aa32a955SDavid Daney uint64_t u64; 1706aa32a955SDavid Daney struct cvmx_agl_prtx_ctl_s { 1707*c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD 1708aa32a955SDavid Daney uint64_t drv_byp:1; 1709aa32a955SDavid Daney uint64_t reserved_62_62:1; 1710aa32a955SDavid Daney uint64_t cmp_pctl:6; 1711aa32a955SDavid Daney uint64_t reserved_54_55:2; 1712aa32a955SDavid Daney uint64_t cmp_nctl:6; 1713aa32a955SDavid Daney uint64_t reserved_46_47:2; 1714aa32a955SDavid Daney uint64_t drv_pctl:6; 1715aa32a955SDavid Daney uint64_t reserved_38_39:2; 1716aa32a955SDavid Daney uint64_t drv_nctl:6; 1717aa32a955SDavid Daney uint64_t reserved_29_31:3; 1718aa32a955SDavid Daney uint64_t clk_set:5; 1719aa32a955SDavid Daney uint64_t clkrx_byp:1; 1720aa32a955SDavid Daney uint64_t reserved_21_22:2; 1721aa32a955SDavid Daney uint64_t clkrx_set:5; 1722aa32a955SDavid Daney uint64_t clktx_byp:1; 1723aa32a955SDavid Daney uint64_t reserved_13_14:2; 1724aa32a955SDavid Daney uint64_t clktx_set:5; 1725aa32a955SDavid Daney uint64_t reserved_5_7:3; 1726aa32a955SDavid Daney uint64_t dllrst:1; 1727aa32a955SDavid Daney uint64_t comp:1; 1728aa32a955SDavid Daney uint64_t enable:1; 1729aa32a955SDavid Daney uint64_t clkrst:1; 1730aa32a955SDavid Daney uint64_t mode:1; 1731*c5aa59e8SDavid Daney #else 1732*c5aa59e8SDavid Daney uint64_t mode:1; 1733*c5aa59e8SDavid Daney uint64_t clkrst:1; 1734*c5aa59e8SDavid Daney uint64_t enable:1; 1735*c5aa59e8SDavid Daney uint64_t comp:1; 1736*c5aa59e8SDavid Daney uint64_t dllrst:1; 1737*c5aa59e8SDavid Daney uint64_t reserved_5_7:3; 1738*c5aa59e8SDavid Daney uint64_t clktx_set:5; 1739*c5aa59e8SDavid Daney uint64_t reserved_13_14:2; 1740*c5aa59e8SDavid Daney uint64_t clktx_byp:1; 1741*c5aa59e8SDavid Daney uint64_t clkrx_set:5; 1742*c5aa59e8SDavid Daney uint64_t reserved_21_22:2; 1743*c5aa59e8SDavid Daney uint64_t clkrx_byp:1; 1744*c5aa59e8SDavid Daney uint64_t clk_set:5; 1745*c5aa59e8SDavid Daney uint64_t reserved_29_31:3; 1746*c5aa59e8SDavid Daney uint64_t drv_nctl:6; 1747*c5aa59e8SDavid Daney uint64_t reserved_38_39:2; 1748*c5aa59e8SDavid Daney uint64_t drv_pctl:6; 1749*c5aa59e8SDavid Daney uint64_t reserved_46_47:2; 1750*c5aa59e8SDavid Daney uint64_t cmp_nctl:6; 1751*c5aa59e8SDavid Daney uint64_t reserved_54_55:2; 1752*c5aa59e8SDavid Daney uint64_t cmp_pctl:6; 1753*c5aa59e8SDavid Daney uint64_t reserved_62_62:1; 1754*c5aa59e8SDavid Daney uint64_t drv_byp:1; 1755*c5aa59e8SDavid Daney #endif 1756aa32a955SDavid Daney } s; 1757a7187a2fSDavid Daney }; 1758a7187a2fSDavid Daney 1759a7187a2fSDavid Daney #endif 1760