xref: /OK3568_Linux_fs/kernel/arch/mips/include/asm/octeon/cvmx-gmxx-defs.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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-2018 Cavium, Inc.
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_GMXX_DEFS_H__
29*4882a593Smuzhiyun #define __CVMX_GMXX_DEFS_H__
30*4882a593Smuzhiyun 
CVMX_GMXX_HG2_CONTROL(unsigned long block_id)31*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_HG2_CONTROL(unsigned long block_id)
32*4882a593Smuzhiyun {
33*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
34*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
35*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000550ull) + (block_id) * 0x1000000ull;
36*4882a593Smuzhiyun 	}
37*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000550ull) + (block_id) * 0x8000000ull;
38*4882a593Smuzhiyun }
39*4882a593Smuzhiyun 
CVMX_GMXX_INF_MODE(unsigned long block_id)40*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_INF_MODE(unsigned long block_id)
41*4882a593Smuzhiyun {
42*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
43*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
44*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080007F8ull) + (block_id) * 0x1000000ull;
45*4882a593Smuzhiyun 	}
46*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x00011800080007F8ull) + (block_id) * 0x8000000ull;
47*4882a593Smuzhiyun }
48*4882a593Smuzhiyun 
CVMX_GMXX_PRTX_CFG(unsigned long offset,unsigned long block_id)49*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_PRTX_CFG(unsigned long offset, unsigned long block_id)
50*4882a593Smuzhiyun {
51*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
52*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
53*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000010ull) + ((offset) + (block_id) * 0x0ull) * 2048;
54*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
55*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000010ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
56*4882a593Smuzhiyun 	}
57*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000010ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
58*4882a593Smuzhiyun }
59*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM0(unsigned long offset,unsigned long block_id)60*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM0(unsigned long offset, unsigned long block_id)
61*4882a593Smuzhiyun {
62*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
63*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
64*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000180ull) + ((offset) + (block_id) * 0x0ull) * 2048;
65*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
66*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000180ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
67*4882a593Smuzhiyun 	}
68*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000180ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
69*4882a593Smuzhiyun }
70*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM1(unsigned long offset,unsigned long block_id)71*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM1(unsigned long offset, unsigned long block_id)
72*4882a593Smuzhiyun {
73*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
74*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
75*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000188ull) + ((offset) + (block_id) * 0x0ull) * 2048;
76*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
77*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000188ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
78*4882a593Smuzhiyun 	}
79*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000188ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
80*4882a593Smuzhiyun }
81*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM2(unsigned long offset,unsigned long block_id)82*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM2(unsigned long offset, unsigned long block_id)
83*4882a593Smuzhiyun {
84*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
85*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
86*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000190ull) + ((offset) + (block_id) * 0x0ull) * 2048;
87*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
88*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000190ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
89*4882a593Smuzhiyun 	}
90*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000190ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
91*4882a593Smuzhiyun }
92*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM3(unsigned long offset,unsigned long block_id)93*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM3(unsigned long offset, unsigned long block_id)
94*4882a593Smuzhiyun {
95*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
96*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
97*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000198ull) + ((offset) + (block_id) * 0x0ull) * 2048;
98*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
99*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000198ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
100*4882a593Smuzhiyun 	}
101*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000198ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
102*4882a593Smuzhiyun }
103*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM4(unsigned long offset,unsigned long block_id)104*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM4(unsigned long offset, unsigned long block_id)
105*4882a593Smuzhiyun {
106*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
107*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
108*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080001A0ull) + ((offset) + (block_id) * 0x0ull) * 2048;
109*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
110*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080001A0ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
111*4882a593Smuzhiyun 	}
112*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x00011800080001A0ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
113*4882a593Smuzhiyun }
114*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM5(unsigned long offset,unsigned long block_id)115*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM5(unsigned long offset, unsigned long block_id)
116*4882a593Smuzhiyun {
117*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
118*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
119*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080001A8ull) + ((offset) + (block_id) * 0x0ull) * 2048;
120*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
121*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080001A8ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
122*4882a593Smuzhiyun 	}
123*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x00011800080001A8ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
124*4882a593Smuzhiyun }
125*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CAM_EN(unsigned long offset,unsigned long block_id)126*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CAM_EN(unsigned long offset, unsigned long block_id)
127*4882a593Smuzhiyun {
128*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
129*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
130*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000108ull) + ((offset) + (block_id) * 0x0ull) * 2048;
131*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
132*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000108ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
133*4882a593Smuzhiyun 	}
134*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000108ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
135*4882a593Smuzhiyun }
136*4882a593Smuzhiyun 
CVMX_GMXX_RXX_ADR_CTL(unsigned long offset,unsigned long block_id)137*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_ADR_CTL(unsigned long offset, unsigned long block_id)
138*4882a593Smuzhiyun {
139*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
140*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
141*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000100ull) + ((offset) + (block_id) * 0x0ull) * 2048;
142*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
143*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000100ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
144*4882a593Smuzhiyun 	}
145*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000100ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
146*4882a593Smuzhiyun }
147*4882a593Smuzhiyun 
CVMX_GMXX_RXX_FRM_CTL(unsigned long offset,unsigned long block_id)148*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_FRM_CTL(unsigned long offset, unsigned long block_id)
149*4882a593Smuzhiyun {
150*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
151*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
152*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000018ull) + ((offset) + (block_id) * 0x0ull) * 2048;
153*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
154*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000018ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
155*4882a593Smuzhiyun 	}
156*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000018ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
157*4882a593Smuzhiyun }
158*4882a593Smuzhiyun 
159*4882a593Smuzhiyun #define CVMX_GMXX_RXX_FRM_MAX(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180008000030ull) + (((offset) & 3) + ((block_id) & 1) * 0x10000ull) * 2048)
160*4882a593Smuzhiyun #define CVMX_GMXX_RXX_FRM_MIN(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180008000028ull) + (((offset) & 3) + ((block_id) & 1) * 0x10000ull) * 2048)
161*4882a593Smuzhiyun 
CVMX_GMXX_RXX_INT_EN(unsigned long offset,unsigned long block_id)162*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_INT_EN(unsigned long offset, unsigned long block_id)
163*4882a593Smuzhiyun {
164*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
165*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
166*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000008ull) + ((offset) + (block_id) * 0x0ull) * 2048;
167*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
168*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000008ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
169*4882a593Smuzhiyun 	}
170*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000008ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
171*4882a593Smuzhiyun }
172*4882a593Smuzhiyun 
CVMX_GMXX_RXX_INT_REG(unsigned long offset,unsigned long block_id)173*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_INT_REG(unsigned long offset, unsigned long block_id)
174*4882a593Smuzhiyun {
175*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
176*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
177*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000000ull) + ((offset) + (block_id) * 0x0ull) * 2048;
178*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
179*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000000ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
180*4882a593Smuzhiyun 	}
181*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000000ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
182*4882a593Smuzhiyun }
183*4882a593Smuzhiyun 
CVMX_GMXX_RXX_JABBER(unsigned long offset,unsigned long block_id)184*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RXX_JABBER(unsigned long offset, unsigned long block_id)
185*4882a593Smuzhiyun {
186*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
187*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
188*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000038ull) + ((offset) + (block_id) * 0x0ull) * 2048;
189*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
190*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000038ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
191*4882a593Smuzhiyun 	}
192*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000038ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
193*4882a593Smuzhiyun }
194*4882a593Smuzhiyun 
195*4882a593Smuzhiyun #define CVMX_GMXX_RXX_RX_INBND(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180008000060ull) + (((offset) & 3) + ((block_id) & 1) * 0x10000ull) * 2048)
196*4882a593Smuzhiyun 
CVMX_GMXX_RX_PRTS(unsigned long block_id)197*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RX_PRTS(unsigned long block_id)
198*4882a593Smuzhiyun {
199*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
200*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
201*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000410ull) + (block_id) * 0x1000000ull;
202*4882a593Smuzhiyun 	}
203*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000410ull) + (block_id) * 0x8000000ull;
204*4882a593Smuzhiyun }
205*4882a593Smuzhiyun 
CVMX_GMXX_RX_XAUI_CTL(unsigned long block_id)206*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_RX_XAUI_CTL(unsigned long block_id)
207*4882a593Smuzhiyun {
208*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
209*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
210*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000530ull) + (block_id) * 0x1000000ull;
211*4882a593Smuzhiyun 	}
212*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000530ull) + (block_id) * 0x8000000ull;
213*4882a593Smuzhiyun }
214*4882a593Smuzhiyun 
CVMX_GMXX_SMACX(unsigned long offset,unsigned long block_id)215*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_SMACX(unsigned long offset, unsigned long block_id)
216*4882a593Smuzhiyun {
217*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
218*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
219*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000230ull) + ((offset) + (block_id) * 0x0ull) * 2048;
220*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
221*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000230ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
222*4882a593Smuzhiyun 	}
223*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000230ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
224*4882a593Smuzhiyun }
225*4882a593Smuzhiyun 
CVMX_GMXX_TXX_BURST(unsigned long offset,unsigned long block_id)226*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_BURST(unsigned long offset, unsigned long block_id)
227*4882a593Smuzhiyun {
228*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
229*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
230*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000228ull) + ((offset) + (block_id) * 0x0ull) * 2048;
231*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
232*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000228ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
233*4882a593Smuzhiyun 	}
234*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000228ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
235*4882a593Smuzhiyun }
236*4882a593Smuzhiyun 
237*4882a593Smuzhiyun #define CVMX_GMXX_TXX_CLK(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180008000208ull) + (((offset) & 3) + ((block_id) & 1) * 0x10000ull) * 2048)
CVMX_GMXX_TXX_CTL(unsigned long offset,unsigned long block_id)238*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_CTL(unsigned long offset, unsigned long block_id)
239*4882a593Smuzhiyun {
240*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
241*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
242*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000270ull) + ((offset) + (block_id) * 0x0ull) * 2048;
243*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
244*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000270ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
245*4882a593Smuzhiyun 	}
246*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000270ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
247*4882a593Smuzhiyun }
248*4882a593Smuzhiyun 
CVMX_GMXX_TXX_PAUSE_PKT_INTERVAL(unsigned long offset,unsigned long block_id)249*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_PAUSE_PKT_INTERVAL(unsigned long offset, unsigned long block_id)
250*4882a593Smuzhiyun {
251*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
252*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
253*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000248ull) + ((offset) + (block_id) * 0x0ull) * 2048;
254*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
255*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000248ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
256*4882a593Smuzhiyun 	}
257*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000248ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
258*4882a593Smuzhiyun }
259*4882a593Smuzhiyun 
CVMX_GMXX_TXX_PAUSE_PKT_TIME(unsigned long offset,unsigned long block_id)260*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_PAUSE_PKT_TIME(unsigned long offset, unsigned long block_id)
261*4882a593Smuzhiyun {
262*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
263*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
264*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000238ull) + ((offset) + (block_id) * 0x0ull) * 2048;
265*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
266*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000238ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
267*4882a593Smuzhiyun 	}
268*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000238ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
269*4882a593Smuzhiyun }
270*4882a593Smuzhiyun 
CVMX_GMXX_TXX_SLOT(unsigned long offset,unsigned long block_id)271*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_SLOT(unsigned long offset, unsigned long block_id)
272*4882a593Smuzhiyun {
273*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
274*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
275*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000220ull) + ((offset) + (block_id) * 0x0ull) * 2048;
276*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
277*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000220ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
278*4882a593Smuzhiyun 	}
279*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000220ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
280*4882a593Smuzhiyun }
281*4882a593Smuzhiyun 
CVMX_GMXX_TXX_THRESH(unsigned long offset,unsigned long block_id)282*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TXX_THRESH(unsigned long offset, unsigned long block_id)
283*4882a593Smuzhiyun {
284*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
285*4882a593Smuzhiyun 	case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
286*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000210ull) + ((offset) + (block_id) * 0x0ull) * 2048;
287*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
288*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000210ull) + ((offset) + (block_id) * 0x2000ull) * 2048;
289*4882a593Smuzhiyun 	}
290*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000210ull) + ((offset) + (block_id) * 0x10000ull) * 2048;
291*4882a593Smuzhiyun }
292*4882a593Smuzhiyun 
CVMX_GMXX_TX_INT_EN(unsigned long block_id)293*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TX_INT_EN(unsigned long block_id)
294*4882a593Smuzhiyun {
295*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
296*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
297*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000508ull) + (block_id) * 0x1000000ull;
298*4882a593Smuzhiyun 	}
299*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000508ull) + (block_id) * 0x8000000ull;
300*4882a593Smuzhiyun }
301*4882a593Smuzhiyun 
CVMX_GMXX_TX_INT_REG(unsigned long block_id)302*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TX_INT_REG(unsigned long block_id)
303*4882a593Smuzhiyun {
304*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
305*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
306*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000500ull) + (block_id) * 0x1000000ull;
307*4882a593Smuzhiyun 	}
308*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000500ull) + (block_id) * 0x8000000ull;
309*4882a593Smuzhiyun }
310*4882a593Smuzhiyun 
CVMX_GMXX_TX_OVR_BP(unsigned long block_id)311*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TX_OVR_BP(unsigned long block_id)
312*4882a593Smuzhiyun {
313*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
314*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
315*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x00011800080004C8ull) + (block_id) * 0x1000000ull;
316*4882a593Smuzhiyun 	}
317*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x00011800080004C8ull) + (block_id) * 0x8000000ull;
318*4882a593Smuzhiyun }
319*4882a593Smuzhiyun 
CVMX_GMXX_TX_PRTS(unsigned long block_id)320*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TX_PRTS(unsigned long block_id)
321*4882a593Smuzhiyun {
322*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
323*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
324*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000480ull) + (block_id) * 0x1000000ull;
325*4882a593Smuzhiyun 	}
326*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000480ull) + (block_id) * 0x8000000ull;
327*4882a593Smuzhiyun }
328*4882a593Smuzhiyun 
329*4882a593Smuzhiyun #define CVMX_GMXX_TX_SPI_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800080004C0ull) + ((block_id) & 1) * 0x8000000ull)
330*4882a593Smuzhiyun #define CVMX_GMXX_TX_SPI_MAX(block_id) (CVMX_ADD_IO_SEG(0x00011800080004B0ull) + ((block_id) & 1) * 0x8000000ull)
331*4882a593Smuzhiyun #define CVMX_GMXX_TX_SPI_THRESH(block_id) (CVMX_ADD_IO_SEG(0x00011800080004B8ull) + ((block_id) & 1) * 0x8000000ull)
CVMX_GMXX_TX_XAUI_CTL(unsigned long block_id)332*4882a593Smuzhiyun static inline uint64_t CVMX_GMXX_TX_XAUI_CTL(unsigned long block_id)
333*4882a593Smuzhiyun {
334*4882a593Smuzhiyun 	switch (cvmx_get_octeon_family()) {
335*4882a593Smuzhiyun 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
336*4882a593Smuzhiyun 		return CVMX_ADD_IO_SEG(0x0001180008000528ull) + (block_id) * 0x1000000ull;
337*4882a593Smuzhiyun 	}
338*4882a593Smuzhiyun 	return CVMX_ADD_IO_SEG(0x0001180008000528ull) + (block_id) * 0x8000000ull;
339*4882a593Smuzhiyun }
340*4882a593Smuzhiyun 
341*4882a593Smuzhiyun void __cvmx_interrupt_gmxx_enable(int interface);
342*4882a593Smuzhiyun 
343*4882a593Smuzhiyun union cvmx_gmxx_hg2_control {
344*4882a593Smuzhiyun 	uint64_t u64;
345*4882a593Smuzhiyun 	struct cvmx_gmxx_hg2_control_s {
346*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
347*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
348*4882a593Smuzhiyun 		uint64_t hg2tx_en:1;
349*4882a593Smuzhiyun 		uint64_t hg2rx_en:1;
350*4882a593Smuzhiyun 		uint64_t phys_en:1;
351*4882a593Smuzhiyun 		uint64_t logl_en:16;
352*4882a593Smuzhiyun #else
353*4882a593Smuzhiyun 		uint64_t logl_en:16;
354*4882a593Smuzhiyun 		uint64_t phys_en:1;
355*4882a593Smuzhiyun 		uint64_t hg2rx_en:1;
356*4882a593Smuzhiyun 		uint64_t hg2tx_en:1;
357*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
358*4882a593Smuzhiyun #endif
359*4882a593Smuzhiyun 	} s;
360*4882a593Smuzhiyun };
361*4882a593Smuzhiyun 
362*4882a593Smuzhiyun union cvmx_gmxx_inf_mode {
363*4882a593Smuzhiyun 	uint64_t u64;
364*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_s {
365*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
366*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
367*4882a593Smuzhiyun 		uint64_t rate:4;
368*4882a593Smuzhiyun 		uint64_t reserved_12_15:4;
369*4882a593Smuzhiyun 		uint64_t speed:4;
370*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
371*4882a593Smuzhiyun 		uint64_t mode:3;
372*4882a593Smuzhiyun 		uint64_t reserved_3_3:1;
373*4882a593Smuzhiyun 		uint64_t p0mii:1;
374*4882a593Smuzhiyun 		uint64_t en:1;
375*4882a593Smuzhiyun 		uint64_t type:1;
376*4882a593Smuzhiyun #else
377*4882a593Smuzhiyun 		uint64_t type:1;
378*4882a593Smuzhiyun 		uint64_t en:1;
379*4882a593Smuzhiyun 		uint64_t p0mii:1;
380*4882a593Smuzhiyun 		uint64_t reserved_3_3:1;
381*4882a593Smuzhiyun 		uint64_t mode:3;
382*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
383*4882a593Smuzhiyun 		uint64_t speed:4;
384*4882a593Smuzhiyun 		uint64_t reserved_12_15:4;
385*4882a593Smuzhiyun 		uint64_t rate:4;
386*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
387*4882a593Smuzhiyun #endif
388*4882a593Smuzhiyun 	} s;
389*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn30xx {
390*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
391*4882a593Smuzhiyun 		uint64_t reserved_3_63:61;
392*4882a593Smuzhiyun 		uint64_t p0mii:1;
393*4882a593Smuzhiyun 		uint64_t en:1;
394*4882a593Smuzhiyun 		uint64_t type:1;
395*4882a593Smuzhiyun #else
396*4882a593Smuzhiyun 		uint64_t type:1;
397*4882a593Smuzhiyun 		uint64_t en:1;
398*4882a593Smuzhiyun 		uint64_t p0mii:1;
399*4882a593Smuzhiyun 		uint64_t reserved_3_63:61;
400*4882a593Smuzhiyun #endif
401*4882a593Smuzhiyun 	} cn30xx;
402*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn31xx {
403*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
404*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
405*4882a593Smuzhiyun 		uint64_t en:1;
406*4882a593Smuzhiyun 		uint64_t type:1;
407*4882a593Smuzhiyun #else
408*4882a593Smuzhiyun 		uint64_t type:1;
409*4882a593Smuzhiyun 		uint64_t en:1;
410*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
411*4882a593Smuzhiyun #endif
412*4882a593Smuzhiyun 	} cn31xx;
413*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn52xx {
414*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
415*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
416*4882a593Smuzhiyun 		uint64_t speed:2;
417*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
418*4882a593Smuzhiyun 		uint64_t mode:2;
419*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
420*4882a593Smuzhiyun 		uint64_t en:1;
421*4882a593Smuzhiyun 		uint64_t type:1;
422*4882a593Smuzhiyun #else
423*4882a593Smuzhiyun 		uint64_t type:1;
424*4882a593Smuzhiyun 		uint64_t en:1;
425*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
426*4882a593Smuzhiyun 		uint64_t mode:2;
427*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
428*4882a593Smuzhiyun 		uint64_t speed:2;
429*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
430*4882a593Smuzhiyun #endif
431*4882a593Smuzhiyun 	} cn52xx;
432*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn61xx {
433*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
434*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
435*4882a593Smuzhiyun 		uint64_t speed:4;
436*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
437*4882a593Smuzhiyun 		uint64_t mode:1;
438*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
439*4882a593Smuzhiyun 		uint64_t en:1;
440*4882a593Smuzhiyun 		uint64_t type:1;
441*4882a593Smuzhiyun #else
442*4882a593Smuzhiyun 		uint64_t type:1;
443*4882a593Smuzhiyun 		uint64_t en:1;
444*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
445*4882a593Smuzhiyun 		uint64_t mode:1;
446*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
447*4882a593Smuzhiyun 		uint64_t speed:4;
448*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
449*4882a593Smuzhiyun #endif
450*4882a593Smuzhiyun 	} cn61xx;
451*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn66xx {
452*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
453*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
454*4882a593Smuzhiyun 		uint64_t rate:4;
455*4882a593Smuzhiyun 		uint64_t reserved_12_15:4;
456*4882a593Smuzhiyun 		uint64_t speed:4;
457*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
458*4882a593Smuzhiyun 		uint64_t mode:1;
459*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
460*4882a593Smuzhiyun 		uint64_t en:1;
461*4882a593Smuzhiyun 		uint64_t type:1;
462*4882a593Smuzhiyun #else
463*4882a593Smuzhiyun 		uint64_t type:1;
464*4882a593Smuzhiyun 		uint64_t en:1;
465*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
466*4882a593Smuzhiyun 		uint64_t mode:1;
467*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
468*4882a593Smuzhiyun 		uint64_t speed:4;
469*4882a593Smuzhiyun 		uint64_t reserved_12_15:4;
470*4882a593Smuzhiyun 		uint64_t rate:4;
471*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
472*4882a593Smuzhiyun #endif
473*4882a593Smuzhiyun 	} cn66xx;
474*4882a593Smuzhiyun 	struct cvmx_gmxx_inf_mode_cn68xx {
475*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
476*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
477*4882a593Smuzhiyun 		uint64_t speed:4;
478*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
479*4882a593Smuzhiyun 		uint64_t mode:3;
480*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
481*4882a593Smuzhiyun 		uint64_t en:1;
482*4882a593Smuzhiyun 		uint64_t type:1;
483*4882a593Smuzhiyun #else
484*4882a593Smuzhiyun 		uint64_t type:1;
485*4882a593Smuzhiyun 		uint64_t en:1;
486*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
487*4882a593Smuzhiyun 		uint64_t mode:3;
488*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
489*4882a593Smuzhiyun 		uint64_t speed:4;
490*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
491*4882a593Smuzhiyun #endif
492*4882a593Smuzhiyun 	} cn68xx;
493*4882a593Smuzhiyun };
494*4882a593Smuzhiyun 
495*4882a593Smuzhiyun union cvmx_gmxx_prtx_cfg {
496*4882a593Smuzhiyun 	uint64_t u64;
497*4882a593Smuzhiyun 	struct cvmx_gmxx_prtx_cfg_s {
498*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
499*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
500*4882a593Smuzhiyun 		uint64_t pknd:6;
501*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
502*4882a593Smuzhiyun 		uint64_t tx_idle:1;
503*4882a593Smuzhiyun 		uint64_t rx_idle:1;
504*4882a593Smuzhiyun 		uint64_t reserved_9_11:3;
505*4882a593Smuzhiyun 		uint64_t speed_msb:1;
506*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
507*4882a593Smuzhiyun 		uint64_t slottime:1;
508*4882a593Smuzhiyun 		uint64_t duplex:1;
509*4882a593Smuzhiyun 		uint64_t speed:1;
510*4882a593Smuzhiyun 		uint64_t en:1;
511*4882a593Smuzhiyun #else
512*4882a593Smuzhiyun 		uint64_t en:1;
513*4882a593Smuzhiyun 		uint64_t speed:1;
514*4882a593Smuzhiyun 		uint64_t duplex:1;
515*4882a593Smuzhiyun 		uint64_t slottime:1;
516*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
517*4882a593Smuzhiyun 		uint64_t speed_msb:1;
518*4882a593Smuzhiyun 		uint64_t reserved_9_11:3;
519*4882a593Smuzhiyun 		uint64_t rx_idle:1;
520*4882a593Smuzhiyun 		uint64_t tx_idle:1;
521*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
522*4882a593Smuzhiyun 		uint64_t pknd:6;
523*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
524*4882a593Smuzhiyun #endif
525*4882a593Smuzhiyun 	} s;
526*4882a593Smuzhiyun 	struct cvmx_gmxx_prtx_cfg_cn30xx {
527*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
528*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
529*4882a593Smuzhiyun 		uint64_t slottime:1;
530*4882a593Smuzhiyun 		uint64_t duplex:1;
531*4882a593Smuzhiyun 		uint64_t speed:1;
532*4882a593Smuzhiyun 		uint64_t en:1;
533*4882a593Smuzhiyun #else
534*4882a593Smuzhiyun 		uint64_t en:1;
535*4882a593Smuzhiyun 		uint64_t speed:1;
536*4882a593Smuzhiyun 		uint64_t duplex:1;
537*4882a593Smuzhiyun 		uint64_t slottime:1;
538*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
539*4882a593Smuzhiyun #endif
540*4882a593Smuzhiyun 	} cn30xx;
541*4882a593Smuzhiyun 	struct cvmx_gmxx_prtx_cfg_cn52xx {
542*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
543*4882a593Smuzhiyun 		uint64_t reserved_14_63:50;
544*4882a593Smuzhiyun 		uint64_t tx_idle:1;
545*4882a593Smuzhiyun 		uint64_t rx_idle:1;
546*4882a593Smuzhiyun 		uint64_t reserved_9_11:3;
547*4882a593Smuzhiyun 		uint64_t speed_msb:1;
548*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
549*4882a593Smuzhiyun 		uint64_t slottime:1;
550*4882a593Smuzhiyun 		uint64_t duplex:1;
551*4882a593Smuzhiyun 		uint64_t speed:1;
552*4882a593Smuzhiyun 		uint64_t en:1;
553*4882a593Smuzhiyun #else
554*4882a593Smuzhiyun 		uint64_t en:1;
555*4882a593Smuzhiyun 		uint64_t speed:1;
556*4882a593Smuzhiyun 		uint64_t duplex:1;
557*4882a593Smuzhiyun 		uint64_t slottime:1;
558*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
559*4882a593Smuzhiyun 		uint64_t speed_msb:1;
560*4882a593Smuzhiyun 		uint64_t reserved_9_11:3;
561*4882a593Smuzhiyun 		uint64_t rx_idle:1;
562*4882a593Smuzhiyun 		uint64_t tx_idle:1;
563*4882a593Smuzhiyun 		uint64_t reserved_14_63:50;
564*4882a593Smuzhiyun #endif
565*4882a593Smuzhiyun 	} cn52xx;
566*4882a593Smuzhiyun };
567*4882a593Smuzhiyun 
568*4882a593Smuzhiyun union cvmx_gmxx_rxx_adr_ctl {
569*4882a593Smuzhiyun 	uint64_t u64;
570*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_adr_ctl_s {
571*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
572*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
573*4882a593Smuzhiyun 		uint64_t cam_mode:1;
574*4882a593Smuzhiyun 		uint64_t mcst:2;
575*4882a593Smuzhiyun 		uint64_t bcst:1;
576*4882a593Smuzhiyun #else
577*4882a593Smuzhiyun 		uint64_t bcst:1;
578*4882a593Smuzhiyun 		uint64_t mcst:2;
579*4882a593Smuzhiyun 		uint64_t cam_mode:1;
580*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
581*4882a593Smuzhiyun #endif
582*4882a593Smuzhiyun 	} s;
583*4882a593Smuzhiyun };
584*4882a593Smuzhiyun 
585*4882a593Smuzhiyun union cvmx_gmxx_rxx_frm_ctl {
586*4882a593Smuzhiyun 	uint64_t u64;
587*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_s {
588*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
589*4882a593Smuzhiyun 		uint64_t reserved_13_63:51;
590*4882a593Smuzhiyun 		uint64_t ptp_mode:1;
591*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
592*4882a593Smuzhiyun 		uint64_t null_dis:1;
593*4882a593Smuzhiyun 		uint64_t pre_align:1;
594*4882a593Smuzhiyun 		uint64_t pad_len:1;
595*4882a593Smuzhiyun 		uint64_t vlan_len:1;
596*4882a593Smuzhiyun 		uint64_t pre_free:1;
597*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
598*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
599*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
600*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
601*4882a593Smuzhiyun 		uint64_t pre_strp:1;
602*4882a593Smuzhiyun 		uint64_t pre_chk:1;
603*4882a593Smuzhiyun #else
604*4882a593Smuzhiyun 		uint64_t pre_chk:1;
605*4882a593Smuzhiyun 		uint64_t pre_strp:1;
606*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
607*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
608*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
609*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
610*4882a593Smuzhiyun 		uint64_t pre_free:1;
611*4882a593Smuzhiyun 		uint64_t vlan_len:1;
612*4882a593Smuzhiyun 		uint64_t pad_len:1;
613*4882a593Smuzhiyun 		uint64_t pre_align:1;
614*4882a593Smuzhiyun 		uint64_t null_dis:1;
615*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
616*4882a593Smuzhiyun 		uint64_t ptp_mode:1;
617*4882a593Smuzhiyun 		uint64_t reserved_13_63:51;
618*4882a593Smuzhiyun #endif
619*4882a593Smuzhiyun 	} s;
620*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn30xx {
621*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
622*4882a593Smuzhiyun 		uint64_t reserved_9_63:55;
623*4882a593Smuzhiyun 		uint64_t pad_len:1;
624*4882a593Smuzhiyun 		uint64_t vlan_len:1;
625*4882a593Smuzhiyun 		uint64_t pre_free:1;
626*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
627*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
628*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
629*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
630*4882a593Smuzhiyun 		uint64_t pre_strp:1;
631*4882a593Smuzhiyun 		uint64_t pre_chk:1;
632*4882a593Smuzhiyun #else
633*4882a593Smuzhiyun 		uint64_t pre_chk:1;
634*4882a593Smuzhiyun 		uint64_t pre_strp:1;
635*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
636*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
637*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
638*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
639*4882a593Smuzhiyun 		uint64_t pre_free:1;
640*4882a593Smuzhiyun 		uint64_t vlan_len:1;
641*4882a593Smuzhiyun 		uint64_t pad_len:1;
642*4882a593Smuzhiyun 		uint64_t reserved_9_63:55;
643*4882a593Smuzhiyun #endif
644*4882a593Smuzhiyun 	} cn30xx;
645*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn31xx {
646*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
647*4882a593Smuzhiyun 		uint64_t reserved_8_63:56;
648*4882a593Smuzhiyun 		uint64_t vlan_len:1;
649*4882a593Smuzhiyun 		uint64_t pre_free:1;
650*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
651*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
652*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
653*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
654*4882a593Smuzhiyun 		uint64_t pre_strp:1;
655*4882a593Smuzhiyun 		uint64_t pre_chk:1;
656*4882a593Smuzhiyun #else
657*4882a593Smuzhiyun 		uint64_t pre_chk:1;
658*4882a593Smuzhiyun 		uint64_t pre_strp:1;
659*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
660*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
661*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
662*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
663*4882a593Smuzhiyun 		uint64_t pre_free:1;
664*4882a593Smuzhiyun 		uint64_t vlan_len:1;
665*4882a593Smuzhiyun 		uint64_t reserved_8_63:56;
666*4882a593Smuzhiyun #endif
667*4882a593Smuzhiyun 	} cn31xx;
668*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn50xx {
669*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
670*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
671*4882a593Smuzhiyun 		uint64_t null_dis:1;
672*4882a593Smuzhiyun 		uint64_t pre_align:1;
673*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
674*4882a593Smuzhiyun 		uint64_t pre_free:1;
675*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
676*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
677*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
678*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
679*4882a593Smuzhiyun 		uint64_t pre_strp:1;
680*4882a593Smuzhiyun 		uint64_t pre_chk:1;
681*4882a593Smuzhiyun #else
682*4882a593Smuzhiyun 		uint64_t pre_chk:1;
683*4882a593Smuzhiyun 		uint64_t pre_strp:1;
684*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
685*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
686*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
687*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
688*4882a593Smuzhiyun 		uint64_t pre_free:1;
689*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
690*4882a593Smuzhiyun 		uint64_t pre_align:1;
691*4882a593Smuzhiyun 		uint64_t null_dis:1;
692*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
693*4882a593Smuzhiyun #endif
694*4882a593Smuzhiyun 	} cn50xx;
695*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn56xxp1 {
696*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
697*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
698*4882a593Smuzhiyun 		uint64_t pre_align:1;
699*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
700*4882a593Smuzhiyun 		uint64_t pre_free:1;
701*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
702*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
703*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
704*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
705*4882a593Smuzhiyun 		uint64_t pre_strp:1;
706*4882a593Smuzhiyun 		uint64_t pre_chk:1;
707*4882a593Smuzhiyun #else
708*4882a593Smuzhiyun 		uint64_t pre_chk:1;
709*4882a593Smuzhiyun 		uint64_t pre_strp:1;
710*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
711*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
712*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
713*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
714*4882a593Smuzhiyun 		uint64_t pre_free:1;
715*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
716*4882a593Smuzhiyun 		uint64_t pre_align:1;
717*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
718*4882a593Smuzhiyun #endif
719*4882a593Smuzhiyun 	} cn56xxp1;
720*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn58xx {
721*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
722*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
723*4882a593Smuzhiyun 		uint64_t null_dis:1;
724*4882a593Smuzhiyun 		uint64_t pre_align:1;
725*4882a593Smuzhiyun 		uint64_t pad_len:1;
726*4882a593Smuzhiyun 		uint64_t vlan_len:1;
727*4882a593Smuzhiyun 		uint64_t pre_free:1;
728*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
729*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
730*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
731*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
732*4882a593Smuzhiyun 		uint64_t pre_strp:1;
733*4882a593Smuzhiyun 		uint64_t pre_chk:1;
734*4882a593Smuzhiyun #else
735*4882a593Smuzhiyun 		uint64_t pre_chk:1;
736*4882a593Smuzhiyun 		uint64_t pre_strp:1;
737*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
738*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
739*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
740*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
741*4882a593Smuzhiyun 		uint64_t pre_free:1;
742*4882a593Smuzhiyun 		uint64_t vlan_len:1;
743*4882a593Smuzhiyun 		uint64_t pad_len:1;
744*4882a593Smuzhiyun 		uint64_t pre_align:1;
745*4882a593Smuzhiyun 		uint64_t null_dis:1;
746*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
747*4882a593Smuzhiyun #endif
748*4882a593Smuzhiyun 	} cn58xx;
749*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_ctl_cn61xx {
750*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
751*4882a593Smuzhiyun 		uint64_t reserved_13_63:51;
752*4882a593Smuzhiyun 		uint64_t ptp_mode:1;
753*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
754*4882a593Smuzhiyun 		uint64_t null_dis:1;
755*4882a593Smuzhiyun 		uint64_t pre_align:1;
756*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
757*4882a593Smuzhiyun 		uint64_t pre_free:1;
758*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
759*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
760*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
761*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
762*4882a593Smuzhiyun 		uint64_t pre_strp:1;
763*4882a593Smuzhiyun 		uint64_t pre_chk:1;
764*4882a593Smuzhiyun #else
765*4882a593Smuzhiyun 		uint64_t pre_chk:1;
766*4882a593Smuzhiyun 		uint64_t pre_strp:1;
767*4882a593Smuzhiyun 		uint64_t ctl_drp:1;
768*4882a593Smuzhiyun 		uint64_t ctl_bck:1;
769*4882a593Smuzhiyun 		uint64_t ctl_mcst:1;
770*4882a593Smuzhiyun 		uint64_t ctl_smac:1;
771*4882a593Smuzhiyun 		uint64_t pre_free:1;
772*4882a593Smuzhiyun 		uint64_t reserved_7_8:2;
773*4882a593Smuzhiyun 		uint64_t pre_align:1;
774*4882a593Smuzhiyun 		uint64_t null_dis:1;
775*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
776*4882a593Smuzhiyun 		uint64_t ptp_mode:1;
777*4882a593Smuzhiyun 		uint64_t reserved_13_63:51;
778*4882a593Smuzhiyun #endif
779*4882a593Smuzhiyun 	} cn61xx;
780*4882a593Smuzhiyun };
781*4882a593Smuzhiyun 
782*4882a593Smuzhiyun union cvmx_gmxx_rxx_frm_max {
783*4882a593Smuzhiyun 	uint64_t u64;
784*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_max_s {
785*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
786*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
787*4882a593Smuzhiyun 		uint64_t len:16;
788*4882a593Smuzhiyun #else
789*4882a593Smuzhiyun 		uint64_t len:16;
790*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
791*4882a593Smuzhiyun #endif
792*4882a593Smuzhiyun 	} s;
793*4882a593Smuzhiyun };
794*4882a593Smuzhiyun 
795*4882a593Smuzhiyun union cvmx_gmxx_rxx_frm_min {
796*4882a593Smuzhiyun 	uint64_t u64;
797*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_frm_min_s {
798*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
799*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
800*4882a593Smuzhiyun 		uint64_t len:16;
801*4882a593Smuzhiyun #else
802*4882a593Smuzhiyun 		uint64_t len:16;
803*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
804*4882a593Smuzhiyun #endif
805*4882a593Smuzhiyun 	} s;
806*4882a593Smuzhiyun };
807*4882a593Smuzhiyun 
808*4882a593Smuzhiyun union cvmx_gmxx_rxx_int_en {
809*4882a593Smuzhiyun 	uint64_t u64;
810*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_s {
811*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
812*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
813*4882a593Smuzhiyun 		uint64_t hg2cc:1;
814*4882a593Smuzhiyun 		uint64_t hg2fld:1;
815*4882a593Smuzhiyun 		uint64_t undat:1;
816*4882a593Smuzhiyun 		uint64_t uneop:1;
817*4882a593Smuzhiyun 		uint64_t unsop:1;
818*4882a593Smuzhiyun 		uint64_t bad_term:1;
819*4882a593Smuzhiyun 		uint64_t bad_seq:1;
820*4882a593Smuzhiyun 		uint64_t rem_fault:1;
821*4882a593Smuzhiyun 		uint64_t loc_fault:1;
822*4882a593Smuzhiyun 		uint64_t pause_drp:1;
823*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
824*4882a593Smuzhiyun 		uint64_t phy_spd:1;
825*4882a593Smuzhiyun 		uint64_t phy_link:1;
826*4882a593Smuzhiyun 		uint64_t ifgerr:1;
827*4882a593Smuzhiyun 		uint64_t coldet:1;
828*4882a593Smuzhiyun 		uint64_t falerr:1;
829*4882a593Smuzhiyun 		uint64_t rsverr:1;
830*4882a593Smuzhiyun 		uint64_t pcterr:1;
831*4882a593Smuzhiyun 		uint64_t ovrerr:1;
832*4882a593Smuzhiyun 		uint64_t niberr:1;
833*4882a593Smuzhiyun 		uint64_t skperr:1;
834*4882a593Smuzhiyun 		uint64_t rcverr:1;
835*4882a593Smuzhiyun 		uint64_t lenerr:1;
836*4882a593Smuzhiyun 		uint64_t alnerr:1;
837*4882a593Smuzhiyun 		uint64_t fcserr:1;
838*4882a593Smuzhiyun 		uint64_t jabber:1;
839*4882a593Smuzhiyun 		uint64_t maxerr:1;
840*4882a593Smuzhiyun 		uint64_t carext:1;
841*4882a593Smuzhiyun 		uint64_t minerr:1;
842*4882a593Smuzhiyun #else
843*4882a593Smuzhiyun 		uint64_t minerr:1;
844*4882a593Smuzhiyun 		uint64_t carext:1;
845*4882a593Smuzhiyun 		uint64_t maxerr:1;
846*4882a593Smuzhiyun 		uint64_t jabber:1;
847*4882a593Smuzhiyun 		uint64_t fcserr:1;
848*4882a593Smuzhiyun 		uint64_t alnerr:1;
849*4882a593Smuzhiyun 		uint64_t lenerr:1;
850*4882a593Smuzhiyun 		uint64_t rcverr:1;
851*4882a593Smuzhiyun 		uint64_t skperr:1;
852*4882a593Smuzhiyun 		uint64_t niberr:1;
853*4882a593Smuzhiyun 		uint64_t ovrerr:1;
854*4882a593Smuzhiyun 		uint64_t pcterr:1;
855*4882a593Smuzhiyun 		uint64_t rsverr:1;
856*4882a593Smuzhiyun 		uint64_t falerr:1;
857*4882a593Smuzhiyun 		uint64_t coldet:1;
858*4882a593Smuzhiyun 		uint64_t ifgerr:1;
859*4882a593Smuzhiyun 		uint64_t phy_link:1;
860*4882a593Smuzhiyun 		uint64_t phy_spd:1;
861*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
862*4882a593Smuzhiyun 		uint64_t pause_drp:1;
863*4882a593Smuzhiyun 		uint64_t loc_fault:1;
864*4882a593Smuzhiyun 		uint64_t rem_fault:1;
865*4882a593Smuzhiyun 		uint64_t bad_seq:1;
866*4882a593Smuzhiyun 		uint64_t bad_term:1;
867*4882a593Smuzhiyun 		uint64_t unsop:1;
868*4882a593Smuzhiyun 		uint64_t uneop:1;
869*4882a593Smuzhiyun 		uint64_t undat:1;
870*4882a593Smuzhiyun 		uint64_t hg2fld:1;
871*4882a593Smuzhiyun 		uint64_t hg2cc:1;
872*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
873*4882a593Smuzhiyun #endif
874*4882a593Smuzhiyun 	} s;
875*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn30xx {
876*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
877*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
878*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
879*4882a593Smuzhiyun 		uint64_t phy_spd:1;
880*4882a593Smuzhiyun 		uint64_t phy_link:1;
881*4882a593Smuzhiyun 		uint64_t ifgerr:1;
882*4882a593Smuzhiyun 		uint64_t coldet:1;
883*4882a593Smuzhiyun 		uint64_t falerr:1;
884*4882a593Smuzhiyun 		uint64_t rsverr:1;
885*4882a593Smuzhiyun 		uint64_t pcterr:1;
886*4882a593Smuzhiyun 		uint64_t ovrerr:1;
887*4882a593Smuzhiyun 		uint64_t niberr:1;
888*4882a593Smuzhiyun 		uint64_t skperr:1;
889*4882a593Smuzhiyun 		uint64_t rcverr:1;
890*4882a593Smuzhiyun 		uint64_t lenerr:1;
891*4882a593Smuzhiyun 		uint64_t alnerr:1;
892*4882a593Smuzhiyun 		uint64_t fcserr:1;
893*4882a593Smuzhiyun 		uint64_t jabber:1;
894*4882a593Smuzhiyun 		uint64_t maxerr:1;
895*4882a593Smuzhiyun 		uint64_t carext:1;
896*4882a593Smuzhiyun 		uint64_t minerr:1;
897*4882a593Smuzhiyun #else
898*4882a593Smuzhiyun 		uint64_t minerr:1;
899*4882a593Smuzhiyun 		uint64_t carext:1;
900*4882a593Smuzhiyun 		uint64_t maxerr:1;
901*4882a593Smuzhiyun 		uint64_t jabber:1;
902*4882a593Smuzhiyun 		uint64_t fcserr:1;
903*4882a593Smuzhiyun 		uint64_t alnerr:1;
904*4882a593Smuzhiyun 		uint64_t lenerr:1;
905*4882a593Smuzhiyun 		uint64_t rcverr:1;
906*4882a593Smuzhiyun 		uint64_t skperr:1;
907*4882a593Smuzhiyun 		uint64_t niberr:1;
908*4882a593Smuzhiyun 		uint64_t ovrerr:1;
909*4882a593Smuzhiyun 		uint64_t pcterr:1;
910*4882a593Smuzhiyun 		uint64_t rsverr:1;
911*4882a593Smuzhiyun 		uint64_t falerr:1;
912*4882a593Smuzhiyun 		uint64_t coldet:1;
913*4882a593Smuzhiyun 		uint64_t ifgerr:1;
914*4882a593Smuzhiyun 		uint64_t phy_link:1;
915*4882a593Smuzhiyun 		uint64_t phy_spd:1;
916*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
917*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
918*4882a593Smuzhiyun #endif
919*4882a593Smuzhiyun 	} cn30xx;
920*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn50xx {
921*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
922*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
923*4882a593Smuzhiyun 		uint64_t pause_drp:1;
924*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
925*4882a593Smuzhiyun 		uint64_t phy_spd:1;
926*4882a593Smuzhiyun 		uint64_t phy_link:1;
927*4882a593Smuzhiyun 		uint64_t ifgerr:1;
928*4882a593Smuzhiyun 		uint64_t coldet:1;
929*4882a593Smuzhiyun 		uint64_t falerr:1;
930*4882a593Smuzhiyun 		uint64_t rsverr:1;
931*4882a593Smuzhiyun 		uint64_t pcterr:1;
932*4882a593Smuzhiyun 		uint64_t ovrerr:1;
933*4882a593Smuzhiyun 		uint64_t niberr:1;
934*4882a593Smuzhiyun 		uint64_t skperr:1;
935*4882a593Smuzhiyun 		uint64_t rcverr:1;
936*4882a593Smuzhiyun 		uint64_t reserved_6_6:1;
937*4882a593Smuzhiyun 		uint64_t alnerr:1;
938*4882a593Smuzhiyun 		uint64_t fcserr:1;
939*4882a593Smuzhiyun 		uint64_t jabber:1;
940*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
941*4882a593Smuzhiyun 		uint64_t carext:1;
942*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
943*4882a593Smuzhiyun #else
944*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
945*4882a593Smuzhiyun 		uint64_t carext:1;
946*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
947*4882a593Smuzhiyun 		uint64_t jabber:1;
948*4882a593Smuzhiyun 		uint64_t fcserr:1;
949*4882a593Smuzhiyun 		uint64_t alnerr:1;
950*4882a593Smuzhiyun 		uint64_t reserved_6_6:1;
951*4882a593Smuzhiyun 		uint64_t rcverr:1;
952*4882a593Smuzhiyun 		uint64_t skperr:1;
953*4882a593Smuzhiyun 		uint64_t niberr:1;
954*4882a593Smuzhiyun 		uint64_t ovrerr:1;
955*4882a593Smuzhiyun 		uint64_t pcterr:1;
956*4882a593Smuzhiyun 		uint64_t rsverr:1;
957*4882a593Smuzhiyun 		uint64_t falerr:1;
958*4882a593Smuzhiyun 		uint64_t coldet:1;
959*4882a593Smuzhiyun 		uint64_t ifgerr:1;
960*4882a593Smuzhiyun 		uint64_t phy_link:1;
961*4882a593Smuzhiyun 		uint64_t phy_spd:1;
962*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
963*4882a593Smuzhiyun 		uint64_t pause_drp:1;
964*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
965*4882a593Smuzhiyun #endif
966*4882a593Smuzhiyun 	} cn50xx;
967*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn52xx {
968*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
969*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
970*4882a593Smuzhiyun 		uint64_t hg2cc:1;
971*4882a593Smuzhiyun 		uint64_t hg2fld:1;
972*4882a593Smuzhiyun 		uint64_t undat:1;
973*4882a593Smuzhiyun 		uint64_t uneop:1;
974*4882a593Smuzhiyun 		uint64_t unsop:1;
975*4882a593Smuzhiyun 		uint64_t bad_term:1;
976*4882a593Smuzhiyun 		uint64_t bad_seq:1;
977*4882a593Smuzhiyun 		uint64_t rem_fault:1;
978*4882a593Smuzhiyun 		uint64_t loc_fault:1;
979*4882a593Smuzhiyun 		uint64_t pause_drp:1;
980*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
981*4882a593Smuzhiyun 		uint64_t ifgerr:1;
982*4882a593Smuzhiyun 		uint64_t coldet:1;
983*4882a593Smuzhiyun 		uint64_t falerr:1;
984*4882a593Smuzhiyun 		uint64_t rsverr:1;
985*4882a593Smuzhiyun 		uint64_t pcterr:1;
986*4882a593Smuzhiyun 		uint64_t ovrerr:1;
987*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
988*4882a593Smuzhiyun 		uint64_t skperr:1;
989*4882a593Smuzhiyun 		uint64_t rcverr:1;
990*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
991*4882a593Smuzhiyun 		uint64_t fcserr:1;
992*4882a593Smuzhiyun 		uint64_t jabber:1;
993*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
994*4882a593Smuzhiyun 		uint64_t carext:1;
995*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
996*4882a593Smuzhiyun #else
997*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
998*4882a593Smuzhiyun 		uint64_t carext:1;
999*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1000*4882a593Smuzhiyun 		uint64_t jabber:1;
1001*4882a593Smuzhiyun 		uint64_t fcserr:1;
1002*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1003*4882a593Smuzhiyun 		uint64_t rcverr:1;
1004*4882a593Smuzhiyun 		uint64_t skperr:1;
1005*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1006*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1007*4882a593Smuzhiyun 		uint64_t pcterr:1;
1008*4882a593Smuzhiyun 		uint64_t rsverr:1;
1009*4882a593Smuzhiyun 		uint64_t falerr:1;
1010*4882a593Smuzhiyun 		uint64_t coldet:1;
1011*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1012*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1013*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1014*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1015*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1016*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1017*4882a593Smuzhiyun 		uint64_t bad_term:1;
1018*4882a593Smuzhiyun 		uint64_t unsop:1;
1019*4882a593Smuzhiyun 		uint64_t uneop:1;
1020*4882a593Smuzhiyun 		uint64_t undat:1;
1021*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1022*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1023*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1024*4882a593Smuzhiyun #endif
1025*4882a593Smuzhiyun 	} cn52xx;
1026*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn56xxp1 {
1027*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1028*4882a593Smuzhiyun 		uint64_t reserved_27_63:37;
1029*4882a593Smuzhiyun 		uint64_t undat:1;
1030*4882a593Smuzhiyun 		uint64_t uneop:1;
1031*4882a593Smuzhiyun 		uint64_t unsop:1;
1032*4882a593Smuzhiyun 		uint64_t bad_term:1;
1033*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1034*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1035*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1036*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1037*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1038*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1039*4882a593Smuzhiyun 		uint64_t coldet:1;
1040*4882a593Smuzhiyun 		uint64_t falerr:1;
1041*4882a593Smuzhiyun 		uint64_t rsverr:1;
1042*4882a593Smuzhiyun 		uint64_t pcterr:1;
1043*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1044*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1045*4882a593Smuzhiyun 		uint64_t skperr:1;
1046*4882a593Smuzhiyun 		uint64_t rcverr:1;
1047*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1048*4882a593Smuzhiyun 		uint64_t fcserr:1;
1049*4882a593Smuzhiyun 		uint64_t jabber:1;
1050*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1051*4882a593Smuzhiyun 		uint64_t carext:1;
1052*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1053*4882a593Smuzhiyun #else
1054*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1055*4882a593Smuzhiyun 		uint64_t carext:1;
1056*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1057*4882a593Smuzhiyun 		uint64_t jabber:1;
1058*4882a593Smuzhiyun 		uint64_t fcserr:1;
1059*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1060*4882a593Smuzhiyun 		uint64_t rcverr:1;
1061*4882a593Smuzhiyun 		uint64_t skperr:1;
1062*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1063*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1064*4882a593Smuzhiyun 		uint64_t pcterr:1;
1065*4882a593Smuzhiyun 		uint64_t rsverr:1;
1066*4882a593Smuzhiyun 		uint64_t falerr:1;
1067*4882a593Smuzhiyun 		uint64_t coldet:1;
1068*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1069*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1070*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1071*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1072*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1073*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1074*4882a593Smuzhiyun 		uint64_t bad_term:1;
1075*4882a593Smuzhiyun 		uint64_t unsop:1;
1076*4882a593Smuzhiyun 		uint64_t uneop:1;
1077*4882a593Smuzhiyun 		uint64_t undat:1;
1078*4882a593Smuzhiyun 		uint64_t reserved_27_63:37;
1079*4882a593Smuzhiyun #endif
1080*4882a593Smuzhiyun 	} cn56xxp1;
1081*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn58xx {
1082*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1083*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1084*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1085*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1086*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1087*4882a593Smuzhiyun 		uint64_t phy_link:1;
1088*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1089*4882a593Smuzhiyun 		uint64_t coldet:1;
1090*4882a593Smuzhiyun 		uint64_t falerr:1;
1091*4882a593Smuzhiyun 		uint64_t rsverr:1;
1092*4882a593Smuzhiyun 		uint64_t pcterr:1;
1093*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1094*4882a593Smuzhiyun 		uint64_t niberr:1;
1095*4882a593Smuzhiyun 		uint64_t skperr:1;
1096*4882a593Smuzhiyun 		uint64_t rcverr:1;
1097*4882a593Smuzhiyun 		uint64_t lenerr:1;
1098*4882a593Smuzhiyun 		uint64_t alnerr:1;
1099*4882a593Smuzhiyun 		uint64_t fcserr:1;
1100*4882a593Smuzhiyun 		uint64_t jabber:1;
1101*4882a593Smuzhiyun 		uint64_t maxerr:1;
1102*4882a593Smuzhiyun 		uint64_t carext:1;
1103*4882a593Smuzhiyun 		uint64_t minerr:1;
1104*4882a593Smuzhiyun #else
1105*4882a593Smuzhiyun 		uint64_t minerr:1;
1106*4882a593Smuzhiyun 		uint64_t carext:1;
1107*4882a593Smuzhiyun 		uint64_t maxerr:1;
1108*4882a593Smuzhiyun 		uint64_t jabber:1;
1109*4882a593Smuzhiyun 		uint64_t fcserr:1;
1110*4882a593Smuzhiyun 		uint64_t alnerr:1;
1111*4882a593Smuzhiyun 		uint64_t lenerr:1;
1112*4882a593Smuzhiyun 		uint64_t rcverr:1;
1113*4882a593Smuzhiyun 		uint64_t skperr:1;
1114*4882a593Smuzhiyun 		uint64_t niberr:1;
1115*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1116*4882a593Smuzhiyun 		uint64_t pcterr:1;
1117*4882a593Smuzhiyun 		uint64_t rsverr:1;
1118*4882a593Smuzhiyun 		uint64_t falerr:1;
1119*4882a593Smuzhiyun 		uint64_t coldet:1;
1120*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1121*4882a593Smuzhiyun 		uint64_t phy_link:1;
1122*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1123*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1124*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1125*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1126*4882a593Smuzhiyun #endif
1127*4882a593Smuzhiyun 	} cn58xx;
1128*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_en_cn61xx {
1129*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1130*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1131*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1132*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1133*4882a593Smuzhiyun 		uint64_t undat:1;
1134*4882a593Smuzhiyun 		uint64_t uneop:1;
1135*4882a593Smuzhiyun 		uint64_t unsop:1;
1136*4882a593Smuzhiyun 		uint64_t bad_term:1;
1137*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1138*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1139*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1140*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1141*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1142*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1143*4882a593Smuzhiyun 		uint64_t coldet:1;
1144*4882a593Smuzhiyun 		uint64_t falerr:1;
1145*4882a593Smuzhiyun 		uint64_t rsverr:1;
1146*4882a593Smuzhiyun 		uint64_t pcterr:1;
1147*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1148*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1149*4882a593Smuzhiyun 		uint64_t skperr:1;
1150*4882a593Smuzhiyun 		uint64_t rcverr:1;
1151*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1152*4882a593Smuzhiyun 		uint64_t fcserr:1;
1153*4882a593Smuzhiyun 		uint64_t jabber:1;
1154*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1155*4882a593Smuzhiyun 		uint64_t carext:1;
1156*4882a593Smuzhiyun 		uint64_t minerr:1;
1157*4882a593Smuzhiyun #else
1158*4882a593Smuzhiyun 		uint64_t minerr:1;
1159*4882a593Smuzhiyun 		uint64_t carext:1;
1160*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1161*4882a593Smuzhiyun 		uint64_t jabber:1;
1162*4882a593Smuzhiyun 		uint64_t fcserr:1;
1163*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1164*4882a593Smuzhiyun 		uint64_t rcverr:1;
1165*4882a593Smuzhiyun 		uint64_t skperr:1;
1166*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1167*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1168*4882a593Smuzhiyun 		uint64_t pcterr:1;
1169*4882a593Smuzhiyun 		uint64_t rsverr:1;
1170*4882a593Smuzhiyun 		uint64_t falerr:1;
1171*4882a593Smuzhiyun 		uint64_t coldet:1;
1172*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1173*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1174*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1175*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1176*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1177*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1178*4882a593Smuzhiyun 		uint64_t bad_term:1;
1179*4882a593Smuzhiyun 		uint64_t unsop:1;
1180*4882a593Smuzhiyun 		uint64_t uneop:1;
1181*4882a593Smuzhiyun 		uint64_t undat:1;
1182*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1183*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1184*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1185*4882a593Smuzhiyun #endif
1186*4882a593Smuzhiyun 	} cn61xx;
1187*4882a593Smuzhiyun };
1188*4882a593Smuzhiyun 
1189*4882a593Smuzhiyun union cvmx_gmxx_rxx_int_reg {
1190*4882a593Smuzhiyun 	uint64_t u64;
1191*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_s {
1192*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1193*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1194*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1195*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1196*4882a593Smuzhiyun 		uint64_t undat:1;
1197*4882a593Smuzhiyun 		uint64_t uneop:1;
1198*4882a593Smuzhiyun 		uint64_t unsop:1;
1199*4882a593Smuzhiyun 		uint64_t bad_term:1;
1200*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1201*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1202*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1203*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1204*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1205*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1206*4882a593Smuzhiyun 		uint64_t phy_link:1;
1207*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1208*4882a593Smuzhiyun 		uint64_t coldet:1;
1209*4882a593Smuzhiyun 		uint64_t falerr:1;
1210*4882a593Smuzhiyun 		uint64_t rsverr:1;
1211*4882a593Smuzhiyun 		uint64_t pcterr:1;
1212*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1213*4882a593Smuzhiyun 		uint64_t niberr:1;
1214*4882a593Smuzhiyun 		uint64_t skperr:1;
1215*4882a593Smuzhiyun 		uint64_t rcverr:1;
1216*4882a593Smuzhiyun 		uint64_t lenerr:1;
1217*4882a593Smuzhiyun 		uint64_t alnerr:1;
1218*4882a593Smuzhiyun 		uint64_t fcserr:1;
1219*4882a593Smuzhiyun 		uint64_t jabber:1;
1220*4882a593Smuzhiyun 		uint64_t maxerr:1;
1221*4882a593Smuzhiyun 		uint64_t carext:1;
1222*4882a593Smuzhiyun 		uint64_t minerr:1;
1223*4882a593Smuzhiyun #else
1224*4882a593Smuzhiyun 		uint64_t minerr:1;
1225*4882a593Smuzhiyun 		uint64_t carext:1;
1226*4882a593Smuzhiyun 		uint64_t maxerr:1;
1227*4882a593Smuzhiyun 		uint64_t jabber:1;
1228*4882a593Smuzhiyun 		uint64_t fcserr:1;
1229*4882a593Smuzhiyun 		uint64_t alnerr:1;
1230*4882a593Smuzhiyun 		uint64_t lenerr:1;
1231*4882a593Smuzhiyun 		uint64_t rcverr:1;
1232*4882a593Smuzhiyun 		uint64_t skperr:1;
1233*4882a593Smuzhiyun 		uint64_t niberr:1;
1234*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1235*4882a593Smuzhiyun 		uint64_t pcterr:1;
1236*4882a593Smuzhiyun 		uint64_t rsverr:1;
1237*4882a593Smuzhiyun 		uint64_t falerr:1;
1238*4882a593Smuzhiyun 		uint64_t coldet:1;
1239*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1240*4882a593Smuzhiyun 		uint64_t phy_link:1;
1241*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1242*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1243*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1244*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1245*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1246*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1247*4882a593Smuzhiyun 		uint64_t bad_term:1;
1248*4882a593Smuzhiyun 		uint64_t unsop:1;
1249*4882a593Smuzhiyun 		uint64_t uneop:1;
1250*4882a593Smuzhiyun 		uint64_t undat:1;
1251*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1252*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1253*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1254*4882a593Smuzhiyun #endif
1255*4882a593Smuzhiyun 	} s;
1256*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn30xx {
1257*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1258*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1259*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1260*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1261*4882a593Smuzhiyun 		uint64_t phy_link:1;
1262*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1263*4882a593Smuzhiyun 		uint64_t coldet:1;
1264*4882a593Smuzhiyun 		uint64_t falerr:1;
1265*4882a593Smuzhiyun 		uint64_t rsverr:1;
1266*4882a593Smuzhiyun 		uint64_t pcterr:1;
1267*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1268*4882a593Smuzhiyun 		uint64_t niberr:1;
1269*4882a593Smuzhiyun 		uint64_t skperr:1;
1270*4882a593Smuzhiyun 		uint64_t rcverr:1;
1271*4882a593Smuzhiyun 		uint64_t lenerr:1;
1272*4882a593Smuzhiyun 		uint64_t alnerr:1;
1273*4882a593Smuzhiyun 		uint64_t fcserr:1;
1274*4882a593Smuzhiyun 		uint64_t jabber:1;
1275*4882a593Smuzhiyun 		uint64_t maxerr:1;
1276*4882a593Smuzhiyun 		uint64_t carext:1;
1277*4882a593Smuzhiyun 		uint64_t minerr:1;
1278*4882a593Smuzhiyun #else
1279*4882a593Smuzhiyun 		uint64_t minerr:1;
1280*4882a593Smuzhiyun 		uint64_t carext:1;
1281*4882a593Smuzhiyun 		uint64_t maxerr:1;
1282*4882a593Smuzhiyun 		uint64_t jabber:1;
1283*4882a593Smuzhiyun 		uint64_t fcserr:1;
1284*4882a593Smuzhiyun 		uint64_t alnerr:1;
1285*4882a593Smuzhiyun 		uint64_t lenerr:1;
1286*4882a593Smuzhiyun 		uint64_t rcverr:1;
1287*4882a593Smuzhiyun 		uint64_t skperr:1;
1288*4882a593Smuzhiyun 		uint64_t niberr:1;
1289*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1290*4882a593Smuzhiyun 		uint64_t pcterr:1;
1291*4882a593Smuzhiyun 		uint64_t rsverr:1;
1292*4882a593Smuzhiyun 		uint64_t falerr:1;
1293*4882a593Smuzhiyun 		uint64_t coldet:1;
1294*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1295*4882a593Smuzhiyun 		uint64_t phy_link:1;
1296*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1297*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1298*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1299*4882a593Smuzhiyun #endif
1300*4882a593Smuzhiyun 	} cn30xx;
1301*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn50xx {
1302*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1303*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1304*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1305*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1306*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1307*4882a593Smuzhiyun 		uint64_t phy_link:1;
1308*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1309*4882a593Smuzhiyun 		uint64_t coldet:1;
1310*4882a593Smuzhiyun 		uint64_t falerr:1;
1311*4882a593Smuzhiyun 		uint64_t rsverr:1;
1312*4882a593Smuzhiyun 		uint64_t pcterr:1;
1313*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1314*4882a593Smuzhiyun 		uint64_t niberr:1;
1315*4882a593Smuzhiyun 		uint64_t skperr:1;
1316*4882a593Smuzhiyun 		uint64_t rcverr:1;
1317*4882a593Smuzhiyun 		uint64_t reserved_6_6:1;
1318*4882a593Smuzhiyun 		uint64_t alnerr:1;
1319*4882a593Smuzhiyun 		uint64_t fcserr:1;
1320*4882a593Smuzhiyun 		uint64_t jabber:1;
1321*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1322*4882a593Smuzhiyun 		uint64_t carext:1;
1323*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1324*4882a593Smuzhiyun #else
1325*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1326*4882a593Smuzhiyun 		uint64_t carext:1;
1327*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1328*4882a593Smuzhiyun 		uint64_t jabber:1;
1329*4882a593Smuzhiyun 		uint64_t fcserr:1;
1330*4882a593Smuzhiyun 		uint64_t alnerr:1;
1331*4882a593Smuzhiyun 		uint64_t reserved_6_6:1;
1332*4882a593Smuzhiyun 		uint64_t rcverr:1;
1333*4882a593Smuzhiyun 		uint64_t skperr:1;
1334*4882a593Smuzhiyun 		uint64_t niberr:1;
1335*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1336*4882a593Smuzhiyun 		uint64_t pcterr:1;
1337*4882a593Smuzhiyun 		uint64_t rsverr:1;
1338*4882a593Smuzhiyun 		uint64_t falerr:1;
1339*4882a593Smuzhiyun 		uint64_t coldet:1;
1340*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1341*4882a593Smuzhiyun 		uint64_t phy_link:1;
1342*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1343*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1344*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1345*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1346*4882a593Smuzhiyun #endif
1347*4882a593Smuzhiyun 	} cn50xx;
1348*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn52xx {
1349*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1350*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1351*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1352*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1353*4882a593Smuzhiyun 		uint64_t undat:1;
1354*4882a593Smuzhiyun 		uint64_t uneop:1;
1355*4882a593Smuzhiyun 		uint64_t unsop:1;
1356*4882a593Smuzhiyun 		uint64_t bad_term:1;
1357*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1358*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1359*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1360*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1361*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1362*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1363*4882a593Smuzhiyun 		uint64_t coldet:1;
1364*4882a593Smuzhiyun 		uint64_t falerr:1;
1365*4882a593Smuzhiyun 		uint64_t rsverr:1;
1366*4882a593Smuzhiyun 		uint64_t pcterr:1;
1367*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1368*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1369*4882a593Smuzhiyun 		uint64_t skperr:1;
1370*4882a593Smuzhiyun 		uint64_t rcverr:1;
1371*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1372*4882a593Smuzhiyun 		uint64_t fcserr:1;
1373*4882a593Smuzhiyun 		uint64_t jabber:1;
1374*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1375*4882a593Smuzhiyun 		uint64_t carext:1;
1376*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1377*4882a593Smuzhiyun #else
1378*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1379*4882a593Smuzhiyun 		uint64_t carext:1;
1380*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1381*4882a593Smuzhiyun 		uint64_t jabber:1;
1382*4882a593Smuzhiyun 		uint64_t fcserr:1;
1383*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1384*4882a593Smuzhiyun 		uint64_t rcverr:1;
1385*4882a593Smuzhiyun 		uint64_t skperr:1;
1386*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1387*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1388*4882a593Smuzhiyun 		uint64_t pcterr:1;
1389*4882a593Smuzhiyun 		uint64_t rsverr:1;
1390*4882a593Smuzhiyun 		uint64_t falerr:1;
1391*4882a593Smuzhiyun 		uint64_t coldet:1;
1392*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1393*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1394*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1395*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1396*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1397*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1398*4882a593Smuzhiyun 		uint64_t bad_term:1;
1399*4882a593Smuzhiyun 		uint64_t unsop:1;
1400*4882a593Smuzhiyun 		uint64_t uneop:1;
1401*4882a593Smuzhiyun 		uint64_t undat:1;
1402*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1403*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1404*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1405*4882a593Smuzhiyun #endif
1406*4882a593Smuzhiyun 	} cn52xx;
1407*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn56xxp1 {
1408*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1409*4882a593Smuzhiyun 		uint64_t reserved_27_63:37;
1410*4882a593Smuzhiyun 		uint64_t undat:1;
1411*4882a593Smuzhiyun 		uint64_t uneop:1;
1412*4882a593Smuzhiyun 		uint64_t unsop:1;
1413*4882a593Smuzhiyun 		uint64_t bad_term:1;
1414*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1415*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1416*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1417*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1418*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1419*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1420*4882a593Smuzhiyun 		uint64_t coldet:1;
1421*4882a593Smuzhiyun 		uint64_t falerr:1;
1422*4882a593Smuzhiyun 		uint64_t rsverr:1;
1423*4882a593Smuzhiyun 		uint64_t pcterr:1;
1424*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1425*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1426*4882a593Smuzhiyun 		uint64_t skperr:1;
1427*4882a593Smuzhiyun 		uint64_t rcverr:1;
1428*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1429*4882a593Smuzhiyun 		uint64_t fcserr:1;
1430*4882a593Smuzhiyun 		uint64_t jabber:1;
1431*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1432*4882a593Smuzhiyun 		uint64_t carext:1;
1433*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1434*4882a593Smuzhiyun #else
1435*4882a593Smuzhiyun 		uint64_t reserved_0_0:1;
1436*4882a593Smuzhiyun 		uint64_t carext:1;
1437*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1438*4882a593Smuzhiyun 		uint64_t jabber:1;
1439*4882a593Smuzhiyun 		uint64_t fcserr:1;
1440*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1441*4882a593Smuzhiyun 		uint64_t rcverr:1;
1442*4882a593Smuzhiyun 		uint64_t skperr:1;
1443*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1444*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1445*4882a593Smuzhiyun 		uint64_t pcterr:1;
1446*4882a593Smuzhiyun 		uint64_t rsverr:1;
1447*4882a593Smuzhiyun 		uint64_t falerr:1;
1448*4882a593Smuzhiyun 		uint64_t coldet:1;
1449*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1450*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1451*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1452*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1453*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1454*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1455*4882a593Smuzhiyun 		uint64_t bad_term:1;
1456*4882a593Smuzhiyun 		uint64_t unsop:1;
1457*4882a593Smuzhiyun 		uint64_t uneop:1;
1458*4882a593Smuzhiyun 		uint64_t undat:1;
1459*4882a593Smuzhiyun 		uint64_t reserved_27_63:37;
1460*4882a593Smuzhiyun #endif
1461*4882a593Smuzhiyun 	} cn56xxp1;
1462*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn58xx {
1463*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1464*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1465*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1466*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1467*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1468*4882a593Smuzhiyun 		uint64_t phy_link:1;
1469*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1470*4882a593Smuzhiyun 		uint64_t coldet:1;
1471*4882a593Smuzhiyun 		uint64_t falerr:1;
1472*4882a593Smuzhiyun 		uint64_t rsverr:1;
1473*4882a593Smuzhiyun 		uint64_t pcterr:1;
1474*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1475*4882a593Smuzhiyun 		uint64_t niberr:1;
1476*4882a593Smuzhiyun 		uint64_t skperr:1;
1477*4882a593Smuzhiyun 		uint64_t rcverr:1;
1478*4882a593Smuzhiyun 		uint64_t lenerr:1;
1479*4882a593Smuzhiyun 		uint64_t alnerr:1;
1480*4882a593Smuzhiyun 		uint64_t fcserr:1;
1481*4882a593Smuzhiyun 		uint64_t jabber:1;
1482*4882a593Smuzhiyun 		uint64_t maxerr:1;
1483*4882a593Smuzhiyun 		uint64_t carext:1;
1484*4882a593Smuzhiyun 		uint64_t minerr:1;
1485*4882a593Smuzhiyun #else
1486*4882a593Smuzhiyun 		uint64_t minerr:1;
1487*4882a593Smuzhiyun 		uint64_t carext:1;
1488*4882a593Smuzhiyun 		uint64_t maxerr:1;
1489*4882a593Smuzhiyun 		uint64_t jabber:1;
1490*4882a593Smuzhiyun 		uint64_t fcserr:1;
1491*4882a593Smuzhiyun 		uint64_t alnerr:1;
1492*4882a593Smuzhiyun 		uint64_t lenerr:1;
1493*4882a593Smuzhiyun 		uint64_t rcverr:1;
1494*4882a593Smuzhiyun 		uint64_t skperr:1;
1495*4882a593Smuzhiyun 		uint64_t niberr:1;
1496*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1497*4882a593Smuzhiyun 		uint64_t pcterr:1;
1498*4882a593Smuzhiyun 		uint64_t rsverr:1;
1499*4882a593Smuzhiyun 		uint64_t falerr:1;
1500*4882a593Smuzhiyun 		uint64_t coldet:1;
1501*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1502*4882a593Smuzhiyun 		uint64_t phy_link:1;
1503*4882a593Smuzhiyun 		uint64_t phy_spd:1;
1504*4882a593Smuzhiyun 		uint64_t phy_dupx:1;
1505*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1506*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1507*4882a593Smuzhiyun #endif
1508*4882a593Smuzhiyun 	} cn58xx;
1509*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_int_reg_cn61xx {
1510*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1511*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1512*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1513*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1514*4882a593Smuzhiyun 		uint64_t undat:1;
1515*4882a593Smuzhiyun 		uint64_t uneop:1;
1516*4882a593Smuzhiyun 		uint64_t unsop:1;
1517*4882a593Smuzhiyun 		uint64_t bad_term:1;
1518*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1519*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1520*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1521*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1522*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1523*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1524*4882a593Smuzhiyun 		uint64_t coldet:1;
1525*4882a593Smuzhiyun 		uint64_t falerr:1;
1526*4882a593Smuzhiyun 		uint64_t rsverr:1;
1527*4882a593Smuzhiyun 		uint64_t pcterr:1;
1528*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1529*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1530*4882a593Smuzhiyun 		uint64_t skperr:1;
1531*4882a593Smuzhiyun 		uint64_t rcverr:1;
1532*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1533*4882a593Smuzhiyun 		uint64_t fcserr:1;
1534*4882a593Smuzhiyun 		uint64_t jabber:1;
1535*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1536*4882a593Smuzhiyun 		uint64_t carext:1;
1537*4882a593Smuzhiyun 		uint64_t minerr:1;
1538*4882a593Smuzhiyun #else
1539*4882a593Smuzhiyun 		uint64_t minerr:1;
1540*4882a593Smuzhiyun 		uint64_t carext:1;
1541*4882a593Smuzhiyun 		uint64_t reserved_2_2:1;
1542*4882a593Smuzhiyun 		uint64_t jabber:1;
1543*4882a593Smuzhiyun 		uint64_t fcserr:1;
1544*4882a593Smuzhiyun 		uint64_t reserved_5_6:2;
1545*4882a593Smuzhiyun 		uint64_t rcverr:1;
1546*4882a593Smuzhiyun 		uint64_t skperr:1;
1547*4882a593Smuzhiyun 		uint64_t reserved_9_9:1;
1548*4882a593Smuzhiyun 		uint64_t ovrerr:1;
1549*4882a593Smuzhiyun 		uint64_t pcterr:1;
1550*4882a593Smuzhiyun 		uint64_t rsverr:1;
1551*4882a593Smuzhiyun 		uint64_t falerr:1;
1552*4882a593Smuzhiyun 		uint64_t coldet:1;
1553*4882a593Smuzhiyun 		uint64_t ifgerr:1;
1554*4882a593Smuzhiyun 		uint64_t reserved_16_18:3;
1555*4882a593Smuzhiyun 		uint64_t pause_drp:1;
1556*4882a593Smuzhiyun 		uint64_t loc_fault:1;
1557*4882a593Smuzhiyun 		uint64_t rem_fault:1;
1558*4882a593Smuzhiyun 		uint64_t bad_seq:1;
1559*4882a593Smuzhiyun 		uint64_t bad_term:1;
1560*4882a593Smuzhiyun 		uint64_t unsop:1;
1561*4882a593Smuzhiyun 		uint64_t uneop:1;
1562*4882a593Smuzhiyun 		uint64_t undat:1;
1563*4882a593Smuzhiyun 		uint64_t hg2fld:1;
1564*4882a593Smuzhiyun 		uint64_t hg2cc:1;
1565*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1566*4882a593Smuzhiyun #endif
1567*4882a593Smuzhiyun 	} cn61xx;
1568*4882a593Smuzhiyun };
1569*4882a593Smuzhiyun 
1570*4882a593Smuzhiyun union cvmx_gmxx_rxx_jabber {
1571*4882a593Smuzhiyun 	uint64_t u64;
1572*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_jabber_s {
1573*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1574*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1575*4882a593Smuzhiyun 		uint64_t cnt:16;
1576*4882a593Smuzhiyun #else
1577*4882a593Smuzhiyun 		uint64_t cnt:16;
1578*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1579*4882a593Smuzhiyun #endif
1580*4882a593Smuzhiyun 	} s;
1581*4882a593Smuzhiyun };
1582*4882a593Smuzhiyun 
1583*4882a593Smuzhiyun union cvmx_gmxx_rxx_rx_inbnd {
1584*4882a593Smuzhiyun 	uint64_t u64;
1585*4882a593Smuzhiyun 	struct cvmx_gmxx_rxx_rx_inbnd_s {
1586*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1587*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
1588*4882a593Smuzhiyun 		uint64_t duplex:1;
1589*4882a593Smuzhiyun 		uint64_t speed:2;
1590*4882a593Smuzhiyun 		uint64_t status:1;
1591*4882a593Smuzhiyun #else
1592*4882a593Smuzhiyun 		uint64_t status:1;
1593*4882a593Smuzhiyun 		uint64_t speed:2;
1594*4882a593Smuzhiyun 		uint64_t duplex:1;
1595*4882a593Smuzhiyun 		uint64_t reserved_4_63:60;
1596*4882a593Smuzhiyun #endif
1597*4882a593Smuzhiyun 	} s;
1598*4882a593Smuzhiyun };
1599*4882a593Smuzhiyun 
1600*4882a593Smuzhiyun union cvmx_gmxx_rx_prts {
1601*4882a593Smuzhiyun 	uint64_t u64;
1602*4882a593Smuzhiyun 	struct cvmx_gmxx_rx_prts_s {
1603*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1604*4882a593Smuzhiyun 		uint64_t reserved_3_63:61;
1605*4882a593Smuzhiyun 		uint64_t prts:3;
1606*4882a593Smuzhiyun #else
1607*4882a593Smuzhiyun 		uint64_t prts:3;
1608*4882a593Smuzhiyun 		uint64_t reserved_3_63:61;
1609*4882a593Smuzhiyun #endif
1610*4882a593Smuzhiyun 	} s;
1611*4882a593Smuzhiyun };
1612*4882a593Smuzhiyun 
1613*4882a593Smuzhiyun union cvmx_gmxx_rx_xaui_ctl {
1614*4882a593Smuzhiyun 	uint64_t u64;
1615*4882a593Smuzhiyun 	struct cvmx_gmxx_rx_xaui_ctl_s {
1616*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1617*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
1618*4882a593Smuzhiyun 		uint64_t status:2;
1619*4882a593Smuzhiyun #else
1620*4882a593Smuzhiyun 		uint64_t status:2;
1621*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
1622*4882a593Smuzhiyun #endif
1623*4882a593Smuzhiyun 	} s;
1624*4882a593Smuzhiyun };
1625*4882a593Smuzhiyun 
1626*4882a593Smuzhiyun union cvmx_gmxx_txx_thresh {
1627*4882a593Smuzhiyun 	uint64_t u64;
1628*4882a593Smuzhiyun 	struct cvmx_gmxx_txx_thresh_s {
1629*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1630*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
1631*4882a593Smuzhiyun 		uint64_t cnt:10;
1632*4882a593Smuzhiyun #else
1633*4882a593Smuzhiyun 		uint64_t cnt:10;
1634*4882a593Smuzhiyun 		uint64_t reserved_10_63:54;
1635*4882a593Smuzhiyun #endif
1636*4882a593Smuzhiyun 	} s;
1637*4882a593Smuzhiyun 	struct cvmx_gmxx_txx_thresh_cn30xx {
1638*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1639*4882a593Smuzhiyun 		uint64_t reserved_7_63:57;
1640*4882a593Smuzhiyun 		uint64_t cnt:7;
1641*4882a593Smuzhiyun #else
1642*4882a593Smuzhiyun 		uint64_t cnt:7;
1643*4882a593Smuzhiyun 		uint64_t reserved_7_63:57;
1644*4882a593Smuzhiyun #endif
1645*4882a593Smuzhiyun 	} cn30xx;
1646*4882a593Smuzhiyun 	struct cvmx_gmxx_txx_thresh_cn38xx {
1647*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1648*4882a593Smuzhiyun 		uint64_t reserved_9_63:55;
1649*4882a593Smuzhiyun 		uint64_t cnt:9;
1650*4882a593Smuzhiyun #else
1651*4882a593Smuzhiyun 		uint64_t cnt:9;
1652*4882a593Smuzhiyun 		uint64_t reserved_9_63:55;
1653*4882a593Smuzhiyun #endif
1654*4882a593Smuzhiyun 	} cn38xx;
1655*4882a593Smuzhiyun };
1656*4882a593Smuzhiyun 
1657*4882a593Smuzhiyun union cvmx_gmxx_tx_int_en {
1658*4882a593Smuzhiyun 	uint64_t u64;
1659*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_s {
1660*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1661*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1662*4882a593Smuzhiyun 		uint64_t xchange:1;
1663*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1664*4882a593Smuzhiyun 		uint64_t late_col:4;
1665*4882a593Smuzhiyun 		uint64_t xsdef:4;
1666*4882a593Smuzhiyun 		uint64_t xscol:4;
1667*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1668*4882a593Smuzhiyun 		uint64_t undflw:4;
1669*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1670*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1671*4882a593Smuzhiyun #else
1672*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1673*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1674*4882a593Smuzhiyun 		uint64_t undflw:4;
1675*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1676*4882a593Smuzhiyun 		uint64_t xscol:4;
1677*4882a593Smuzhiyun 		uint64_t xsdef:4;
1678*4882a593Smuzhiyun 		uint64_t late_col:4;
1679*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1680*4882a593Smuzhiyun 		uint64_t xchange:1;
1681*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1682*4882a593Smuzhiyun #endif
1683*4882a593Smuzhiyun 	} s;
1684*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn30xx {
1685*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1686*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1687*4882a593Smuzhiyun 		uint64_t late_col:3;
1688*4882a593Smuzhiyun 		uint64_t reserved_15_15:1;
1689*4882a593Smuzhiyun 		uint64_t xsdef:3;
1690*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1691*4882a593Smuzhiyun 		uint64_t xscol:3;
1692*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1693*4882a593Smuzhiyun 		uint64_t undflw:3;
1694*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1695*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1696*4882a593Smuzhiyun #else
1697*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1698*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1699*4882a593Smuzhiyun 		uint64_t undflw:3;
1700*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1701*4882a593Smuzhiyun 		uint64_t xscol:3;
1702*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1703*4882a593Smuzhiyun 		uint64_t xsdef:3;
1704*4882a593Smuzhiyun 		uint64_t reserved_15_15:1;
1705*4882a593Smuzhiyun 		uint64_t late_col:3;
1706*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1707*4882a593Smuzhiyun #endif
1708*4882a593Smuzhiyun 	} cn30xx;
1709*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn31xx {
1710*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1711*4882a593Smuzhiyun 		uint64_t reserved_15_63:49;
1712*4882a593Smuzhiyun 		uint64_t xsdef:3;
1713*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1714*4882a593Smuzhiyun 		uint64_t xscol:3;
1715*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1716*4882a593Smuzhiyun 		uint64_t undflw:3;
1717*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1718*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1719*4882a593Smuzhiyun #else
1720*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1721*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1722*4882a593Smuzhiyun 		uint64_t undflw:3;
1723*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1724*4882a593Smuzhiyun 		uint64_t xscol:3;
1725*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1726*4882a593Smuzhiyun 		uint64_t xsdef:3;
1727*4882a593Smuzhiyun 		uint64_t reserved_15_63:49;
1728*4882a593Smuzhiyun #endif
1729*4882a593Smuzhiyun 	} cn31xx;
1730*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn38xx {
1731*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1732*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1733*4882a593Smuzhiyun 		uint64_t late_col:4;
1734*4882a593Smuzhiyun 		uint64_t xsdef:4;
1735*4882a593Smuzhiyun 		uint64_t xscol:4;
1736*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1737*4882a593Smuzhiyun 		uint64_t undflw:4;
1738*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1739*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1740*4882a593Smuzhiyun #else
1741*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1742*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1743*4882a593Smuzhiyun 		uint64_t undflw:4;
1744*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1745*4882a593Smuzhiyun 		uint64_t xscol:4;
1746*4882a593Smuzhiyun 		uint64_t xsdef:4;
1747*4882a593Smuzhiyun 		uint64_t late_col:4;
1748*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1749*4882a593Smuzhiyun #endif
1750*4882a593Smuzhiyun 	} cn38xx;
1751*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn38xxp2 {
1752*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1753*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1754*4882a593Smuzhiyun 		uint64_t xsdef:4;
1755*4882a593Smuzhiyun 		uint64_t xscol:4;
1756*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1757*4882a593Smuzhiyun 		uint64_t undflw:4;
1758*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1759*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1760*4882a593Smuzhiyun #else
1761*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1762*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1763*4882a593Smuzhiyun 		uint64_t undflw:4;
1764*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1765*4882a593Smuzhiyun 		uint64_t xscol:4;
1766*4882a593Smuzhiyun 		uint64_t xsdef:4;
1767*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1768*4882a593Smuzhiyun #endif
1769*4882a593Smuzhiyun 	} cn38xxp2;
1770*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn52xx {
1771*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1772*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1773*4882a593Smuzhiyun 		uint64_t late_col:4;
1774*4882a593Smuzhiyun 		uint64_t xsdef:4;
1775*4882a593Smuzhiyun 		uint64_t xscol:4;
1776*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1777*4882a593Smuzhiyun 		uint64_t undflw:4;
1778*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1779*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1780*4882a593Smuzhiyun #else
1781*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1782*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1783*4882a593Smuzhiyun 		uint64_t undflw:4;
1784*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1785*4882a593Smuzhiyun 		uint64_t xscol:4;
1786*4882a593Smuzhiyun 		uint64_t xsdef:4;
1787*4882a593Smuzhiyun 		uint64_t late_col:4;
1788*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1789*4882a593Smuzhiyun #endif
1790*4882a593Smuzhiyun 	} cn52xx;
1791*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn63xx {
1792*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1793*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
1794*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1795*4882a593Smuzhiyun 		uint64_t late_col:4;
1796*4882a593Smuzhiyun 		uint64_t xsdef:4;
1797*4882a593Smuzhiyun 		uint64_t xscol:4;
1798*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1799*4882a593Smuzhiyun 		uint64_t undflw:4;
1800*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1801*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1802*4882a593Smuzhiyun #else
1803*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1804*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1805*4882a593Smuzhiyun 		uint64_t undflw:4;
1806*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1807*4882a593Smuzhiyun 		uint64_t xscol:4;
1808*4882a593Smuzhiyun 		uint64_t xsdef:4;
1809*4882a593Smuzhiyun 		uint64_t late_col:4;
1810*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1811*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
1812*4882a593Smuzhiyun #endif
1813*4882a593Smuzhiyun 	} cn63xx;
1814*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cn68xx {
1815*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1816*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1817*4882a593Smuzhiyun 		uint64_t xchange:1;
1818*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1819*4882a593Smuzhiyun 		uint64_t late_col:4;
1820*4882a593Smuzhiyun 		uint64_t xsdef:4;
1821*4882a593Smuzhiyun 		uint64_t xscol:4;
1822*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1823*4882a593Smuzhiyun 		uint64_t undflw:4;
1824*4882a593Smuzhiyun 		uint64_t pko_nxp:1;
1825*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1826*4882a593Smuzhiyun #else
1827*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1828*4882a593Smuzhiyun 		uint64_t pko_nxp:1;
1829*4882a593Smuzhiyun 		uint64_t undflw:4;
1830*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1831*4882a593Smuzhiyun 		uint64_t xscol:4;
1832*4882a593Smuzhiyun 		uint64_t xsdef:4;
1833*4882a593Smuzhiyun 		uint64_t late_col:4;
1834*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1835*4882a593Smuzhiyun 		uint64_t xchange:1;
1836*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1837*4882a593Smuzhiyun #endif
1838*4882a593Smuzhiyun 	} cn68xx;
1839*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_en_cnf71xx {
1840*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1841*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1842*4882a593Smuzhiyun 		uint64_t xchange:1;
1843*4882a593Smuzhiyun 		uint64_t reserved_22_23:2;
1844*4882a593Smuzhiyun 		uint64_t ptp_lost:2;
1845*4882a593Smuzhiyun 		uint64_t reserved_18_19:2;
1846*4882a593Smuzhiyun 		uint64_t late_col:2;
1847*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
1848*4882a593Smuzhiyun 		uint64_t xsdef:2;
1849*4882a593Smuzhiyun 		uint64_t reserved_10_11:2;
1850*4882a593Smuzhiyun 		uint64_t xscol:2;
1851*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
1852*4882a593Smuzhiyun 		uint64_t undflw:2;
1853*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1854*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1855*4882a593Smuzhiyun #else
1856*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1857*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1858*4882a593Smuzhiyun 		uint64_t undflw:2;
1859*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
1860*4882a593Smuzhiyun 		uint64_t xscol:2;
1861*4882a593Smuzhiyun 		uint64_t reserved_10_11:2;
1862*4882a593Smuzhiyun 		uint64_t xsdef:2;
1863*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
1864*4882a593Smuzhiyun 		uint64_t late_col:2;
1865*4882a593Smuzhiyun 		uint64_t reserved_18_19:2;
1866*4882a593Smuzhiyun 		uint64_t ptp_lost:2;
1867*4882a593Smuzhiyun 		uint64_t reserved_22_23:2;
1868*4882a593Smuzhiyun 		uint64_t xchange:1;
1869*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1870*4882a593Smuzhiyun #endif
1871*4882a593Smuzhiyun 	} cnf71xx;
1872*4882a593Smuzhiyun };
1873*4882a593Smuzhiyun 
1874*4882a593Smuzhiyun union cvmx_gmxx_tx_int_reg {
1875*4882a593Smuzhiyun 	uint64_t u64;
1876*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_s {
1877*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1878*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1879*4882a593Smuzhiyun 		uint64_t xchange:1;
1880*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1881*4882a593Smuzhiyun 		uint64_t late_col:4;
1882*4882a593Smuzhiyun 		uint64_t xsdef:4;
1883*4882a593Smuzhiyun 		uint64_t xscol:4;
1884*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1885*4882a593Smuzhiyun 		uint64_t undflw:4;
1886*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1887*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1888*4882a593Smuzhiyun #else
1889*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1890*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1891*4882a593Smuzhiyun 		uint64_t undflw:4;
1892*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1893*4882a593Smuzhiyun 		uint64_t xscol:4;
1894*4882a593Smuzhiyun 		uint64_t xsdef:4;
1895*4882a593Smuzhiyun 		uint64_t late_col:4;
1896*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
1897*4882a593Smuzhiyun 		uint64_t xchange:1;
1898*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1899*4882a593Smuzhiyun #endif
1900*4882a593Smuzhiyun 	} s;
1901*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn30xx {
1902*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1903*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1904*4882a593Smuzhiyun 		uint64_t late_col:3;
1905*4882a593Smuzhiyun 		uint64_t reserved_15_15:1;
1906*4882a593Smuzhiyun 		uint64_t xsdef:3;
1907*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1908*4882a593Smuzhiyun 		uint64_t xscol:3;
1909*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1910*4882a593Smuzhiyun 		uint64_t undflw:3;
1911*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1912*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1913*4882a593Smuzhiyun #else
1914*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1915*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1916*4882a593Smuzhiyun 		uint64_t undflw:3;
1917*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1918*4882a593Smuzhiyun 		uint64_t xscol:3;
1919*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1920*4882a593Smuzhiyun 		uint64_t xsdef:3;
1921*4882a593Smuzhiyun 		uint64_t reserved_15_15:1;
1922*4882a593Smuzhiyun 		uint64_t late_col:3;
1923*4882a593Smuzhiyun 		uint64_t reserved_19_63:45;
1924*4882a593Smuzhiyun #endif
1925*4882a593Smuzhiyun 	} cn30xx;
1926*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn31xx {
1927*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1928*4882a593Smuzhiyun 		uint64_t reserved_15_63:49;
1929*4882a593Smuzhiyun 		uint64_t xsdef:3;
1930*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1931*4882a593Smuzhiyun 		uint64_t xscol:3;
1932*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1933*4882a593Smuzhiyun 		uint64_t undflw:3;
1934*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1935*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1936*4882a593Smuzhiyun #else
1937*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1938*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1939*4882a593Smuzhiyun 		uint64_t undflw:3;
1940*4882a593Smuzhiyun 		uint64_t reserved_5_7:3;
1941*4882a593Smuzhiyun 		uint64_t xscol:3;
1942*4882a593Smuzhiyun 		uint64_t reserved_11_11:1;
1943*4882a593Smuzhiyun 		uint64_t xsdef:3;
1944*4882a593Smuzhiyun 		uint64_t reserved_15_63:49;
1945*4882a593Smuzhiyun #endif
1946*4882a593Smuzhiyun 	} cn31xx;
1947*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn38xx {
1948*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1949*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1950*4882a593Smuzhiyun 		uint64_t late_col:4;
1951*4882a593Smuzhiyun 		uint64_t xsdef:4;
1952*4882a593Smuzhiyun 		uint64_t xscol:4;
1953*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1954*4882a593Smuzhiyun 		uint64_t undflw:4;
1955*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1956*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1957*4882a593Smuzhiyun #else
1958*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1959*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1960*4882a593Smuzhiyun 		uint64_t undflw:4;
1961*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1962*4882a593Smuzhiyun 		uint64_t xscol:4;
1963*4882a593Smuzhiyun 		uint64_t xsdef:4;
1964*4882a593Smuzhiyun 		uint64_t late_col:4;
1965*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1966*4882a593Smuzhiyun #endif
1967*4882a593Smuzhiyun 	} cn38xx;
1968*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn38xxp2 {
1969*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1970*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1971*4882a593Smuzhiyun 		uint64_t xsdef:4;
1972*4882a593Smuzhiyun 		uint64_t xscol:4;
1973*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1974*4882a593Smuzhiyun 		uint64_t undflw:4;
1975*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1976*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1977*4882a593Smuzhiyun #else
1978*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1979*4882a593Smuzhiyun 		uint64_t ncb_nxa:1;
1980*4882a593Smuzhiyun 		uint64_t undflw:4;
1981*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1982*4882a593Smuzhiyun 		uint64_t xscol:4;
1983*4882a593Smuzhiyun 		uint64_t xsdef:4;
1984*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1985*4882a593Smuzhiyun #endif
1986*4882a593Smuzhiyun 	} cn38xxp2;
1987*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn52xx {
1988*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1989*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
1990*4882a593Smuzhiyun 		uint64_t late_col:4;
1991*4882a593Smuzhiyun 		uint64_t xsdef:4;
1992*4882a593Smuzhiyun 		uint64_t xscol:4;
1993*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
1994*4882a593Smuzhiyun 		uint64_t undflw:4;
1995*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
1996*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1997*4882a593Smuzhiyun #else
1998*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
1999*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
2000*4882a593Smuzhiyun 		uint64_t undflw:4;
2001*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2002*4882a593Smuzhiyun 		uint64_t xscol:4;
2003*4882a593Smuzhiyun 		uint64_t xsdef:4;
2004*4882a593Smuzhiyun 		uint64_t late_col:4;
2005*4882a593Smuzhiyun 		uint64_t reserved_20_63:44;
2006*4882a593Smuzhiyun #endif
2007*4882a593Smuzhiyun 	} cn52xx;
2008*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn63xx {
2009*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2010*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
2011*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
2012*4882a593Smuzhiyun 		uint64_t late_col:4;
2013*4882a593Smuzhiyun 		uint64_t xsdef:4;
2014*4882a593Smuzhiyun 		uint64_t xscol:4;
2015*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2016*4882a593Smuzhiyun 		uint64_t undflw:4;
2017*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
2018*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2019*4882a593Smuzhiyun #else
2020*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2021*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
2022*4882a593Smuzhiyun 		uint64_t undflw:4;
2023*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2024*4882a593Smuzhiyun 		uint64_t xscol:4;
2025*4882a593Smuzhiyun 		uint64_t xsdef:4;
2026*4882a593Smuzhiyun 		uint64_t late_col:4;
2027*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
2028*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
2029*4882a593Smuzhiyun #endif
2030*4882a593Smuzhiyun 	} cn63xx;
2031*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cn68xx {
2032*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2033*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
2034*4882a593Smuzhiyun 		uint64_t xchange:1;
2035*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
2036*4882a593Smuzhiyun 		uint64_t late_col:4;
2037*4882a593Smuzhiyun 		uint64_t xsdef:4;
2038*4882a593Smuzhiyun 		uint64_t xscol:4;
2039*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2040*4882a593Smuzhiyun 		uint64_t undflw:4;
2041*4882a593Smuzhiyun 		uint64_t pko_nxp:1;
2042*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2043*4882a593Smuzhiyun #else
2044*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2045*4882a593Smuzhiyun 		uint64_t pko_nxp:1;
2046*4882a593Smuzhiyun 		uint64_t undflw:4;
2047*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2048*4882a593Smuzhiyun 		uint64_t xscol:4;
2049*4882a593Smuzhiyun 		uint64_t xsdef:4;
2050*4882a593Smuzhiyun 		uint64_t late_col:4;
2051*4882a593Smuzhiyun 		uint64_t ptp_lost:4;
2052*4882a593Smuzhiyun 		uint64_t xchange:1;
2053*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
2054*4882a593Smuzhiyun #endif
2055*4882a593Smuzhiyun 	} cn68xx;
2056*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_int_reg_cnf71xx {
2057*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2058*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
2059*4882a593Smuzhiyun 		uint64_t xchange:1;
2060*4882a593Smuzhiyun 		uint64_t reserved_22_23:2;
2061*4882a593Smuzhiyun 		uint64_t ptp_lost:2;
2062*4882a593Smuzhiyun 		uint64_t reserved_18_19:2;
2063*4882a593Smuzhiyun 		uint64_t late_col:2;
2064*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
2065*4882a593Smuzhiyun 		uint64_t xsdef:2;
2066*4882a593Smuzhiyun 		uint64_t reserved_10_11:2;
2067*4882a593Smuzhiyun 		uint64_t xscol:2;
2068*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
2069*4882a593Smuzhiyun 		uint64_t undflw:2;
2070*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
2071*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2072*4882a593Smuzhiyun #else
2073*4882a593Smuzhiyun 		uint64_t pko_nxa:1;
2074*4882a593Smuzhiyun 		uint64_t reserved_1_1:1;
2075*4882a593Smuzhiyun 		uint64_t undflw:2;
2076*4882a593Smuzhiyun 		uint64_t reserved_4_7:4;
2077*4882a593Smuzhiyun 		uint64_t xscol:2;
2078*4882a593Smuzhiyun 		uint64_t reserved_10_11:2;
2079*4882a593Smuzhiyun 		uint64_t xsdef:2;
2080*4882a593Smuzhiyun 		uint64_t reserved_14_15:2;
2081*4882a593Smuzhiyun 		uint64_t late_col:2;
2082*4882a593Smuzhiyun 		uint64_t reserved_18_19:2;
2083*4882a593Smuzhiyun 		uint64_t ptp_lost:2;
2084*4882a593Smuzhiyun 		uint64_t reserved_22_23:2;
2085*4882a593Smuzhiyun 		uint64_t xchange:1;
2086*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
2087*4882a593Smuzhiyun #endif
2088*4882a593Smuzhiyun 	} cnf71xx;
2089*4882a593Smuzhiyun };
2090*4882a593Smuzhiyun 
2091*4882a593Smuzhiyun union cvmx_gmxx_tx_ovr_bp {
2092*4882a593Smuzhiyun 	uint64_t u64;
2093*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_ovr_bp_s {
2094*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2095*4882a593Smuzhiyun 		uint64_t reserved_48_63:16;
2096*4882a593Smuzhiyun 		uint64_t tx_prt_bp:16;
2097*4882a593Smuzhiyun 		uint64_t reserved_12_31:20;
2098*4882a593Smuzhiyun 		uint64_t en:4;
2099*4882a593Smuzhiyun 		uint64_t bp:4;
2100*4882a593Smuzhiyun 		uint64_t ign_full:4;
2101*4882a593Smuzhiyun #else
2102*4882a593Smuzhiyun 		uint64_t ign_full:4;
2103*4882a593Smuzhiyun 		uint64_t bp:4;
2104*4882a593Smuzhiyun 		uint64_t en:4;
2105*4882a593Smuzhiyun 		uint64_t reserved_12_31:20;
2106*4882a593Smuzhiyun 		uint64_t tx_prt_bp:16;
2107*4882a593Smuzhiyun 		uint64_t reserved_48_63:16;
2108*4882a593Smuzhiyun #endif
2109*4882a593Smuzhiyun 	} s;
2110*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_ovr_bp_cn30xx {
2111*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2112*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
2113*4882a593Smuzhiyun 		uint64_t en:3;
2114*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
2115*4882a593Smuzhiyun 		uint64_t bp:3;
2116*4882a593Smuzhiyun 		uint64_t reserved_3_3:1;
2117*4882a593Smuzhiyun 		uint64_t ign_full:3;
2118*4882a593Smuzhiyun #else
2119*4882a593Smuzhiyun 		uint64_t ign_full:3;
2120*4882a593Smuzhiyun 		uint64_t reserved_3_3:1;
2121*4882a593Smuzhiyun 		uint64_t bp:3;
2122*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
2123*4882a593Smuzhiyun 		uint64_t en:3;
2124*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
2125*4882a593Smuzhiyun #endif
2126*4882a593Smuzhiyun 	} cn30xx;
2127*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_ovr_bp_cn38xx {
2128*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2129*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
2130*4882a593Smuzhiyun 		uint64_t en:4;
2131*4882a593Smuzhiyun 		uint64_t bp:4;
2132*4882a593Smuzhiyun 		uint64_t ign_full:4;
2133*4882a593Smuzhiyun #else
2134*4882a593Smuzhiyun 		uint64_t ign_full:4;
2135*4882a593Smuzhiyun 		uint64_t bp:4;
2136*4882a593Smuzhiyun 		uint64_t en:4;
2137*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
2138*4882a593Smuzhiyun #endif
2139*4882a593Smuzhiyun 	} cn38xx;
2140*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_ovr_bp_cnf71xx {
2141*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2142*4882a593Smuzhiyun 		uint64_t reserved_48_63:16;
2143*4882a593Smuzhiyun 		uint64_t tx_prt_bp:16;
2144*4882a593Smuzhiyun 		uint64_t reserved_10_31:22;
2145*4882a593Smuzhiyun 		uint64_t en:2;
2146*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2147*4882a593Smuzhiyun 		uint64_t bp:2;
2148*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
2149*4882a593Smuzhiyun 		uint64_t ign_full:2;
2150*4882a593Smuzhiyun #else
2151*4882a593Smuzhiyun 		uint64_t ign_full:2;
2152*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
2153*4882a593Smuzhiyun 		uint64_t bp:2;
2154*4882a593Smuzhiyun 		uint64_t reserved_6_7:2;
2155*4882a593Smuzhiyun 		uint64_t en:2;
2156*4882a593Smuzhiyun 		uint64_t reserved_10_31:22;
2157*4882a593Smuzhiyun 		uint64_t tx_prt_bp:16;
2158*4882a593Smuzhiyun 		uint64_t reserved_48_63:16;
2159*4882a593Smuzhiyun #endif
2160*4882a593Smuzhiyun 	} cnf71xx;
2161*4882a593Smuzhiyun };
2162*4882a593Smuzhiyun 
2163*4882a593Smuzhiyun union cvmx_gmxx_tx_prts {
2164*4882a593Smuzhiyun 	uint64_t u64;
2165*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_prts_s {
2166*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2167*4882a593Smuzhiyun 		uint64_t reserved_5_63:59;
2168*4882a593Smuzhiyun 		uint64_t prts:5;
2169*4882a593Smuzhiyun #else
2170*4882a593Smuzhiyun 		uint64_t prts:5;
2171*4882a593Smuzhiyun 		uint64_t reserved_5_63:59;
2172*4882a593Smuzhiyun #endif
2173*4882a593Smuzhiyun 	} s;
2174*4882a593Smuzhiyun };
2175*4882a593Smuzhiyun 
2176*4882a593Smuzhiyun union cvmx_gmxx_tx_spi_ctl {
2177*4882a593Smuzhiyun 	uint64_t u64;
2178*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_spi_ctl_s {
2179*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2180*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
2181*4882a593Smuzhiyun 		uint64_t tpa_clr:1;
2182*4882a593Smuzhiyun 		uint64_t cont_pkt:1;
2183*4882a593Smuzhiyun #else
2184*4882a593Smuzhiyun 		uint64_t cont_pkt:1;
2185*4882a593Smuzhiyun 		uint64_t tpa_clr:1;
2186*4882a593Smuzhiyun 		uint64_t reserved_2_63:62;
2187*4882a593Smuzhiyun #endif
2188*4882a593Smuzhiyun 	} s;
2189*4882a593Smuzhiyun };
2190*4882a593Smuzhiyun 
2191*4882a593Smuzhiyun union cvmx_gmxx_tx_spi_max {
2192*4882a593Smuzhiyun 	uint64_t u64;
2193*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_spi_max_s {
2194*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2195*4882a593Smuzhiyun 		uint64_t reserved_23_63:41;
2196*4882a593Smuzhiyun 		uint64_t slice:7;
2197*4882a593Smuzhiyun 		uint64_t max2:8;
2198*4882a593Smuzhiyun 		uint64_t max1:8;
2199*4882a593Smuzhiyun #else
2200*4882a593Smuzhiyun 		uint64_t max1:8;
2201*4882a593Smuzhiyun 		uint64_t max2:8;
2202*4882a593Smuzhiyun 		uint64_t slice:7;
2203*4882a593Smuzhiyun 		uint64_t reserved_23_63:41;
2204*4882a593Smuzhiyun #endif
2205*4882a593Smuzhiyun 	} s;
2206*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_spi_max_cn38xx {
2207*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2208*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
2209*4882a593Smuzhiyun 		uint64_t max2:8;
2210*4882a593Smuzhiyun 		uint64_t max1:8;
2211*4882a593Smuzhiyun #else
2212*4882a593Smuzhiyun 		uint64_t max1:8;
2213*4882a593Smuzhiyun 		uint64_t max2:8;
2214*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
2215*4882a593Smuzhiyun #endif
2216*4882a593Smuzhiyun 	} cn38xx;
2217*4882a593Smuzhiyun };
2218*4882a593Smuzhiyun 
2219*4882a593Smuzhiyun union cvmx_gmxx_tx_spi_thresh {
2220*4882a593Smuzhiyun 	uint64_t u64;
2221*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_spi_thresh_s {
2222*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2223*4882a593Smuzhiyun 		uint64_t reserved_6_63:58;
2224*4882a593Smuzhiyun 		uint64_t thresh:6;
2225*4882a593Smuzhiyun #else
2226*4882a593Smuzhiyun 		uint64_t thresh:6;
2227*4882a593Smuzhiyun 		uint64_t reserved_6_63:58;
2228*4882a593Smuzhiyun #endif
2229*4882a593Smuzhiyun 	} s;
2230*4882a593Smuzhiyun };
2231*4882a593Smuzhiyun 
2232*4882a593Smuzhiyun union cvmx_gmxx_tx_xaui_ctl {
2233*4882a593Smuzhiyun 	uint64_t u64;
2234*4882a593Smuzhiyun 	struct cvmx_gmxx_tx_xaui_ctl_s {
2235*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
2236*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
2237*4882a593Smuzhiyun 		uint64_t hg_pause_hgi:2;
2238*4882a593Smuzhiyun 		uint64_t hg_en:1;
2239*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
2240*4882a593Smuzhiyun 		uint64_t ls_byp:1;
2241*4882a593Smuzhiyun 		uint64_t ls:2;
2242*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
2243*4882a593Smuzhiyun 		uint64_t uni_en:1;
2244*4882a593Smuzhiyun 		uint64_t dic_en:1;
2245*4882a593Smuzhiyun #else
2246*4882a593Smuzhiyun 		uint64_t dic_en:1;
2247*4882a593Smuzhiyun 		uint64_t uni_en:1;
2248*4882a593Smuzhiyun 		uint64_t reserved_2_3:2;
2249*4882a593Smuzhiyun 		uint64_t ls:2;
2250*4882a593Smuzhiyun 		uint64_t ls_byp:1;
2251*4882a593Smuzhiyun 		uint64_t reserved_7_7:1;
2252*4882a593Smuzhiyun 		uint64_t hg_en:1;
2253*4882a593Smuzhiyun 		uint64_t hg_pause_hgi:2;
2254*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
2255*4882a593Smuzhiyun #endif
2256*4882a593Smuzhiyun 	} s;
2257*4882a593Smuzhiyun };
2258*4882a593Smuzhiyun 
2259*4882a593Smuzhiyun #endif
2260