xref: /OK3568_Linux_fs/kernel/arch/mips/include/asm/octeon/cvmx-fpa-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-2012 Cavium Networks
8*4882a593Smuzhiyun  *
9*4882a593Smuzhiyun  * This file is free software; you can redistribute it and/or modify
10*4882a593Smuzhiyun  * it under the terms of the GNU General Public License, Version 2, as
11*4882a593Smuzhiyun  * published by the Free Software Foundation.
12*4882a593Smuzhiyun  *
13*4882a593Smuzhiyun  * This file is distributed in the hope that it will be useful, but
14*4882a593Smuzhiyun  * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
15*4882a593Smuzhiyun  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
16*4882a593Smuzhiyun  * NONINFRINGEMENT.  See the GNU General Public License for more
17*4882a593Smuzhiyun  * details.
18*4882a593Smuzhiyun  *
19*4882a593Smuzhiyun  * You should have received a copy of the GNU General Public License
20*4882a593Smuzhiyun  * along with this file; if not, write to the Free Software
21*4882a593Smuzhiyun  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22*4882a593Smuzhiyun  * or visit http://www.gnu.org/licenses/.
23*4882a593Smuzhiyun  *
24*4882a593Smuzhiyun  * This file may also be available under a different license from Cavium.
25*4882a593Smuzhiyun  * Contact Cavium Networks for more information
26*4882a593Smuzhiyun  ***********************license end**************************************/
27*4882a593Smuzhiyun 
28*4882a593Smuzhiyun #ifndef __CVMX_FPA_DEFS_H__
29*4882a593Smuzhiyun #define __CVMX_FPA_DEFS_H__
30*4882a593Smuzhiyun 
31*4882a593Smuzhiyun #define CVMX_FPA_ADDR_RANGE_ERROR (CVMX_ADD_IO_SEG(0x0001180028000458ull))
32*4882a593Smuzhiyun #define CVMX_FPA_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011800280000E8ull))
33*4882a593Smuzhiyun #define CVMX_FPA_CTL_STATUS (CVMX_ADD_IO_SEG(0x0001180028000050ull))
34*4882a593Smuzhiyun #define CVMX_FPA_FPF0_MARKS (CVMX_ADD_IO_SEG(0x0001180028000000ull))
35*4882a593Smuzhiyun #define CVMX_FPA_FPF0_SIZE (CVMX_ADD_IO_SEG(0x0001180028000058ull))
36*4882a593Smuzhiyun #define CVMX_FPA_FPF1_MARKS CVMX_FPA_FPFX_MARKS(1)
37*4882a593Smuzhiyun #define CVMX_FPA_FPF2_MARKS CVMX_FPA_FPFX_MARKS(2)
38*4882a593Smuzhiyun #define CVMX_FPA_FPF3_MARKS CVMX_FPA_FPFX_MARKS(3)
39*4882a593Smuzhiyun #define CVMX_FPA_FPF4_MARKS CVMX_FPA_FPFX_MARKS(4)
40*4882a593Smuzhiyun #define CVMX_FPA_FPF5_MARKS CVMX_FPA_FPFX_MARKS(5)
41*4882a593Smuzhiyun #define CVMX_FPA_FPF6_MARKS CVMX_FPA_FPFX_MARKS(6)
42*4882a593Smuzhiyun #define CVMX_FPA_FPF7_MARKS CVMX_FPA_FPFX_MARKS(7)
43*4882a593Smuzhiyun #define CVMX_FPA_FPF8_MARKS (CVMX_ADD_IO_SEG(0x0001180028000240ull))
44*4882a593Smuzhiyun #define CVMX_FPA_FPF8_SIZE (CVMX_ADD_IO_SEG(0x0001180028000248ull))
45*4882a593Smuzhiyun #define CVMX_FPA_FPFX_MARKS(offset) (CVMX_ADD_IO_SEG(0x0001180028000008ull) + ((offset) & 7) * 8 - 8*1)
46*4882a593Smuzhiyun #define CVMX_FPA_FPFX_SIZE(offset) (CVMX_ADD_IO_SEG(0x0001180028000060ull) + ((offset) & 7) * 8 - 8*1)
47*4882a593Smuzhiyun #define CVMX_FPA_INT_ENB (CVMX_ADD_IO_SEG(0x0001180028000048ull))
48*4882a593Smuzhiyun #define CVMX_FPA_INT_SUM (CVMX_ADD_IO_SEG(0x0001180028000040ull))
49*4882a593Smuzhiyun #define CVMX_FPA_PACKET_THRESHOLD (CVMX_ADD_IO_SEG(0x0001180028000460ull))
50*4882a593Smuzhiyun #define CVMX_FPA_POOLX_END_ADDR(offset) (CVMX_ADD_IO_SEG(0x0001180028000358ull) + ((offset) & 15) * 8)
51*4882a593Smuzhiyun #define CVMX_FPA_POOLX_START_ADDR(offset) (CVMX_ADD_IO_SEG(0x0001180028000258ull) + ((offset) & 15) * 8)
52*4882a593Smuzhiyun #define CVMX_FPA_POOLX_THRESHOLD(offset) (CVMX_ADD_IO_SEG(0x0001180028000140ull) + ((offset) & 15) * 8)
53*4882a593Smuzhiyun #define CVMX_FPA_QUE0_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(0)
54*4882a593Smuzhiyun #define CVMX_FPA_QUE1_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(1)
55*4882a593Smuzhiyun #define CVMX_FPA_QUE2_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(2)
56*4882a593Smuzhiyun #define CVMX_FPA_QUE3_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(3)
57*4882a593Smuzhiyun #define CVMX_FPA_QUE4_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(4)
58*4882a593Smuzhiyun #define CVMX_FPA_QUE5_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(5)
59*4882a593Smuzhiyun #define CVMX_FPA_QUE6_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(6)
60*4882a593Smuzhiyun #define CVMX_FPA_QUE7_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(7)
61*4882a593Smuzhiyun #define CVMX_FPA_QUE8_PAGE_INDEX (CVMX_ADD_IO_SEG(0x0001180028000250ull))
62*4882a593Smuzhiyun #define CVMX_FPA_QUEX_AVAILABLE(offset) (CVMX_ADD_IO_SEG(0x0001180028000098ull) + ((offset) & 15) * 8)
63*4882a593Smuzhiyun #define CVMX_FPA_QUEX_PAGE_INDEX(offset) (CVMX_ADD_IO_SEG(0x00011800280000F0ull) + ((offset) & 7) * 8)
64*4882a593Smuzhiyun #define CVMX_FPA_QUE_ACT (CVMX_ADD_IO_SEG(0x0001180028000138ull))
65*4882a593Smuzhiyun #define CVMX_FPA_QUE_EXP (CVMX_ADD_IO_SEG(0x0001180028000130ull))
66*4882a593Smuzhiyun #define CVMX_FPA_WART_CTL (CVMX_ADD_IO_SEG(0x00011800280000D8ull))
67*4882a593Smuzhiyun #define CVMX_FPA_WART_STATUS (CVMX_ADD_IO_SEG(0x00011800280000E0ull))
68*4882a593Smuzhiyun #define CVMX_FPA_WQE_THRESHOLD (CVMX_ADD_IO_SEG(0x0001180028000468ull))
69*4882a593Smuzhiyun #define CVMX_FPA_CLK_COUNT (CVMX_ADD_IO_SEG(0x00012800000000F0ull))
70*4882a593Smuzhiyun 
71*4882a593Smuzhiyun union cvmx_fpa_addr_range_error {
72*4882a593Smuzhiyun 	uint64_t u64;
73*4882a593Smuzhiyun 	struct cvmx_fpa_addr_range_error_s {
74*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
75*4882a593Smuzhiyun 		uint64_t reserved_38_63:26;
76*4882a593Smuzhiyun 		uint64_t pool:5;
77*4882a593Smuzhiyun 		uint64_t addr:33;
78*4882a593Smuzhiyun #else
79*4882a593Smuzhiyun 		uint64_t addr:33;
80*4882a593Smuzhiyun 		uint64_t pool:5;
81*4882a593Smuzhiyun 		uint64_t reserved_38_63:26;
82*4882a593Smuzhiyun #endif
83*4882a593Smuzhiyun 	} s;
84*4882a593Smuzhiyun };
85*4882a593Smuzhiyun 
86*4882a593Smuzhiyun union cvmx_fpa_bist_status {
87*4882a593Smuzhiyun 	uint64_t u64;
88*4882a593Smuzhiyun 	struct cvmx_fpa_bist_status_s {
89*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
90*4882a593Smuzhiyun 		uint64_t reserved_5_63:59;
91*4882a593Smuzhiyun 		uint64_t frd:1;
92*4882a593Smuzhiyun 		uint64_t fpf0:1;
93*4882a593Smuzhiyun 		uint64_t fpf1:1;
94*4882a593Smuzhiyun 		uint64_t ffr:1;
95*4882a593Smuzhiyun 		uint64_t fdr:1;
96*4882a593Smuzhiyun #else
97*4882a593Smuzhiyun 		uint64_t fdr:1;
98*4882a593Smuzhiyun 		uint64_t ffr:1;
99*4882a593Smuzhiyun 		uint64_t fpf1:1;
100*4882a593Smuzhiyun 		uint64_t fpf0:1;
101*4882a593Smuzhiyun 		uint64_t frd:1;
102*4882a593Smuzhiyun 		uint64_t reserved_5_63:59;
103*4882a593Smuzhiyun #endif
104*4882a593Smuzhiyun 	} s;
105*4882a593Smuzhiyun };
106*4882a593Smuzhiyun 
107*4882a593Smuzhiyun union cvmx_fpa_ctl_status {
108*4882a593Smuzhiyun 	uint64_t u64;
109*4882a593Smuzhiyun 	struct cvmx_fpa_ctl_status_s {
110*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
111*4882a593Smuzhiyun 		uint64_t reserved_21_63:43;
112*4882a593Smuzhiyun 		uint64_t free_en:1;
113*4882a593Smuzhiyun 		uint64_t ret_off:1;
114*4882a593Smuzhiyun 		uint64_t req_off:1;
115*4882a593Smuzhiyun 		uint64_t reset:1;
116*4882a593Smuzhiyun 		uint64_t use_ldt:1;
117*4882a593Smuzhiyun 		uint64_t use_stt:1;
118*4882a593Smuzhiyun 		uint64_t enb:1;
119*4882a593Smuzhiyun 		uint64_t mem1_err:7;
120*4882a593Smuzhiyun 		uint64_t mem0_err:7;
121*4882a593Smuzhiyun #else
122*4882a593Smuzhiyun 		uint64_t mem0_err:7;
123*4882a593Smuzhiyun 		uint64_t mem1_err:7;
124*4882a593Smuzhiyun 		uint64_t enb:1;
125*4882a593Smuzhiyun 		uint64_t use_stt:1;
126*4882a593Smuzhiyun 		uint64_t use_ldt:1;
127*4882a593Smuzhiyun 		uint64_t reset:1;
128*4882a593Smuzhiyun 		uint64_t req_off:1;
129*4882a593Smuzhiyun 		uint64_t ret_off:1;
130*4882a593Smuzhiyun 		uint64_t free_en:1;
131*4882a593Smuzhiyun 		uint64_t reserved_21_63:43;
132*4882a593Smuzhiyun #endif
133*4882a593Smuzhiyun 	} s;
134*4882a593Smuzhiyun 	struct cvmx_fpa_ctl_status_cn30xx {
135*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
136*4882a593Smuzhiyun 		uint64_t reserved_18_63:46;
137*4882a593Smuzhiyun 		uint64_t reset:1;
138*4882a593Smuzhiyun 		uint64_t use_ldt:1;
139*4882a593Smuzhiyun 		uint64_t use_stt:1;
140*4882a593Smuzhiyun 		uint64_t enb:1;
141*4882a593Smuzhiyun 		uint64_t mem1_err:7;
142*4882a593Smuzhiyun 		uint64_t mem0_err:7;
143*4882a593Smuzhiyun #else
144*4882a593Smuzhiyun 		uint64_t mem0_err:7;
145*4882a593Smuzhiyun 		uint64_t mem1_err:7;
146*4882a593Smuzhiyun 		uint64_t enb:1;
147*4882a593Smuzhiyun 		uint64_t use_stt:1;
148*4882a593Smuzhiyun 		uint64_t use_ldt:1;
149*4882a593Smuzhiyun 		uint64_t reset:1;
150*4882a593Smuzhiyun 		uint64_t reserved_18_63:46;
151*4882a593Smuzhiyun #endif
152*4882a593Smuzhiyun 	} cn30xx;
153*4882a593Smuzhiyun };
154*4882a593Smuzhiyun 
155*4882a593Smuzhiyun union cvmx_fpa_fpfx_marks {
156*4882a593Smuzhiyun 	uint64_t u64;
157*4882a593Smuzhiyun 	struct cvmx_fpa_fpfx_marks_s {
158*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
159*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
160*4882a593Smuzhiyun 		uint64_t fpf_wr:11;
161*4882a593Smuzhiyun 		uint64_t fpf_rd:11;
162*4882a593Smuzhiyun #else
163*4882a593Smuzhiyun 		uint64_t fpf_rd:11;
164*4882a593Smuzhiyun 		uint64_t fpf_wr:11;
165*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
166*4882a593Smuzhiyun #endif
167*4882a593Smuzhiyun 	} s;
168*4882a593Smuzhiyun };
169*4882a593Smuzhiyun 
170*4882a593Smuzhiyun union cvmx_fpa_fpfx_size {
171*4882a593Smuzhiyun 	uint64_t u64;
172*4882a593Smuzhiyun 	struct cvmx_fpa_fpfx_size_s {
173*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
174*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
175*4882a593Smuzhiyun 		uint64_t fpf_siz:11;
176*4882a593Smuzhiyun #else
177*4882a593Smuzhiyun 		uint64_t fpf_siz:11;
178*4882a593Smuzhiyun 		uint64_t reserved_11_63:53;
179*4882a593Smuzhiyun #endif
180*4882a593Smuzhiyun 	} s;
181*4882a593Smuzhiyun };
182*4882a593Smuzhiyun 
183*4882a593Smuzhiyun union cvmx_fpa_fpf0_marks {
184*4882a593Smuzhiyun 	uint64_t u64;
185*4882a593Smuzhiyun 	struct cvmx_fpa_fpf0_marks_s {
186*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
187*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
188*4882a593Smuzhiyun 		uint64_t fpf_wr:12;
189*4882a593Smuzhiyun 		uint64_t fpf_rd:12;
190*4882a593Smuzhiyun #else
191*4882a593Smuzhiyun 		uint64_t fpf_rd:12;
192*4882a593Smuzhiyun 		uint64_t fpf_wr:12;
193*4882a593Smuzhiyun 		uint64_t reserved_24_63:40;
194*4882a593Smuzhiyun #endif
195*4882a593Smuzhiyun 	} s;
196*4882a593Smuzhiyun };
197*4882a593Smuzhiyun 
198*4882a593Smuzhiyun union cvmx_fpa_fpf0_size {
199*4882a593Smuzhiyun 	uint64_t u64;
200*4882a593Smuzhiyun 	struct cvmx_fpa_fpf0_size_s {
201*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
202*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
203*4882a593Smuzhiyun 		uint64_t fpf_siz:12;
204*4882a593Smuzhiyun #else
205*4882a593Smuzhiyun 		uint64_t fpf_siz:12;
206*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
207*4882a593Smuzhiyun #endif
208*4882a593Smuzhiyun 	} s;
209*4882a593Smuzhiyun };
210*4882a593Smuzhiyun 
211*4882a593Smuzhiyun union cvmx_fpa_fpf8_marks {
212*4882a593Smuzhiyun 	uint64_t u64;
213*4882a593Smuzhiyun 	struct cvmx_fpa_fpf8_marks_s {
214*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
215*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
216*4882a593Smuzhiyun 		uint64_t fpf_wr:11;
217*4882a593Smuzhiyun 		uint64_t fpf_rd:11;
218*4882a593Smuzhiyun #else
219*4882a593Smuzhiyun 		uint64_t fpf_rd:11;
220*4882a593Smuzhiyun 		uint64_t fpf_wr:11;
221*4882a593Smuzhiyun 		uint64_t reserved_22_63:42;
222*4882a593Smuzhiyun #endif
223*4882a593Smuzhiyun 	} s;
224*4882a593Smuzhiyun };
225*4882a593Smuzhiyun 
226*4882a593Smuzhiyun union cvmx_fpa_fpf8_size {
227*4882a593Smuzhiyun 	uint64_t u64;
228*4882a593Smuzhiyun 	struct cvmx_fpa_fpf8_size_s {
229*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
230*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
231*4882a593Smuzhiyun 		uint64_t fpf_siz:12;
232*4882a593Smuzhiyun #else
233*4882a593Smuzhiyun 		uint64_t fpf_siz:12;
234*4882a593Smuzhiyun 		uint64_t reserved_12_63:52;
235*4882a593Smuzhiyun #endif
236*4882a593Smuzhiyun 	} s;
237*4882a593Smuzhiyun };
238*4882a593Smuzhiyun 
239*4882a593Smuzhiyun union cvmx_fpa_int_enb {
240*4882a593Smuzhiyun 	uint64_t u64;
241*4882a593Smuzhiyun 	struct cvmx_fpa_int_enb_s {
242*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
243*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
244*4882a593Smuzhiyun 		uint64_t paddr_e:1;
245*4882a593Smuzhiyun 		uint64_t reserved_44_48:5;
246*4882a593Smuzhiyun 		uint64_t free7:1;
247*4882a593Smuzhiyun 		uint64_t free6:1;
248*4882a593Smuzhiyun 		uint64_t free5:1;
249*4882a593Smuzhiyun 		uint64_t free4:1;
250*4882a593Smuzhiyun 		uint64_t free3:1;
251*4882a593Smuzhiyun 		uint64_t free2:1;
252*4882a593Smuzhiyun 		uint64_t free1:1;
253*4882a593Smuzhiyun 		uint64_t free0:1;
254*4882a593Smuzhiyun 		uint64_t pool7th:1;
255*4882a593Smuzhiyun 		uint64_t pool6th:1;
256*4882a593Smuzhiyun 		uint64_t pool5th:1;
257*4882a593Smuzhiyun 		uint64_t pool4th:1;
258*4882a593Smuzhiyun 		uint64_t pool3th:1;
259*4882a593Smuzhiyun 		uint64_t pool2th:1;
260*4882a593Smuzhiyun 		uint64_t pool1th:1;
261*4882a593Smuzhiyun 		uint64_t pool0th:1;
262*4882a593Smuzhiyun 		uint64_t q7_perr:1;
263*4882a593Smuzhiyun 		uint64_t q7_coff:1;
264*4882a593Smuzhiyun 		uint64_t q7_und:1;
265*4882a593Smuzhiyun 		uint64_t q6_perr:1;
266*4882a593Smuzhiyun 		uint64_t q6_coff:1;
267*4882a593Smuzhiyun 		uint64_t q6_und:1;
268*4882a593Smuzhiyun 		uint64_t q5_perr:1;
269*4882a593Smuzhiyun 		uint64_t q5_coff:1;
270*4882a593Smuzhiyun 		uint64_t q5_und:1;
271*4882a593Smuzhiyun 		uint64_t q4_perr:1;
272*4882a593Smuzhiyun 		uint64_t q4_coff:1;
273*4882a593Smuzhiyun 		uint64_t q4_und:1;
274*4882a593Smuzhiyun 		uint64_t q3_perr:1;
275*4882a593Smuzhiyun 		uint64_t q3_coff:1;
276*4882a593Smuzhiyun 		uint64_t q3_und:1;
277*4882a593Smuzhiyun 		uint64_t q2_perr:1;
278*4882a593Smuzhiyun 		uint64_t q2_coff:1;
279*4882a593Smuzhiyun 		uint64_t q2_und:1;
280*4882a593Smuzhiyun 		uint64_t q1_perr:1;
281*4882a593Smuzhiyun 		uint64_t q1_coff:1;
282*4882a593Smuzhiyun 		uint64_t q1_und:1;
283*4882a593Smuzhiyun 		uint64_t q0_perr:1;
284*4882a593Smuzhiyun 		uint64_t q0_coff:1;
285*4882a593Smuzhiyun 		uint64_t q0_und:1;
286*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
287*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
288*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
289*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
290*4882a593Smuzhiyun #else
291*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
292*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
293*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
294*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
295*4882a593Smuzhiyun 		uint64_t q0_und:1;
296*4882a593Smuzhiyun 		uint64_t q0_coff:1;
297*4882a593Smuzhiyun 		uint64_t q0_perr:1;
298*4882a593Smuzhiyun 		uint64_t q1_und:1;
299*4882a593Smuzhiyun 		uint64_t q1_coff:1;
300*4882a593Smuzhiyun 		uint64_t q1_perr:1;
301*4882a593Smuzhiyun 		uint64_t q2_und:1;
302*4882a593Smuzhiyun 		uint64_t q2_coff:1;
303*4882a593Smuzhiyun 		uint64_t q2_perr:1;
304*4882a593Smuzhiyun 		uint64_t q3_und:1;
305*4882a593Smuzhiyun 		uint64_t q3_coff:1;
306*4882a593Smuzhiyun 		uint64_t q3_perr:1;
307*4882a593Smuzhiyun 		uint64_t q4_und:1;
308*4882a593Smuzhiyun 		uint64_t q4_coff:1;
309*4882a593Smuzhiyun 		uint64_t q4_perr:1;
310*4882a593Smuzhiyun 		uint64_t q5_und:1;
311*4882a593Smuzhiyun 		uint64_t q5_coff:1;
312*4882a593Smuzhiyun 		uint64_t q5_perr:1;
313*4882a593Smuzhiyun 		uint64_t q6_und:1;
314*4882a593Smuzhiyun 		uint64_t q6_coff:1;
315*4882a593Smuzhiyun 		uint64_t q6_perr:1;
316*4882a593Smuzhiyun 		uint64_t q7_und:1;
317*4882a593Smuzhiyun 		uint64_t q7_coff:1;
318*4882a593Smuzhiyun 		uint64_t q7_perr:1;
319*4882a593Smuzhiyun 		uint64_t pool0th:1;
320*4882a593Smuzhiyun 		uint64_t pool1th:1;
321*4882a593Smuzhiyun 		uint64_t pool2th:1;
322*4882a593Smuzhiyun 		uint64_t pool3th:1;
323*4882a593Smuzhiyun 		uint64_t pool4th:1;
324*4882a593Smuzhiyun 		uint64_t pool5th:1;
325*4882a593Smuzhiyun 		uint64_t pool6th:1;
326*4882a593Smuzhiyun 		uint64_t pool7th:1;
327*4882a593Smuzhiyun 		uint64_t free0:1;
328*4882a593Smuzhiyun 		uint64_t free1:1;
329*4882a593Smuzhiyun 		uint64_t free2:1;
330*4882a593Smuzhiyun 		uint64_t free3:1;
331*4882a593Smuzhiyun 		uint64_t free4:1;
332*4882a593Smuzhiyun 		uint64_t free5:1;
333*4882a593Smuzhiyun 		uint64_t free6:1;
334*4882a593Smuzhiyun 		uint64_t free7:1;
335*4882a593Smuzhiyun 		uint64_t reserved_44_48:5;
336*4882a593Smuzhiyun 		uint64_t paddr_e:1;
337*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
338*4882a593Smuzhiyun #endif
339*4882a593Smuzhiyun 	} s;
340*4882a593Smuzhiyun 	struct cvmx_fpa_int_enb_cn30xx {
341*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
342*4882a593Smuzhiyun 		uint64_t reserved_28_63:36;
343*4882a593Smuzhiyun 		uint64_t q7_perr:1;
344*4882a593Smuzhiyun 		uint64_t q7_coff:1;
345*4882a593Smuzhiyun 		uint64_t q7_und:1;
346*4882a593Smuzhiyun 		uint64_t q6_perr:1;
347*4882a593Smuzhiyun 		uint64_t q6_coff:1;
348*4882a593Smuzhiyun 		uint64_t q6_und:1;
349*4882a593Smuzhiyun 		uint64_t q5_perr:1;
350*4882a593Smuzhiyun 		uint64_t q5_coff:1;
351*4882a593Smuzhiyun 		uint64_t q5_und:1;
352*4882a593Smuzhiyun 		uint64_t q4_perr:1;
353*4882a593Smuzhiyun 		uint64_t q4_coff:1;
354*4882a593Smuzhiyun 		uint64_t q4_und:1;
355*4882a593Smuzhiyun 		uint64_t q3_perr:1;
356*4882a593Smuzhiyun 		uint64_t q3_coff:1;
357*4882a593Smuzhiyun 		uint64_t q3_und:1;
358*4882a593Smuzhiyun 		uint64_t q2_perr:1;
359*4882a593Smuzhiyun 		uint64_t q2_coff:1;
360*4882a593Smuzhiyun 		uint64_t q2_und:1;
361*4882a593Smuzhiyun 		uint64_t q1_perr:1;
362*4882a593Smuzhiyun 		uint64_t q1_coff:1;
363*4882a593Smuzhiyun 		uint64_t q1_und:1;
364*4882a593Smuzhiyun 		uint64_t q0_perr:1;
365*4882a593Smuzhiyun 		uint64_t q0_coff:1;
366*4882a593Smuzhiyun 		uint64_t q0_und:1;
367*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
368*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
369*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
370*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
371*4882a593Smuzhiyun #else
372*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
373*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
374*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
375*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
376*4882a593Smuzhiyun 		uint64_t q0_und:1;
377*4882a593Smuzhiyun 		uint64_t q0_coff:1;
378*4882a593Smuzhiyun 		uint64_t q0_perr:1;
379*4882a593Smuzhiyun 		uint64_t q1_und:1;
380*4882a593Smuzhiyun 		uint64_t q1_coff:1;
381*4882a593Smuzhiyun 		uint64_t q1_perr:1;
382*4882a593Smuzhiyun 		uint64_t q2_und:1;
383*4882a593Smuzhiyun 		uint64_t q2_coff:1;
384*4882a593Smuzhiyun 		uint64_t q2_perr:1;
385*4882a593Smuzhiyun 		uint64_t q3_und:1;
386*4882a593Smuzhiyun 		uint64_t q3_coff:1;
387*4882a593Smuzhiyun 		uint64_t q3_perr:1;
388*4882a593Smuzhiyun 		uint64_t q4_und:1;
389*4882a593Smuzhiyun 		uint64_t q4_coff:1;
390*4882a593Smuzhiyun 		uint64_t q4_perr:1;
391*4882a593Smuzhiyun 		uint64_t q5_und:1;
392*4882a593Smuzhiyun 		uint64_t q5_coff:1;
393*4882a593Smuzhiyun 		uint64_t q5_perr:1;
394*4882a593Smuzhiyun 		uint64_t q6_und:1;
395*4882a593Smuzhiyun 		uint64_t q6_coff:1;
396*4882a593Smuzhiyun 		uint64_t q6_perr:1;
397*4882a593Smuzhiyun 		uint64_t q7_und:1;
398*4882a593Smuzhiyun 		uint64_t q7_coff:1;
399*4882a593Smuzhiyun 		uint64_t q7_perr:1;
400*4882a593Smuzhiyun 		uint64_t reserved_28_63:36;
401*4882a593Smuzhiyun #endif
402*4882a593Smuzhiyun 	} cn30xx;
403*4882a593Smuzhiyun 	struct cvmx_fpa_int_enb_cn61xx {
404*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
405*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
406*4882a593Smuzhiyun 		uint64_t paddr_e:1;
407*4882a593Smuzhiyun 		uint64_t res_44:5;
408*4882a593Smuzhiyun 		uint64_t free7:1;
409*4882a593Smuzhiyun 		uint64_t free6:1;
410*4882a593Smuzhiyun 		uint64_t free5:1;
411*4882a593Smuzhiyun 		uint64_t free4:1;
412*4882a593Smuzhiyun 		uint64_t free3:1;
413*4882a593Smuzhiyun 		uint64_t free2:1;
414*4882a593Smuzhiyun 		uint64_t free1:1;
415*4882a593Smuzhiyun 		uint64_t free0:1;
416*4882a593Smuzhiyun 		uint64_t pool7th:1;
417*4882a593Smuzhiyun 		uint64_t pool6th:1;
418*4882a593Smuzhiyun 		uint64_t pool5th:1;
419*4882a593Smuzhiyun 		uint64_t pool4th:1;
420*4882a593Smuzhiyun 		uint64_t pool3th:1;
421*4882a593Smuzhiyun 		uint64_t pool2th:1;
422*4882a593Smuzhiyun 		uint64_t pool1th:1;
423*4882a593Smuzhiyun 		uint64_t pool0th:1;
424*4882a593Smuzhiyun 		uint64_t q7_perr:1;
425*4882a593Smuzhiyun 		uint64_t q7_coff:1;
426*4882a593Smuzhiyun 		uint64_t q7_und:1;
427*4882a593Smuzhiyun 		uint64_t q6_perr:1;
428*4882a593Smuzhiyun 		uint64_t q6_coff:1;
429*4882a593Smuzhiyun 		uint64_t q6_und:1;
430*4882a593Smuzhiyun 		uint64_t q5_perr:1;
431*4882a593Smuzhiyun 		uint64_t q5_coff:1;
432*4882a593Smuzhiyun 		uint64_t q5_und:1;
433*4882a593Smuzhiyun 		uint64_t q4_perr:1;
434*4882a593Smuzhiyun 		uint64_t q4_coff:1;
435*4882a593Smuzhiyun 		uint64_t q4_und:1;
436*4882a593Smuzhiyun 		uint64_t q3_perr:1;
437*4882a593Smuzhiyun 		uint64_t q3_coff:1;
438*4882a593Smuzhiyun 		uint64_t q3_und:1;
439*4882a593Smuzhiyun 		uint64_t q2_perr:1;
440*4882a593Smuzhiyun 		uint64_t q2_coff:1;
441*4882a593Smuzhiyun 		uint64_t q2_und:1;
442*4882a593Smuzhiyun 		uint64_t q1_perr:1;
443*4882a593Smuzhiyun 		uint64_t q1_coff:1;
444*4882a593Smuzhiyun 		uint64_t q1_und:1;
445*4882a593Smuzhiyun 		uint64_t q0_perr:1;
446*4882a593Smuzhiyun 		uint64_t q0_coff:1;
447*4882a593Smuzhiyun 		uint64_t q0_und:1;
448*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
449*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
450*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
451*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
452*4882a593Smuzhiyun #else
453*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
454*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
455*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
456*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
457*4882a593Smuzhiyun 		uint64_t q0_und:1;
458*4882a593Smuzhiyun 		uint64_t q0_coff:1;
459*4882a593Smuzhiyun 		uint64_t q0_perr:1;
460*4882a593Smuzhiyun 		uint64_t q1_und:1;
461*4882a593Smuzhiyun 		uint64_t q1_coff:1;
462*4882a593Smuzhiyun 		uint64_t q1_perr:1;
463*4882a593Smuzhiyun 		uint64_t q2_und:1;
464*4882a593Smuzhiyun 		uint64_t q2_coff:1;
465*4882a593Smuzhiyun 		uint64_t q2_perr:1;
466*4882a593Smuzhiyun 		uint64_t q3_und:1;
467*4882a593Smuzhiyun 		uint64_t q3_coff:1;
468*4882a593Smuzhiyun 		uint64_t q3_perr:1;
469*4882a593Smuzhiyun 		uint64_t q4_und:1;
470*4882a593Smuzhiyun 		uint64_t q4_coff:1;
471*4882a593Smuzhiyun 		uint64_t q4_perr:1;
472*4882a593Smuzhiyun 		uint64_t q5_und:1;
473*4882a593Smuzhiyun 		uint64_t q5_coff:1;
474*4882a593Smuzhiyun 		uint64_t q5_perr:1;
475*4882a593Smuzhiyun 		uint64_t q6_und:1;
476*4882a593Smuzhiyun 		uint64_t q6_coff:1;
477*4882a593Smuzhiyun 		uint64_t q6_perr:1;
478*4882a593Smuzhiyun 		uint64_t q7_und:1;
479*4882a593Smuzhiyun 		uint64_t q7_coff:1;
480*4882a593Smuzhiyun 		uint64_t q7_perr:1;
481*4882a593Smuzhiyun 		uint64_t pool0th:1;
482*4882a593Smuzhiyun 		uint64_t pool1th:1;
483*4882a593Smuzhiyun 		uint64_t pool2th:1;
484*4882a593Smuzhiyun 		uint64_t pool3th:1;
485*4882a593Smuzhiyun 		uint64_t pool4th:1;
486*4882a593Smuzhiyun 		uint64_t pool5th:1;
487*4882a593Smuzhiyun 		uint64_t pool6th:1;
488*4882a593Smuzhiyun 		uint64_t pool7th:1;
489*4882a593Smuzhiyun 		uint64_t free0:1;
490*4882a593Smuzhiyun 		uint64_t free1:1;
491*4882a593Smuzhiyun 		uint64_t free2:1;
492*4882a593Smuzhiyun 		uint64_t free3:1;
493*4882a593Smuzhiyun 		uint64_t free4:1;
494*4882a593Smuzhiyun 		uint64_t free5:1;
495*4882a593Smuzhiyun 		uint64_t free6:1;
496*4882a593Smuzhiyun 		uint64_t free7:1;
497*4882a593Smuzhiyun 		uint64_t res_44:5;
498*4882a593Smuzhiyun 		uint64_t paddr_e:1;
499*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
500*4882a593Smuzhiyun #endif
501*4882a593Smuzhiyun 	} cn61xx;
502*4882a593Smuzhiyun 	struct cvmx_fpa_int_enb_cn63xx {
503*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
504*4882a593Smuzhiyun 		uint64_t reserved_44_63:20;
505*4882a593Smuzhiyun 		uint64_t free7:1;
506*4882a593Smuzhiyun 		uint64_t free6:1;
507*4882a593Smuzhiyun 		uint64_t free5:1;
508*4882a593Smuzhiyun 		uint64_t free4:1;
509*4882a593Smuzhiyun 		uint64_t free3:1;
510*4882a593Smuzhiyun 		uint64_t free2:1;
511*4882a593Smuzhiyun 		uint64_t free1:1;
512*4882a593Smuzhiyun 		uint64_t free0:1;
513*4882a593Smuzhiyun 		uint64_t pool7th:1;
514*4882a593Smuzhiyun 		uint64_t pool6th:1;
515*4882a593Smuzhiyun 		uint64_t pool5th:1;
516*4882a593Smuzhiyun 		uint64_t pool4th:1;
517*4882a593Smuzhiyun 		uint64_t pool3th:1;
518*4882a593Smuzhiyun 		uint64_t pool2th:1;
519*4882a593Smuzhiyun 		uint64_t pool1th:1;
520*4882a593Smuzhiyun 		uint64_t pool0th:1;
521*4882a593Smuzhiyun 		uint64_t q7_perr:1;
522*4882a593Smuzhiyun 		uint64_t q7_coff:1;
523*4882a593Smuzhiyun 		uint64_t q7_und:1;
524*4882a593Smuzhiyun 		uint64_t q6_perr:1;
525*4882a593Smuzhiyun 		uint64_t q6_coff:1;
526*4882a593Smuzhiyun 		uint64_t q6_und:1;
527*4882a593Smuzhiyun 		uint64_t q5_perr:1;
528*4882a593Smuzhiyun 		uint64_t q5_coff:1;
529*4882a593Smuzhiyun 		uint64_t q5_und:1;
530*4882a593Smuzhiyun 		uint64_t q4_perr:1;
531*4882a593Smuzhiyun 		uint64_t q4_coff:1;
532*4882a593Smuzhiyun 		uint64_t q4_und:1;
533*4882a593Smuzhiyun 		uint64_t q3_perr:1;
534*4882a593Smuzhiyun 		uint64_t q3_coff:1;
535*4882a593Smuzhiyun 		uint64_t q3_und:1;
536*4882a593Smuzhiyun 		uint64_t q2_perr:1;
537*4882a593Smuzhiyun 		uint64_t q2_coff:1;
538*4882a593Smuzhiyun 		uint64_t q2_und:1;
539*4882a593Smuzhiyun 		uint64_t q1_perr:1;
540*4882a593Smuzhiyun 		uint64_t q1_coff:1;
541*4882a593Smuzhiyun 		uint64_t q1_und:1;
542*4882a593Smuzhiyun 		uint64_t q0_perr:1;
543*4882a593Smuzhiyun 		uint64_t q0_coff:1;
544*4882a593Smuzhiyun 		uint64_t q0_und:1;
545*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
546*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
547*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
548*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
549*4882a593Smuzhiyun #else
550*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
551*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
552*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
553*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
554*4882a593Smuzhiyun 		uint64_t q0_und:1;
555*4882a593Smuzhiyun 		uint64_t q0_coff:1;
556*4882a593Smuzhiyun 		uint64_t q0_perr:1;
557*4882a593Smuzhiyun 		uint64_t q1_und:1;
558*4882a593Smuzhiyun 		uint64_t q1_coff:1;
559*4882a593Smuzhiyun 		uint64_t q1_perr:1;
560*4882a593Smuzhiyun 		uint64_t q2_und:1;
561*4882a593Smuzhiyun 		uint64_t q2_coff:1;
562*4882a593Smuzhiyun 		uint64_t q2_perr:1;
563*4882a593Smuzhiyun 		uint64_t q3_und:1;
564*4882a593Smuzhiyun 		uint64_t q3_coff:1;
565*4882a593Smuzhiyun 		uint64_t q3_perr:1;
566*4882a593Smuzhiyun 		uint64_t q4_und:1;
567*4882a593Smuzhiyun 		uint64_t q4_coff:1;
568*4882a593Smuzhiyun 		uint64_t q4_perr:1;
569*4882a593Smuzhiyun 		uint64_t q5_und:1;
570*4882a593Smuzhiyun 		uint64_t q5_coff:1;
571*4882a593Smuzhiyun 		uint64_t q5_perr:1;
572*4882a593Smuzhiyun 		uint64_t q6_und:1;
573*4882a593Smuzhiyun 		uint64_t q6_coff:1;
574*4882a593Smuzhiyun 		uint64_t q6_perr:1;
575*4882a593Smuzhiyun 		uint64_t q7_und:1;
576*4882a593Smuzhiyun 		uint64_t q7_coff:1;
577*4882a593Smuzhiyun 		uint64_t q7_perr:1;
578*4882a593Smuzhiyun 		uint64_t pool0th:1;
579*4882a593Smuzhiyun 		uint64_t pool1th:1;
580*4882a593Smuzhiyun 		uint64_t pool2th:1;
581*4882a593Smuzhiyun 		uint64_t pool3th:1;
582*4882a593Smuzhiyun 		uint64_t pool4th:1;
583*4882a593Smuzhiyun 		uint64_t pool5th:1;
584*4882a593Smuzhiyun 		uint64_t pool6th:1;
585*4882a593Smuzhiyun 		uint64_t pool7th:1;
586*4882a593Smuzhiyun 		uint64_t free0:1;
587*4882a593Smuzhiyun 		uint64_t free1:1;
588*4882a593Smuzhiyun 		uint64_t free2:1;
589*4882a593Smuzhiyun 		uint64_t free3:1;
590*4882a593Smuzhiyun 		uint64_t free4:1;
591*4882a593Smuzhiyun 		uint64_t free5:1;
592*4882a593Smuzhiyun 		uint64_t free6:1;
593*4882a593Smuzhiyun 		uint64_t free7:1;
594*4882a593Smuzhiyun 		uint64_t reserved_44_63:20;
595*4882a593Smuzhiyun #endif
596*4882a593Smuzhiyun 	} cn63xx;
597*4882a593Smuzhiyun 	struct cvmx_fpa_int_enb_cn68xx {
598*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
599*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
600*4882a593Smuzhiyun 		uint64_t paddr_e:1;
601*4882a593Smuzhiyun 		uint64_t pool8th:1;
602*4882a593Smuzhiyun 		uint64_t q8_perr:1;
603*4882a593Smuzhiyun 		uint64_t q8_coff:1;
604*4882a593Smuzhiyun 		uint64_t q8_und:1;
605*4882a593Smuzhiyun 		uint64_t free8:1;
606*4882a593Smuzhiyun 		uint64_t free7:1;
607*4882a593Smuzhiyun 		uint64_t free6:1;
608*4882a593Smuzhiyun 		uint64_t free5:1;
609*4882a593Smuzhiyun 		uint64_t free4:1;
610*4882a593Smuzhiyun 		uint64_t free3:1;
611*4882a593Smuzhiyun 		uint64_t free2:1;
612*4882a593Smuzhiyun 		uint64_t free1:1;
613*4882a593Smuzhiyun 		uint64_t free0:1;
614*4882a593Smuzhiyun 		uint64_t pool7th:1;
615*4882a593Smuzhiyun 		uint64_t pool6th:1;
616*4882a593Smuzhiyun 		uint64_t pool5th:1;
617*4882a593Smuzhiyun 		uint64_t pool4th:1;
618*4882a593Smuzhiyun 		uint64_t pool3th:1;
619*4882a593Smuzhiyun 		uint64_t pool2th:1;
620*4882a593Smuzhiyun 		uint64_t pool1th:1;
621*4882a593Smuzhiyun 		uint64_t pool0th:1;
622*4882a593Smuzhiyun 		uint64_t q7_perr:1;
623*4882a593Smuzhiyun 		uint64_t q7_coff:1;
624*4882a593Smuzhiyun 		uint64_t q7_und:1;
625*4882a593Smuzhiyun 		uint64_t q6_perr:1;
626*4882a593Smuzhiyun 		uint64_t q6_coff:1;
627*4882a593Smuzhiyun 		uint64_t q6_und:1;
628*4882a593Smuzhiyun 		uint64_t q5_perr:1;
629*4882a593Smuzhiyun 		uint64_t q5_coff:1;
630*4882a593Smuzhiyun 		uint64_t q5_und:1;
631*4882a593Smuzhiyun 		uint64_t q4_perr:1;
632*4882a593Smuzhiyun 		uint64_t q4_coff:1;
633*4882a593Smuzhiyun 		uint64_t q4_und:1;
634*4882a593Smuzhiyun 		uint64_t q3_perr:1;
635*4882a593Smuzhiyun 		uint64_t q3_coff:1;
636*4882a593Smuzhiyun 		uint64_t q3_und:1;
637*4882a593Smuzhiyun 		uint64_t q2_perr:1;
638*4882a593Smuzhiyun 		uint64_t q2_coff:1;
639*4882a593Smuzhiyun 		uint64_t q2_und:1;
640*4882a593Smuzhiyun 		uint64_t q1_perr:1;
641*4882a593Smuzhiyun 		uint64_t q1_coff:1;
642*4882a593Smuzhiyun 		uint64_t q1_und:1;
643*4882a593Smuzhiyun 		uint64_t q0_perr:1;
644*4882a593Smuzhiyun 		uint64_t q0_coff:1;
645*4882a593Smuzhiyun 		uint64_t q0_und:1;
646*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
647*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
648*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
649*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
650*4882a593Smuzhiyun #else
651*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
652*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
653*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
654*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
655*4882a593Smuzhiyun 		uint64_t q0_und:1;
656*4882a593Smuzhiyun 		uint64_t q0_coff:1;
657*4882a593Smuzhiyun 		uint64_t q0_perr:1;
658*4882a593Smuzhiyun 		uint64_t q1_und:1;
659*4882a593Smuzhiyun 		uint64_t q1_coff:1;
660*4882a593Smuzhiyun 		uint64_t q1_perr:1;
661*4882a593Smuzhiyun 		uint64_t q2_und:1;
662*4882a593Smuzhiyun 		uint64_t q2_coff:1;
663*4882a593Smuzhiyun 		uint64_t q2_perr:1;
664*4882a593Smuzhiyun 		uint64_t q3_und:1;
665*4882a593Smuzhiyun 		uint64_t q3_coff:1;
666*4882a593Smuzhiyun 		uint64_t q3_perr:1;
667*4882a593Smuzhiyun 		uint64_t q4_und:1;
668*4882a593Smuzhiyun 		uint64_t q4_coff:1;
669*4882a593Smuzhiyun 		uint64_t q4_perr:1;
670*4882a593Smuzhiyun 		uint64_t q5_und:1;
671*4882a593Smuzhiyun 		uint64_t q5_coff:1;
672*4882a593Smuzhiyun 		uint64_t q5_perr:1;
673*4882a593Smuzhiyun 		uint64_t q6_und:1;
674*4882a593Smuzhiyun 		uint64_t q6_coff:1;
675*4882a593Smuzhiyun 		uint64_t q6_perr:1;
676*4882a593Smuzhiyun 		uint64_t q7_und:1;
677*4882a593Smuzhiyun 		uint64_t q7_coff:1;
678*4882a593Smuzhiyun 		uint64_t q7_perr:1;
679*4882a593Smuzhiyun 		uint64_t pool0th:1;
680*4882a593Smuzhiyun 		uint64_t pool1th:1;
681*4882a593Smuzhiyun 		uint64_t pool2th:1;
682*4882a593Smuzhiyun 		uint64_t pool3th:1;
683*4882a593Smuzhiyun 		uint64_t pool4th:1;
684*4882a593Smuzhiyun 		uint64_t pool5th:1;
685*4882a593Smuzhiyun 		uint64_t pool6th:1;
686*4882a593Smuzhiyun 		uint64_t pool7th:1;
687*4882a593Smuzhiyun 		uint64_t free0:1;
688*4882a593Smuzhiyun 		uint64_t free1:1;
689*4882a593Smuzhiyun 		uint64_t free2:1;
690*4882a593Smuzhiyun 		uint64_t free3:1;
691*4882a593Smuzhiyun 		uint64_t free4:1;
692*4882a593Smuzhiyun 		uint64_t free5:1;
693*4882a593Smuzhiyun 		uint64_t free6:1;
694*4882a593Smuzhiyun 		uint64_t free7:1;
695*4882a593Smuzhiyun 		uint64_t free8:1;
696*4882a593Smuzhiyun 		uint64_t q8_und:1;
697*4882a593Smuzhiyun 		uint64_t q8_coff:1;
698*4882a593Smuzhiyun 		uint64_t q8_perr:1;
699*4882a593Smuzhiyun 		uint64_t pool8th:1;
700*4882a593Smuzhiyun 		uint64_t paddr_e:1;
701*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
702*4882a593Smuzhiyun #endif
703*4882a593Smuzhiyun 	} cn68xx;
704*4882a593Smuzhiyun };
705*4882a593Smuzhiyun 
706*4882a593Smuzhiyun union cvmx_fpa_int_sum {
707*4882a593Smuzhiyun 	uint64_t u64;
708*4882a593Smuzhiyun 	struct cvmx_fpa_int_sum_s {
709*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
710*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
711*4882a593Smuzhiyun 		uint64_t paddr_e:1;
712*4882a593Smuzhiyun 		uint64_t pool8th:1;
713*4882a593Smuzhiyun 		uint64_t q8_perr:1;
714*4882a593Smuzhiyun 		uint64_t q8_coff:1;
715*4882a593Smuzhiyun 		uint64_t q8_und:1;
716*4882a593Smuzhiyun 		uint64_t free8:1;
717*4882a593Smuzhiyun 		uint64_t free7:1;
718*4882a593Smuzhiyun 		uint64_t free6:1;
719*4882a593Smuzhiyun 		uint64_t free5:1;
720*4882a593Smuzhiyun 		uint64_t free4:1;
721*4882a593Smuzhiyun 		uint64_t free3:1;
722*4882a593Smuzhiyun 		uint64_t free2:1;
723*4882a593Smuzhiyun 		uint64_t free1:1;
724*4882a593Smuzhiyun 		uint64_t free0:1;
725*4882a593Smuzhiyun 		uint64_t pool7th:1;
726*4882a593Smuzhiyun 		uint64_t pool6th:1;
727*4882a593Smuzhiyun 		uint64_t pool5th:1;
728*4882a593Smuzhiyun 		uint64_t pool4th:1;
729*4882a593Smuzhiyun 		uint64_t pool3th:1;
730*4882a593Smuzhiyun 		uint64_t pool2th:1;
731*4882a593Smuzhiyun 		uint64_t pool1th:1;
732*4882a593Smuzhiyun 		uint64_t pool0th:1;
733*4882a593Smuzhiyun 		uint64_t q7_perr:1;
734*4882a593Smuzhiyun 		uint64_t q7_coff:1;
735*4882a593Smuzhiyun 		uint64_t q7_und:1;
736*4882a593Smuzhiyun 		uint64_t q6_perr:1;
737*4882a593Smuzhiyun 		uint64_t q6_coff:1;
738*4882a593Smuzhiyun 		uint64_t q6_und:1;
739*4882a593Smuzhiyun 		uint64_t q5_perr:1;
740*4882a593Smuzhiyun 		uint64_t q5_coff:1;
741*4882a593Smuzhiyun 		uint64_t q5_und:1;
742*4882a593Smuzhiyun 		uint64_t q4_perr:1;
743*4882a593Smuzhiyun 		uint64_t q4_coff:1;
744*4882a593Smuzhiyun 		uint64_t q4_und:1;
745*4882a593Smuzhiyun 		uint64_t q3_perr:1;
746*4882a593Smuzhiyun 		uint64_t q3_coff:1;
747*4882a593Smuzhiyun 		uint64_t q3_und:1;
748*4882a593Smuzhiyun 		uint64_t q2_perr:1;
749*4882a593Smuzhiyun 		uint64_t q2_coff:1;
750*4882a593Smuzhiyun 		uint64_t q2_und:1;
751*4882a593Smuzhiyun 		uint64_t q1_perr:1;
752*4882a593Smuzhiyun 		uint64_t q1_coff:1;
753*4882a593Smuzhiyun 		uint64_t q1_und:1;
754*4882a593Smuzhiyun 		uint64_t q0_perr:1;
755*4882a593Smuzhiyun 		uint64_t q0_coff:1;
756*4882a593Smuzhiyun 		uint64_t q0_und:1;
757*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
758*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
759*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
760*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
761*4882a593Smuzhiyun #else
762*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
763*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
764*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
765*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
766*4882a593Smuzhiyun 		uint64_t q0_und:1;
767*4882a593Smuzhiyun 		uint64_t q0_coff:1;
768*4882a593Smuzhiyun 		uint64_t q0_perr:1;
769*4882a593Smuzhiyun 		uint64_t q1_und:1;
770*4882a593Smuzhiyun 		uint64_t q1_coff:1;
771*4882a593Smuzhiyun 		uint64_t q1_perr:1;
772*4882a593Smuzhiyun 		uint64_t q2_und:1;
773*4882a593Smuzhiyun 		uint64_t q2_coff:1;
774*4882a593Smuzhiyun 		uint64_t q2_perr:1;
775*4882a593Smuzhiyun 		uint64_t q3_und:1;
776*4882a593Smuzhiyun 		uint64_t q3_coff:1;
777*4882a593Smuzhiyun 		uint64_t q3_perr:1;
778*4882a593Smuzhiyun 		uint64_t q4_und:1;
779*4882a593Smuzhiyun 		uint64_t q4_coff:1;
780*4882a593Smuzhiyun 		uint64_t q4_perr:1;
781*4882a593Smuzhiyun 		uint64_t q5_und:1;
782*4882a593Smuzhiyun 		uint64_t q5_coff:1;
783*4882a593Smuzhiyun 		uint64_t q5_perr:1;
784*4882a593Smuzhiyun 		uint64_t q6_und:1;
785*4882a593Smuzhiyun 		uint64_t q6_coff:1;
786*4882a593Smuzhiyun 		uint64_t q6_perr:1;
787*4882a593Smuzhiyun 		uint64_t q7_und:1;
788*4882a593Smuzhiyun 		uint64_t q7_coff:1;
789*4882a593Smuzhiyun 		uint64_t q7_perr:1;
790*4882a593Smuzhiyun 		uint64_t pool0th:1;
791*4882a593Smuzhiyun 		uint64_t pool1th:1;
792*4882a593Smuzhiyun 		uint64_t pool2th:1;
793*4882a593Smuzhiyun 		uint64_t pool3th:1;
794*4882a593Smuzhiyun 		uint64_t pool4th:1;
795*4882a593Smuzhiyun 		uint64_t pool5th:1;
796*4882a593Smuzhiyun 		uint64_t pool6th:1;
797*4882a593Smuzhiyun 		uint64_t pool7th:1;
798*4882a593Smuzhiyun 		uint64_t free0:1;
799*4882a593Smuzhiyun 		uint64_t free1:1;
800*4882a593Smuzhiyun 		uint64_t free2:1;
801*4882a593Smuzhiyun 		uint64_t free3:1;
802*4882a593Smuzhiyun 		uint64_t free4:1;
803*4882a593Smuzhiyun 		uint64_t free5:1;
804*4882a593Smuzhiyun 		uint64_t free6:1;
805*4882a593Smuzhiyun 		uint64_t free7:1;
806*4882a593Smuzhiyun 		uint64_t free8:1;
807*4882a593Smuzhiyun 		uint64_t q8_und:1;
808*4882a593Smuzhiyun 		uint64_t q8_coff:1;
809*4882a593Smuzhiyun 		uint64_t q8_perr:1;
810*4882a593Smuzhiyun 		uint64_t pool8th:1;
811*4882a593Smuzhiyun 		uint64_t paddr_e:1;
812*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
813*4882a593Smuzhiyun #endif
814*4882a593Smuzhiyun 	} s;
815*4882a593Smuzhiyun 	struct cvmx_fpa_int_sum_cn30xx {
816*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
817*4882a593Smuzhiyun 		uint64_t reserved_28_63:36;
818*4882a593Smuzhiyun 		uint64_t q7_perr:1;
819*4882a593Smuzhiyun 		uint64_t q7_coff:1;
820*4882a593Smuzhiyun 		uint64_t q7_und:1;
821*4882a593Smuzhiyun 		uint64_t q6_perr:1;
822*4882a593Smuzhiyun 		uint64_t q6_coff:1;
823*4882a593Smuzhiyun 		uint64_t q6_und:1;
824*4882a593Smuzhiyun 		uint64_t q5_perr:1;
825*4882a593Smuzhiyun 		uint64_t q5_coff:1;
826*4882a593Smuzhiyun 		uint64_t q5_und:1;
827*4882a593Smuzhiyun 		uint64_t q4_perr:1;
828*4882a593Smuzhiyun 		uint64_t q4_coff:1;
829*4882a593Smuzhiyun 		uint64_t q4_und:1;
830*4882a593Smuzhiyun 		uint64_t q3_perr:1;
831*4882a593Smuzhiyun 		uint64_t q3_coff:1;
832*4882a593Smuzhiyun 		uint64_t q3_und:1;
833*4882a593Smuzhiyun 		uint64_t q2_perr:1;
834*4882a593Smuzhiyun 		uint64_t q2_coff:1;
835*4882a593Smuzhiyun 		uint64_t q2_und:1;
836*4882a593Smuzhiyun 		uint64_t q1_perr:1;
837*4882a593Smuzhiyun 		uint64_t q1_coff:1;
838*4882a593Smuzhiyun 		uint64_t q1_und:1;
839*4882a593Smuzhiyun 		uint64_t q0_perr:1;
840*4882a593Smuzhiyun 		uint64_t q0_coff:1;
841*4882a593Smuzhiyun 		uint64_t q0_und:1;
842*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
843*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
844*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
845*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
846*4882a593Smuzhiyun #else
847*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
848*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
849*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
850*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
851*4882a593Smuzhiyun 		uint64_t q0_und:1;
852*4882a593Smuzhiyun 		uint64_t q0_coff:1;
853*4882a593Smuzhiyun 		uint64_t q0_perr:1;
854*4882a593Smuzhiyun 		uint64_t q1_und:1;
855*4882a593Smuzhiyun 		uint64_t q1_coff:1;
856*4882a593Smuzhiyun 		uint64_t q1_perr:1;
857*4882a593Smuzhiyun 		uint64_t q2_und:1;
858*4882a593Smuzhiyun 		uint64_t q2_coff:1;
859*4882a593Smuzhiyun 		uint64_t q2_perr:1;
860*4882a593Smuzhiyun 		uint64_t q3_und:1;
861*4882a593Smuzhiyun 		uint64_t q3_coff:1;
862*4882a593Smuzhiyun 		uint64_t q3_perr:1;
863*4882a593Smuzhiyun 		uint64_t q4_und:1;
864*4882a593Smuzhiyun 		uint64_t q4_coff:1;
865*4882a593Smuzhiyun 		uint64_t q4_perr:1;
866*4882a593Smuzhiyun 		uint64_t q5_und:1;
867*4882a593Smuzhiyun 		uint64_t q5_coff:1;
868*4882a593Smuzhiyun 		uint64_t q5_perr:1;
869*4882a593Smuzhiyun 		uint64_t q6_und:1;
870*4882a593Smuzhiyun 		uint64_t q6_coff:1;
871*4882a593Smuzhiyun 		uint64_t q6_perr:1;
872*4882a593Smuzhiyun 		uint64_t q7_und:1;
873*4882a593Smuzhiyun 		uint64_t q7_coff:1;
874*4882a593Smuzhiyun 		uint64_t q7_perr:1;
875*4882a593Smuzhiyun 		uint64_t reserved_28_63:36;
876*4882a593Smuzhiyun #endif
877*4882a593Smuzhiyun 	} cn30xx;
878*4882a593Smuzhiyun 	struct cvmx_fpa_int_sum_cn61xx {
879*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
880*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
881*4882a593Smuzhiyun 		uint64_t paddr_e:1;
882*4882a593Smuzhiyun 		uint64_t reserved_44_48:5;
883*4882a593Smuzhiyun 		uint64_t free7:1;
884*4882a593Smuzhiyun 		uint64_t free6:1;
885*4882a593Smuzhiyun 		uint64_t free5:1;
886*4882a593Smuzhiyun 		uint64_t free4:1;
887*4882a593Smuzhiyun 		uint64_t free3:1;
888*4882a593Smuzhiyun 		uint64_t free2:1;
889*4882a593Smuzhiyun 		uint64_t free1:1;
890*4882a593Smuzhiyun 		uint64_t free0:1;
891*4882a593Smuzhiyun 		uint64_t pool7th:1;
892*4882a593Smuzhiyun 		uint64_t pool6th:1;
893*4882a593Smuzhiyun 		uint64_t pool5th:1;
894*4882a593Smuzhiyun 		uint64_t pool4th:1;
895*4882a593Smuzhiyun 		uint64_t pool3th:1;
896*4882a593Smuzhiyun 		uint64_t pool2th:1;
897*4882a593Smuzhiyun 		uint64_t pool1th:1;
898*4882a593Smuzhiyun 		uint64_t pool0th:1;
899*4882a593Smuzhiyun 		uint64_t q7_perr:1;
900*4882a593Smuzhiyun 		uint64_t q7_coff:1;
901*4882a593Smuzhiyun 		uint64_t q7_und:1;
902*4882a593Smuzhiyun 		uint64_t q6_perr:1;
903*4882a593Smuzhiyun 		uint64_t q6_coff:1;
904*4882a593Smuzhiyun 		uint64_t q6_und:1;
905*4882a593Smuzhiyun 		uint64_t q5_perr:1;
906*4882a593Smuzhiyun 		uint64_t q5_coff:1;
907*4882a593Smuzhiyun 		uint64_t q5_und:1;
908*4882a593Smuzhiyun 		uint64_t q4_perr:1;
909*4882a593Smuzhiyun 		uint64_t q4_coff:1;
910*4882a593Smuzhiyun 		uint64_t q4_und:1;
911*4882a593Smuzhiyun 		uint64_t q3_perr:1;
912*4882a593Smuzhiyun 		uint64_t q3_coff:1;
913*4882a593Smuzhiyun 		uint64_t q3_und:1;
914*4882a593Smuzhiyun 		uint64_t q2_perr:1;
915*4882a593Smuzhiyun 		uint64_t q2_coff:1;
916*4882a593Smuzhiyun 		uint64_t q2_und:1;
917*4882a593Smuzhiyun 		uint64_t q1_perr:1;
918*4882a593Smuzhiyun 		uint64_t q1_coff:1;
919*4882a593Smuzhiyun 		uint64_t q1_und:1;
920*4882a593Smuzhiyun 		uint64_t q0_perr:1;
921*4882a593Smuzhiyun 		uint64_t q0_coff:1;
922*4882a593Smuzhiyun 		uint64_t q0_und:1;
923*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
924*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
925*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
926*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
927*4882a593Smuzhiyun #else
928*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
929*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
930*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
931*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
932*4882a593Smuzhiyun 		uint64_t q0_und:1;
933*4882a593Smuzhiyun 		uint64_t q0_coff:1;
934*4882a593Smuzhiyun 		uint64_t q0_perr:1;
935*4882a593Smuzhiyun 		uint64_t q1_und:1;
936*4882a593Smuzhiyun 		uint64_t q1_coff:1;
937*4882a593Smuzhiyun 		uint64_t q1_perr:1;
938*4882a593Smuzhiyun 		uint64_t q2_und:1;
939*4882a593Smuzhiyun 		uint64_t q2_coff:1;
940*4882a593Smuzhiyun 		uint64_t q2_perr:1;
941*4882a593Smuzhiyun 		uint64_t q3_und:1;
942*4882a593Smuzhiyun 		uint64_t q3_coff:1;
943*4882a593Smuzhiyun 		uint64_t q3_perr:1;
944*4882a593Smuzhiyun 		uint64_t q4_und:1;
945*4882a593Smuzhiyun 		uint64_t q4_coff:1;
946*4882a593Smuzhiyun 		uint64_t q4_perr:1;
947*4882a593Smuzhiyun 		uint64_t q5_und:1;
948*4882a593Smuzhiyun 		uint64_t q5_coff:1;
949*4882a593Smuzhiyun 		uint64_t q5_perr:1;
950*4882a593Smuzhiyun 		uint64_t q6_und:1;
951*4882a593Smuzhiyun 		uint64_t q6_coff:1;
952*4882a593Smuzhiyun 		uint64_t q6_perr:1;
953*4882a593Smuzhiyun 		uint64_t q7_und:1;
954*4882a593Smuzhiyun 		uint64_t q7_coff:1;
955*4882a593Smuzhiyun 		uint64_t q7_perr:1;
956*4882a593Smuzhiyun 		uint64_t pool0th:1;
957*4882a593Smuzhiyun 		uint64_t pool1th:1;
958*4882a593Smuzhiyun 		uint64_t pool2th:1;
959*4882a593Smuzhiyun 		uint64_t pool3th:1;
960*4882a593Smuzhiyun 		uint64_t pool4th:1;
961*4882a593Smuzhiyun 		uint64_t pool5th:1;
962*4882a593Smuzhiyun 		uint64_t pool6th:1;
963*4882a593Smuzhiyun 		uint64_t pool7th:1;
964*4882a593Smuzhiyun 		uint64_t free0:1;
965*4882a593Smuzhiyun 		uint64_t free1:1;
966*4882a593Smuzhiyun 		uint64_t free2:1;
967*4882a593Smuzhiyun 		uint64_t free3:1;
968*4882a593Smuzhiyun 		uint64_t free4:1;
969*4882a593Smuzhiyun 		uint64_t free5:1;
970*4882a593Smuzhiyun 		uint64_t free6:1;
971*4882a593Smuzhiyun 		uint64_t free7:1;
972*4882a593Smuzhiyun 		uint64_t reserved_44_48:5;
973*4882a593Smuzhiyun 		uint64_t paddr_e:1;
974*4882a593Smuzhiyun 		uint64_t reserved_50_63:14;
975*4882a593Smuzhiyun #endif
976*4882a593Smuzhiyun 	} cn61xx;
977*4882a593Smuzhiyun 	struct cvmx_fpa_int_sum_cn63xx {
978*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
979*4882a593Smuzhiyun 		uint64_t reserved_44_63:20;
980*4882a593Smuzhiyun 		uint64_t free7:1;
981*4882a593Smuzhiyun 		uint64_t free6:1;
982*4882a593Smuzhiyun 		uint64_t free5:1;
983*4882a593Smuzhiyun 		uint64_t free4:1;
984*4882a593Smuzhiyun 		uint64_t free3:1;
985*4882a593Smuzhiyun 		uint64_t free2:1;
986*4882a593Smuzhiyun 		uint64_t free1:1;
987*4882a593Smuzhiyun 		uint64_t free0:1;
988*4882a593Smuzhiyun 		uint64_t pool7th:1;
989*4882a593Smuzhiyun 		uint64_t pool6th:1;
990*4882a593Smuzhiyun 		uint64_t pool5th:1;
991*4882a593Smuzhiyun 		uint64_t pool4th:1;
992*4882a593Smuzhiyun 		uint64_t pool3th:1;
993*4882a593Smuzhiyun 		uint64_t pool2th:1;
994*4882a593Smuzhiyun 		uint64_t pool1th:1;
995*4882a593Smuzhiyun 		uint64_t pool0th:1;
996*4882a593Smuzhiyun 		uint64_t q7_perr:1;
997*4882a593Smuzhiyun 		uint64_t q7_coff:1;
998*4882a593Smuzhiyun 		uint64_t q7_und:1;
999*4882a593Smuzhiyun 		uint64_t q6_perr:1;
1000*4882a593Smuzhiyun 		uint64_t q6_coff:1;
1001*4882a593Smuzhiyun 		uint64_t q6_und:1;
1002*4882a593Smuzhiyun 		uint64_t q5_perr:1;
1003*4882a593Smuzhiyun 		uint64_t q5_coff:1;
1004*4882a593Smuzhiyun 		uint64_t q5_und:1;
1005*4882a593Smuzhiyun 		uint64_t q4_perr:1;
1006*4882a593Smuzhiyun 		uint64_t q4_coff:1;
1007*4882a593Smuzhiyun 		uint64_t q4_und:1;
1008*4882a593Smuzhiyun 		uint64_t q3_perr:1;
1009*4882a593Smuzhiyun 		uint64_t q3_coff:1;
1010*4882a593Smuzhiyun 		uint64_t q3_und:1;
1011*4882a593Smuzhiyun 		uint64_t q2_perr:1;
1012*4882a593Smuzhiyun 		uint64_t q2_coff:1;
1013*4882a593Smuzhiyun 		uint64_t q2_und:1;
1014*4882a593Smuzhiyun 		uint64_t q1_perr:1;
1015*4882a593Smuzhiyun 		uint64_t q1_coff:1;
1016*4882a593Smuzhiyun 		uint64_t q1_und:1;
1017*4882a593Smuzhiyun 		uint64_t q0_perr:1;
1018*4882a593Smuzhiyun 		uint64_t q0_coff:1;
1019*4882a593Smuzhiyun 		uint64_t q0_und:1;
1020*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
1021*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
1022*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
1023*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
1024*4882a593Smuzhiyun #else
1025*4882a593Smuzhiyun 		uint64_t fed0_sbe:1;
1026*4882a593Smuzhiyun 		uint64_t fed0_dbe:1;
1027*4882a593Smuzhiyun 		uint64_t fed1_sbe:1;
1028*4882a593Smuzhiyun 		uint64_t fed1_dbe:1;
1029*4882a593Smuzhiyun 		uint64_t q0_und:1;
1030*4882a593Smuzhiyun 		uint64_t q0_coff:1;
1031*4882a593Smuzhiyun 		uint64_t q0_perr:1;
1032*4882a593Smuzhiyun 		uint64_t q1_und:1;
1033*4882a593Smuzhiyun 		uint64_t q1_coff:1;
1034*4882a593Smuzhiyun 		uint64_t q1_perr:1;
1035*4882a593Smuzhiyun 		uint64_t q2_und:1;
1036*4882a593Smuzhiyun 		uint64_t q2_coff:1;
1037*4882a593Smuzhiyun 		uint64_t q2_perr:1;
1038*4882a593Smuzhiyun 		uint64_t q3_und:1;
1039*4882a593Smuzhiyun 		uint64_t q3_coff:1;
1040*4882a593Smuzhiyun 		uint64_t q3_perr:1;
1041*4882a593Smuzhiyun 		uint64_t q4_und:1;
1042*4882a593Smuzhiyun 		uint64_t q4_coff:1;
1043*4882a593Smuzhiyun 		uint64_t q4_perr:1;
1044*4882a593Smuzhiyun 		uint64_t q5_und:1;
1045*4882a593Smuzhiyun 		uint64_t q5_coff:1;
1046*4882a593Smuzhiyun 		uint64_t q5_perr:1;
1047*4882a593Smuzhiyun 		uint64_t q6_und:1;
1048*4882a593Smuzhiyun 		uint64_t q6_coff:1;
1049*4882a593Smuzhiyun 		uint64_t q6_perr:1;
1050*4882a593Smuzhiyun 		uint64_t q7_und:1;
1051*4882a593Smuzhiyun 		uint64_t q7_coff:1;
1052*4882a593Smuzhiyun 		uint64_t q7_perr:1;
1053*4882a593Smuzhiyun 		uint64_t pool0th:1;
1054*4882a593Smuzhiyun 		uint64_t pool1th:1;
1055*4882a593Smuzhiyun 		uint64_t pool2th:1;
1056*4882a593Smuzhiyun 		uint64_t pool3th:1;
1057*4882a593Smuzhiyun 		uint64_t pool4th:1;
1058*4882a593Smuzhiyun 		uint64_t pool5th:1;
1059*4882a593Smuzhiyun 		uint64_t pool6th:1;
1060*4882a593Smuzhiyun 		uint64_t pool7th:1;
1061*4882a593Smuzhiyun 		uint64_t free0:1;
1062*4882a593Smuzhiyun 		uint64_t free1:1;
1063*4882a593Smuzhiyun 		uint64_t free2:1;
1064*4882a593Smuzhiyun 		uint64_t free3:1;
1065*4882a593Smuzhiyun 		uint64_t free4:1;
1066*4882a593Smuzhiyun 		uint64_t free5:1;
1067*4882a593Smuzhiyun 		uint64_t free6:1;
1068*4882a593Smuzhiyun 		uint64_t free7:1;
1069*4882a593Smuzhiyun 		uint64_t reserved_44_63:20;
1070*4882a593Smuzhiyun #endif
1071*4882a593Smuzhiyun 	} cn63xx;
1072*4882a593Smuzhiyun };
1073*4882a593Smuzhiyun 
1074*4882a593Smuzhiyun union cvmx_fpa_packet_threshold {
1075*4882a593Smuzhiyun 	uint64_t u64;
1076*4882a593Smuzhiyun 	struct cvmx_fpa_packet_threshold_s {
1077*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1078*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1079*4882a593Smuzhiyun 		uint64_t thresh:32;
1080*4882a593Smuzhiyun #else
1081*4882a593Smuzhiyun 		uint64_t thresh:32;
1082*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1083*4882a593Smuzhiyun #endif
1084*4882a593Smuzhiyun 	} s;
1085*4882a593Smuzhiyun };
1086*4882a593Smuzhiyun 
1087*4882a593Smuzhiyun union cvmx_fpa_poolx_end_addr {
1088*4882a593Smuzhiyun 	uint64_t u64;
1089*4882a593Smuzhiyun 	struct cvmx_fpa_poolx_end_addr_s {
1090*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1091*4882a593Smuzhiyun 		uint64_t reserved_33_63:31;
1092*4882a593Smuzhiyun 		uint64_t addr:33;
1093*4882a593Smuzhiyun #else
1094*4882a593Smuzhiyun 		uint64_t addr:33;
1095*4882a593Smuzhiyun 		uint64_t reserved_33_63:31;
1096*4882a593Smuzhiyun #endif
1097*4882a593Smuzhiyun 	} s;
1098*4882a593Smuzhiyun };
1099*4882a593Smuzhiyun 
1100*4882a593Smuzhiyun union cvmx_fpa_poolx_start_addr {
1101*4882a593Smuzhiyun 	uint64_t u64;
1102*4882a593Smuzhiyun 	struct cvmx_fpa_poolx_start_addr_s {
1103*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1104*4882a593Smuzhiyun 		uint64_t reserved_33_63:31;
1105*4882a593Smuzhiyun 		uint64_t addr:33;
1106*4882a593Smuzhiyun #else
1107*4882a593Smuzhiyun 		uint64_t addr:33;
1108*4882a593Smuzhiyun 		uint64_t reserved_33_63:31;
1109*4882a593Smuzhiyun #endif
1110*4882a593Smuzhiyun 	} s;
1111*4882a593Smuzhiyun };
1112*4882a593Smuzhiyun 
1113*4882a593Smuzhiyun union cvmx_fpa_poolx_threshold {
1114*4882a593Smuzhiyun 	uint64_t u64;
1115*4882a593Smuzhiyun 	struct cvmx_fpa_poolx_threshold_s {
1116*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1117*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1118*4882a593Smuzhiyun 		uint64_t thresh:32;
1119*4882a593Smuzhiyun #else
1120*4882a593Smuzhiyun 		uint64_t thresh:32;
1121*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1122*4882a593Smuzhiyun #endif
1123*4882a593Smuzhiyun 	} s;
1124*4882a593Smuzhiyun 	struct cvmx_fpa_poolx_threshold_cn61xx {
1125*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1126*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1127*4882a593Smuzhiyun 		uint64_t thresh:29;
1128*4882a593Smuzhiyun #else
1129*4882a593Smuzhiyun 		uint64_t thresh:29;
1130*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1131*4882a593Smuzhiyun #endif
1132*4882a593Smuzhiyun 	} cn61xx;
1133*4882a593Smuzhiyun };
1134*4882a593Smuzhiyun 
1135*4882a593Smuzhiyun union cvmx_fpa_quex_available {
1136*4882a593Smuzhiyun 	uint64_t u64;
1137*4882a593Smuzhiyun 	struct cvmx_fpa_quex_available_s {
1138*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1139*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1140*4882a593Smuzhiyun 		uint64_t que_siz:32;
1141*4882a593Smuzhiyun #else
1142*4882a593Smuzhiyun 		uint64_t que_siz:32;
1143*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1144*4882a593Smuzhiyun #endif
1145*4882a593Smuzhiyun 	} s;
1146*4882a593Smuzhiyun 	struct cvmx_fpa_quex_available_cn30xx {
1147*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1148*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1149*4882a593Smuzhiyun 		uint64_t que_siz:29;
1150*4882a593Smuzhiyun #else
1151*4882a593Smuzhiyun 		uint64_t que_siz:29;
1152*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1153*4882a593Smuzhiyun #endif
1154*4882a593Smuzhiyun 	} cn30xx;
1155*4882a593Smuzhiyun };
1156*4882a593Smuzhiyun 
1157*4882a593Smuzhiyun union cvmx_fpa_quex_page_index {
1158*4882a593Smuzhiyun 	uint64_t u64;
1159*4882a593Smuzhiyun 	struct cvmx_fpa_quex_page_index_s {
1160*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1161*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1162*4882a593Smuzhiyun 		uint64_t pg_num:25;
1163*4882a593Smuzhiyun #else
1164*4882a593Smuzhiyun 		uint64_t pg_num:25;
1165*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1166*4882a593Smuzhiyun #endif
1167*4882a593Smuzhiyun 	} s;
1168*4882a593Smuzhiyun };
1169*4882a593Smuzhiyun 
1170*4882a593Smuzhiyun union cvmx_fpa_que8_page_index {
1171*4882a593Smuzhiyun 	uint64_t u64;
1172*4882a593Smuzhiyun 	struct cvmx_fpa_que8_page_index_s {
1173*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1174*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1175*4882a593Smuzhiyun 		uint64_t pg_num:25;
1176*4882a593Smuzhiyun #else
1177*4882a593Smuzhiyun 		uint64_t pg_num:25;
1178*4882a593Smuzhiyun 		uint64_t reserved_25_63:39;
1179*4882a593Smuzhiyun #endif
1180*4882a593Smuzhiyun 	} s;
1181*4882a593Smuzhiyun };
1182*4882a593Smuzhiyun 
1183*4882a593Smuzhiyun union cvmx_fpa_que_act {
1184*4882a593Smuzhiyun 	uint64_t u64;
1185*4882a593Smuzhiyun 	struct cvmx_fpa_que_act_s {
1186*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1187*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1188*4882a593Smuzhiyun 		uint64_t act_que:3;
1189*4882a593Smuzhiyun 		uint64_t act_indx:26;
1190*4882a593Smuzhiyun #else
1191*4882a593Smuzhiyun 		uint64_t act_indx:26;
1192*4882a593Smuzhiyun 		uint64_t act_que:3;
1193*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1194*4882a593Smuzhiyun #endif
1195*4882a593Smuzhiyun 	} s;
1196*4882a593Smuzhiyun };
1197*4882a593Smuzhiyun 
1198*4882a593Smuzhiyun union cvmx_fpa_que_exp {
1199*4882a593Smuzhiyun 	uint64_t u64;
1200*4882a593Smuzhiyun 	struct cvmx_fpa_que_exp_s {
1201*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1202*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1203*4882a593Smuzhiyun 		uint64_t exp_que:3;
1204*4882a593Smuzhiyun 		uint64_t exp_indx:26;
1205*4882a593Smuzhiyun #else
1206*4882a593Smuzhiyun 		uint64_t exp_indx:26;
1207*4882a593Smuzhiyun 		uint64_t exp_que:3;
1208*4882a593Smuzhiyun 		uint64_t reserved_29_63:35;
1209*4882a593Smuzhiyun #endif
1210*4882a593Smuzhiyun 	} s;
1211*4882a593Smuzhiyun };
1212*4882a593Smuzhiyun 
1213*4882a593Smuzhiyun union cvmx_fpa_wart_ctl {
1214*4882a593Smuzhiyun 	uint64_t u64;
1215*4882a593Smuzhiyun 	struct cvmx_fpa_wart_ctl_s {
1216*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1217*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1218*4882a593Smuzhiyun 		uint64_t ctl:16;
1219*4882a593Smuzhiyun #else
1220*4882a593Smuzhiyun 		uint64_t ctl:16;
1221*4882a593Smuzhiyun 		uint64_t reserved_16_63:48;
1222*4882a593Smuzhiyun #endif
1223*4882a593Smuzhiyun 	} s;
1224*4882a593Smuzhiyun };
1225*4882a593Smuzhiyun 
1226*4882a593Smuzhiyun union cvmx_fpa_wart_status {
1227*4882a593Smuzhiyun 	uint64_t u64;
1228*4882a593Smuzhiyun 	struct cvmx_fpa_wart_status_s {
1229*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1230*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1231*4882a593Smuzhiyun 		uint64_t status:32;
1232*4882a593Smuzhiyun #else
1233*4882a593Smuzhiyun 		uint64_t status:32;
1234*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1235*4882a593Smuzhiyun #endif
1236*4882a593Smuzhiyun 	} s;
1237*4882a593Smuzhiyun };
1238*4882a593Smuzhiyun 
1239*4882a593Smuzhiyun union cvmx_fpa_wqe_threshold {
1240*4882a593Smuzhiyun 	uint64_t u64;
1241*4882a593Smuzhiyun 	struct cvmx_fpa_wqe_threshold_s {
1242*4882a593Smuzhiyun #ifdef __BIG_ENDIAN_BITFIELD
1243*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1244*4882a593Smuzhiyun 		uint64_t thresh:32;
1245*4882a593Smuzhiyun #else
1246*4882a593Smuzhiyun 		uint64_t thresh:32;
1247*4882a593Smuzhiyun 		uint64_t reserved_32_63:32;
1248*4882a593Smuzhiyun #endif
1249*4882a593Smuzhiyun 	} s;
1250*4882a593Smuzhiyun };
1251*4882a593Smuzhiyun 
1252*4882a593Smuzhiyun #endif
1253