• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/mips/include/asm/octeon/
1/***********************license start***************
2 * Author: Cavium Networks
3 *
4 * Contact: support@caviumnetworks.com
5 * This file is part of the OCTEON SDK
6 *
7 * Copyright (c) 2003-2008 Cavium Networks
8 *
9 * This file is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License, Version 2, as
11 * published by the Free Software Foundation.
12 *
13 * This file is distributed in the hope that it will be useful, but
14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
16 * NONINFRINGEMENT.  See the GNU General Public License for more
17 * details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this file; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 * or visit http://www.gnu.org/licenses/.
23 *
24 * This file may also be available under a different license from Cavium.
25 * Contact Cavium Networks for more information
26 ***********************license end**************************************/
27
28#ifndef __CVMX_IOB_DEFS_H__
29#define __CVMX_IOB_DEFS_H__
30
31#define CVMX_IOB_BIST_STATUS \
32	 CVMX_ADD_IO_SEG(0x00011800F00007F8ull)
33#define CVMX_IOB_CTL_STATUS \
34	 CVMX_ADD_IO_SEG(0x00011800F0000050ull)
35#define CVMX_IOB_DWB_PRI_CNT \
36	 CVMX_ADD_IO_SEG(0x00011800F0000028ull)
37#define CVMX_IOB_FAU_TIMEOUT \
38	 CVMX_ADD_IO_SEG(0x00011800F0000000ull)
39#define CVMX_IOB_I2C_PRI_CNT \
40	 CVMX_ADD_IO_SEG(0x00011800F0000010ull)
41#define CVMX_IOB_INB_CONTROL_MATCH \
42	 CVMX_ADD_IO_SEG(0x00011800F0000078ull)
43#define CVMX_IOB_INB_CONTROL_MATCH_ENB \
44	 CVMX_ADD_IO_SEG(0x00011800F0000088ull)
45#define CVMX_IOB_INB_DATA_MATCH \
46	 CVMX_ADD_IO_SEG(0x00011800F0000070ull)
47#define CVMX_IOB_INB_DATA_MATCH_ENB \
48	 CVMX_ADD_IO_SEG(0x00011800F0000080ull)
49#define CVMX_IOB_INT_ENB \
50	 CVMX_ADD_IO_SEG(0x00011800F0000060ull)
51#define CVMX_IOB_INT_SUM \
52	 CVMX_ADD_IO_SEG(0x00011800F0000058ull)
53#define CVMX_IOB_N2C_L2C_PRI_CNT \
54	 CVMX_ADD_IO_SEG(0x00011800F0000020ull)
55#define CVMX_IOB_N2C_RSP_PRI_CNT \
56	 CVMX_ADD_IO_SEG(0x00011800F0000008ull)
57#define CVMX_IOB_OUTB_COM_PRI_CNT \
58	 CVMX_ADD_IO_SEG(0x00011800F0000040ull)
59#define CVMX_IOB_OUTB_CONTROL_MATCH \
60	 CVMX_ADD_IO_SEG(0x00011800F0000098ull)
61#define CVMX_IOB_OUTB_CONTROL_MATCH_ENB \
62	 CVMX_ADD_IO_SEG(0x00011800F00000A8ull)
63#define CVMX_IOB_OUTB_DATA_MATCH \
64	 CVMX_ADD_IO_SEG(0x00011800F0000090ull)
65#define CVMX_IOB_OUTB_DATA_MATCH_ENB \
66	 CVMX_ADD_IO_SEG(0x00011800F00000A0ull)
67#define CVMX_IOB_OUTB_FPA_PRI_CNT \
68	 CVMX_ADD_IO_SEG(0x00011800F0000048ull)
69#define CVMX_IOB_OUTB_REQ_PRI_CNT \
70	 CVMX_ADD_IO_SEG(0x00011800F0000038ull)
71#define CVMX_IOB_P2C_REQ_PRI_CNT \
72	 CVMX_ADD_IO_SEG(0x00011800F0000018ull)
73#define CVMX_IOB_PKT_ERR \
74	 CVMX_ADD_IO_SEG(0x00011800F0000068ull)
75
76union cvmx_iob_bist_status {
77	uint64_t u64;
78	struct cvmx_iob_bist_status_s {
79		uint64_t reserved_18_63:46;
80		uint64_t icnrcb:1;
81		uint64_t icr0:1;
82		uint64_t icr1:1;
83		uint64_t icnr1:1;
84		uint64_t icnr0:1;
85		uint64_t ibdr0:1;
86		uint64_t ibdr1:1;
87		uint64_t ibr0:1;
88		uint64_t ibr1:1;
89		uint64_t icnrt:1;
90		uint64_t ibrq0:1;
91		uint64_t ibrq1:1;
92		uint64_t icrn0:1;
93		uint64_t icrn1:1;
94		uint64_t icrp0:1;
95		uint64_t icrp1:1;
96		uint64_t ibd:1;
97		uint64_t icd:1;
98	} s;
99	struct cvmx_iob_bist_status_s cn30xx;
100	struct cvmx_iob_bist_status_s cn31xx;
101	struct cvmx_iob_bist_status_s cn38xx;
102	struct cvmx_iob_bist_status_s cn38xxp2;
103	struct cvmx_iob_bist_status_s cn50xx;
104	struct cvmx_iob_bist_status_s cn52xx;
105	struct cvmx_iob_bist_status_s cn52xxp1;
106	struct cvmx_iob_bist_status_s cn56xx;
107	struct cvmx_iob_bist_status_s cn56xxp1;
108	struct cvmx_iob_bist_status_s cn58xx;
109	struct cvmx_iob_bist_status_s cn58xxp1;
110};
111
112union cvmx_iob_ctl_status {
113	uint64_t u64;
114	struct cvmx_iob_ctl_status_s {
115		uint64_t reserved_5_63:59;
116		uint64_t outb_mat:1;
117		uint64_t inb_mat:1;
118		uint64_t pko_enb:1;
119		uint64_t dwb_enb:1;
120		uint64_t fau_end:1;
121	} s;
122	struct cvmx_iob_ctl_status_s cn30xx;
123	struct cvmx_iob_ctl_status_s cn31xx;
124	struct cvmx_iob_ctl_status_s cn38xx;
125	struct cvmx_iob_ctl_status_s cn38xxp2;
126	struct cvmx_iob_ctl_status_s cn50xx;
127	struct cvmx_iob_ctl_status_s cn52xx;
128	struct cvmx_iob_ctl_status_s cn52xxp1;
129	struct cvmx_iob_ctl_status_s cn56xx;
130	struct cvmx_iob_ctl_status_s cn56xxp1;
131	struct cvmx_iob_ctl_status_s cn58xx;
132	struct cvmx_iob_ctl_status_s cn58xxp1;
133};
134
135union cvmx_iob_dwb_pri_cnt {
136	uint64_t u64;
137	struct cvmx_iob_dwb_pri_cnt_s {
138		uint64_t reserved_16_63:48;
139		uint64_t cnt_enb:1;
140		uint64_t cnt_val:15;
141	} s;
142	struct cvmx_iob_dwb_pri_cnt_s cn38xx;
143	struct cvmx_iob_dwb_pri_cnt_s cn38xxp2;
144	struct cvmx_iob_dwb_pri_cnt_s cn52xx;
145	struct cvmx_iob_dwb_pri_cnt_s cn52xxp1;
146	struct cvmx_iob_dwb_pri_cnt_s cn56xx;
147	struct cvmx_iob_dwb_pri_cnt_s cn56xxp1;
148	struct cvmx_iob_dwb_pri_cnt_s cn58xx;
149	struct cvmx_iob_dwb_pri_cnt_s cn58xxp1;
150};
151
152union cvmx_iob_fau_timeout {
153	uint64_t u64;
154	struct cvmx_iob_fau_timeout_s {
155		uint64_t reserved_13_63:51;
156		uint64_t tout_enb:1;
157		uint64_t tout_val:12;
158	} s;
159	struct cvmx_iob_fau_timeout_s cn30xx;
160	struct cvmx_iob_fau_timeout_s cn31xx;
161	struct cvmx_iob_fau_timeout_s cn38xx;
162	struct cvmx_iob_fau_timeout_s cn38xxp2;
163	struct cvmx_iob_fau_timeout_s cn50xx;
164	struct cvmx_iob_fau_timeout_s cn52xx;
165	struct cvmx_iob_fau_timeout_s cn52xxp1;
166	struct cvmx_iob_fau_timeout_s cn56xx;
167	struct cvmx_iob_fau_timeout_s cn56xxp1;
168	struct cvmx_iob_fau_timeout_s cn58xx;
169	struct cvmx_iob_fau_timeout_s cn58xxp1;
170};
171
172union cvmx_iob_i2c_pri_cnt {
173	uint64_t u64;
174	struct cvmx_iob_i2c_pri_cnt_s {
175		uint64_t reserved_16_63:48;
176		uint64_t cnt_enb:1;
177		uint64_t cnt_val:15;
178	} s;
179	struct cvmx_iob_i2c_pri_cnt_s cn38xx;
180	struct cvmx_iob_i2c_pri_cnt_s cn38xxp2;
181	struct cvmx_iob_i2c_pri_cnt_s cn52xx;
182	struct cvmx_iob_i2c_pri_cnt_s cn52xxp1;
183	struct cvmx_iob_i2c_pri_cnt_s cn56xx;
184	struct cvmx_iob_i2c_pri_cnt_s cn56xxp1;
185	struct cvmx_iob_i2c_pri_cnt_s cn58xx;
186	struct cvmx_iob_i2c_pri_cnt_s cn58xxp1;
187};
188
189union cvmx_iob_inb_control_match {
190	uint64_t u64;
191	struct cvmx_iob_inb_control_match_s {
192		uint64_t reserved_29_63:35;
193		uint64_t mask:8;
194		uint64_t opc:4;
195		uint64_t dst:9;
196		uint64_t src:8;
197	} s;
198	struct cvmx_iob_inb_control_match_s cn30xx;
199	struct cvmx_iob_inb_control_match_s cn31xx;
200	struct cvmx_iob_inb_control_match_s cn38xx;
201	struct cvmx_iob_inb_control_match_s cn38xxp2;
202	struct cvmx_iob_inb_control_match_s cn50xx;
203	struct cvmx_iob_inb_control_match_s cn52xx;
204	struct cvmx_iob_inb_control_match_s cn52xxp1;
205	struct cvmx_iob_inb_control_match_s cn56xx;
206	struct cvmx_iob_inb_control_match_s cn56xxp1;
207	struct cvmx_iob_inb_control_match_s cn58xx;
208	struct cvmx_iob_inb_control_match_s cn58xxp1;
209};
210
211union cvmx_iob_inb_control_match_enb {
212	uint64_t u64;
213	struct cvmx_iob_inb_control_match_enb_s {
214		uint64_t reserved_29_63:35;
215		uint64_t mask:8;
216		uint64_t opc:4;
217		uint64_t dst:9;
218		uint64_t src:8;
219	} s;
220	struct cvmx_iob_inb_control_match_enb_s cn30xx;
221	struct cvmx_iob_inb_control_match_enb_s cn31xx;
222	struct cvmx_iob_inb_control_match_enb_s cn38xx;
223	struct cvmx_iob_inb_control_match_enb_s cn38xxp2;
224	struct cvmx_iob_inb_control_match_enb_s cn50xx;
225	struct cvmx_iob_inb_control_match_enb_s cn52xx;
226	struct cvmx_iob_inb_control_match_enb_s cn52xxp1;
227	struct cvmx_iob_inb_control_match_enb_s cn56xx;
228	struct cvmx_iob_inb_control_match_enb_s cn56xxp1;
229	struct cvmx_iob_inb_control_match_enb_s cn58xx;
230	struct cvmx_iob_inb_control_match_enb_s cn58xxp1;
231};
232
233union cvmx_iob_inb_data_match {
234	uint64_t u64;
235	struct cvmx_iob_inb_data_match_s {
236		uint64_t data:64;
237	} s;
238	struct cvmx_iob_inb_data_match_s cn30xx;
239	struct cvmx_iob_inb_data_match_s cn31xx;
240	struct cvmx_iob_inb_data_match_s cn38xx;
241	struct cvmx_iob_inb_data_match_s cn38xxp2;
242	struct cvmx_iob_inb_data_match_s cn50xx;
243	struct cvmx_iob_inb_data_match_s cn52xx;
244	struct cvmx_iob_inb_data_match_s cn52xxp1;
245	struct cvmx_iob_inb_data_match_s cn56xx;
246	struct cvmx_iob_inb_data_match_s cn56xxp1;
247	struct cvmx_iob_inb_data_match_s cn58xx;
248	struct cvmx_iob_inb_data_match_s cn58xxp1;
249};
250
251union cvmx_iob_inb_data_match_enb {
252	uint64_t u64;
253	struct cvmx_iob_inb_data_match_enb_s {
254		uint64_t data:64;
255	} s;
256	struct cvmx_iob_inb_data_match_enb_s cn30xx;
257	struct cvmx_iob_inb_data_match_enb_s cn31xx;
258	struct cvmx_iob_inb_data_match_enb_s cn38xx;
259	struct cvmx_iob_inb_data_match_enb_s cn38xxp2;
260	struct cvmx_iob_inb_data_match_enb_s cn50xx;
261	struct cvmx_iob_inb_data_match_enb_s cn52xx;
262	struct cvmx_iob_inb_data_match_enb_s cn52xxp1;
263	struct cvmx_iob_inb_data_match_enb_s cn56xx;
264	struct cvmx_iob_inb_data_match_enb_s cn56xxp1;
265	struct cvmx_iob_inb_data_match_enb_s cn58xx;
266	struct cvmx_iob_inb_data_match_enb_s cn58xxp1;
267};
268
269union cvmx_iob_int_enb {
270	uint64_t u64;
271	struct cvmx_iob_int_enb_s {
272		uint64_t reserved_6_63:58;
273		uint64_t p_dat:1;
274		uint64_t np_dat:1;
275		uint64_t p_eop:1;
276		uint64_t p_sop:1;
277		uint64_t np_eop:1;
278		uint64_t np_sop:1;
279	} s;
280	struct cvmx_iob_int_enb_cn30xx {
281		uint64_t reserved_4_63:60;
282		uint64_t p_eop:1;
283		uint64_t p_sop:1;
284		uint64_t np_eop:1;
285		uint64_t np_sop:1;
286	} cn30xx;
287	struct cvmx_iob_int_enb_cn30xx cn31xx;
288	struct cvmx_iob_int_enb_cn30xx cn38xx;
289	struct cvmx_iob_int_enb_cn30xx cn38xxp2;
290	struct cvmx_iob_int_enb_s cn50xx;
291	struct cvmx_iob_int_enb_s cn52xx;
292	struct cvmx_iob_int_enb_s cn52xxp1;
293	struct cvmx_iob_int_enb_s cn56xx;
294	struct cvmx_iob_int_enb_s cn56xxp1;
295	struct cvmx_iob_int_enb_s cn58xx;
296	struct cvmx_iob_int_enb_s cn58xxp1;
297};
298
299union cvmx_iob_int_sum {
300	uint64_t u64;
301	struct cvmx_iob_int_sum_s {
302		uint64_t reserved_6_63:58;
303		uint64_t p_dat:1;
304		uint64_t np_dat:1;
305		uint64_t p_eop:1;
306		uint64_t p_sop:1;
307		uint64_t np_eop:1;
308		uint64_t np_sop:1;
309	} s;
310	struct cvmx_iob_int_sum_cn30xx {
311		uint64_t reserved_4_63:60;
312		uint64_t p_eop:1;
313		uint64_t p_sop:1;
314		uint64_t np_eop:1;
315		uint64_t np_sop:1;
316	} cn30xx;
317	struct cvmx_iob_int_sum_cn30xx cn31xx;
318	struct cvmx_iob_int_sum_cn30xx cn38xx;
319	struct cvmx_iob_int_sum_cn30xx cn38xxp2;
320	struct cvmx_iob_int_sum_s cn50xx;
321	struct cvmx_iob_int_sum_s cn52xx;
322	struct cvmx_iob_int_sum_s cn52xxp1;
323	struct cvmx_iob_int_sum_s cn56xx;
324	struct cvmx_iob_int_sum_s cn56xxp1;
325	struct cvmx_iob_int_sum_s cn58xx;
326	struct cvmx_iob_int_sum_s cn58xxp1;
327};
328
329union cvmx_iob_n2c_l2c_pri_cnt {
330	uint64_t u64;
331	struct cvmx_iob_n2c_l2c_pri_cnt_s {
332		uint64_t reserved_16_63:48;
333		uint64_t cnt_enb:1;
334		uint64_t cnt_val:15;
335	} s;
336	struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xx;
337	struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xxp2;
338	struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xx;
339	struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xxp1;
340	struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xx;
341	struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xxp1;
342	struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xx;
343	struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xxp1;
344};
345
346union cvmx_iob_n2c_rsp_pri_cnt {
347	uint64_t u64;
348	struct cvmx_iob_n2c_rsp_pri_cnt_s {
349		uint64_t reserved_16_63:48;
350		uint64_t cnt_enb:1;
351		uint64_t cnt_val:15;
352	} s;
353	struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xx;
354	struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xxp2;
355	struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xx;
356	struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xxp1;
357	struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xx;
358	struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xxp1;
359	struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xx;
360	struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xxp1;
361};
362
363union cvmx_iob_outb_com_pri_cnt {
364	uint64_t u64;
365	struct cvmx_iob_outb_com_pri_cnt_s {
366		uint64_t reserved_16_63:48;
367		uint64_t cnt_enb:1;
368		uint64_t cnt_val:15;
369	} s;
370	struct cvmx_iob_outb_com_pri_cnt_s cn38xx;
371	struct cvmx_iob_outb_com_pri_cnt_s cn38xxp2;
372	struct cvmx_iob_outb_com_pri_cnt_s cn52xx;
373	struct cvmx_iob_outb_com_pri_cnt_s cn52xxp1;
374	struct cvmx_iob_outb_com_pri_cnt_s cn56xx;
375	struct cvmx_iob_outb_com_pri_cnt_s cn56xxp1;
376	struct cvmx_iob_outb_com_pri_cnt_s cn58xx;
377	struct cvmx_iob_outb_com_pri_cnt_s cn58xxp1;
378};
379
380union cvmx_iob_outb_control_match {
381	uint64_t u64;
382	struct cvmx_iob_outb_control_match_s {
383		uint64_t reserved_26_63:38;
384		uint64_t mask:8;
385		uint64_t eot:1;
386		uint64_t dst:8;
387		uint64_t src:9;
388	} s;
389	struct cvmx_iob_outb_control_match_s cn30xx;
390	struct cvmx_iob_outb_control_match_s cn31xx;
391	struct cvmx_iob_outb_control_match_s cn38xx;
392	struct cvmx_iob_outb_control_match_s cn38xxp2;
393	struct cvmx_iob_outb_control_match_s cn50xx;
394	struct cvmx_iob_outb_control_match_s cn52xx;
395	struct cvmx_iob_outb_control_match_s cn52xxp1;
396	struct cvmx_iob_outb_control_match_s cn56xx;
397	struct cvmx_iob_outb_control_match_s cn56xxp1;
398	struct cvmx_iob_outb_control_match_s cn58xx;
399	struct cvmx_iob_outb_control_match_s cn58xxp1;
400};
401
402union cvmx_iob_outb_control_match_enb {
403	uint64_t u64;
404	struct cvmx_iob_outb_control_match_enb_s {
405		uint64_t reserved_26_63:38;
406		uint64_t mask:8;
407		uint64_t eot:1;
408		uint64_t dst:8;
409		uint64_t src:9;
410	} s;
411	struct cvmx_iob_outb_control_match_enb_s cn30xx;
412	struct cvmx_iob_outb_control_match_enb_s cn31xx;
413	struct cvmx_iob_outb_control_match_enb_s cn38xx;
414	struct cvmx_iob_outb_control_match_enb_s cn38xxp2;
415	struct cvmx_iob_outb_control_match_enb_s cn50xx;
416	struct cvmx_iob_outb_control_match_enb_s cn52xx;
417	struct cvmx_iob_outb_control_match_enb_s cn52xxp1;
418	struct cvmx_iob_outb_control_match_enb_s cn56xx;
419	struct cvmx_iob_outb_control_match_enb_s cn56xxp1;
420	struct cvmx_iob_outb_control_match_enb_s cn58xx;
421	struct cvmx_iob_outb_control_match_enb_s cn58xxp1;
422};
423
424union cvmx_iob_outb_data_match {
425	uint64_t u64;
426	struct cvmx_iob_outb_data_match_s {
427		uint64_t data:64;
428	} s;
429	struct cvmx_iob_outb_data_match_s cn30xx;
430	struct cvmx_iob_outb_data_match_s cn31xx;
431	struct cvmx_iob_outb_data_match_s cn38xx;
432	struct cvmx_iob_outb_data_match_s cn38xxp2;
433	struct cvmx_iob_outb_data_match_s cn50xx;
434	struct cvmx_iob_outb_data_match_s cn52xx;
435	struct cvmx_iob_outb_data_match_s cn52xxp1;
436	struct cvmx_iob_outb_data_match_s cn56xx;
437	struct cvmx_iob_outb_data_match_s cn56xxp1;
438	struct cvmx_iob_outb_data_match_s cn58xx;
439	struct cvmx_iob_outb_data_match_s cn58xxp1;
440};
441
442union cvmx_iob_outb_data_match_enb {
443	uint64_t u64;
444	struct cvmx_iob_outb_data_match_enb_s {
445		uint64_t data:64;
446	} s;
447	struct cvmx_iob_outb_data_match_enb_s cn30xx;
448	struct cvmx_iob_outb_data_match_enb_s cn31xx;
449	struct cvmx_iob_outb_data_match_enb_s cn38xx;
450	struct cvmx_iob_outb_data_match_enb_s cn38xxp2;
451	struct cvmx_iob_outb_data_match_enb_s cn50xx;
452	struct cvmx_iob_outb_data_match_enb_s cn52xx;
453	struct cvmx_iob_outb_data_match_enb_s cn52xxp1;
454	struct cvmx_iob_outb_data_match_enb_s cn56xx;
455	struct cvmx_iob_outb_data_match_enb_s cn56xxp1;
456	struct cvmx_iob_outb_data_match_enb_s cn58xx;
457	struct cvmx_iob_outb_data_match_enb_s cn58xxp1;
458};
459
460union cvmx_iob_outb_fpa_pri_cnt {
461	uint64_t u64;
462	struct cvmx_iob_outb_fpa_pri_cnt_s {
463		uint64_t reserved_16_63:48;
464		uint64_t cnt_enb:1;
465		uint64_t cnt_val:15;
466	} s;
467	struct cvmx_iob_outb_fpa_pri_cnt_s cn38xx;
468	struct cvmx_iob_outb_fpa_pri_cnt_s cn38xxp2;
469	struct cvmx_iob_outb_fpa_pri_cnt_s cn52xx;
470	struct cvmx_iob_outb_fpa_pri_cnt_s cn52xxp1;
471	struct cvmx_iob_outb_fpa_pri_cnt_s cn56xx;
472	struct cvmx_iob_outb_fpa_pri_cnt_s cn56xxp1;
473	struct cvmx_iob_outb_fpa_pri_cnt_s cn58xx;
474	struct cvmx_iob_outb_fpa_pri_cnt_s cn58xxp1;
475};
476
477union cvmx_iob_outb_req_pri_cnt {
478	uint64_t u64;
479	struct cvmx_iob_outb_req_pri_cnt_s {
480		uint64_t reserved_16_63:48;
481		uint64_t cnt_enb:1;
482		uint64_t cnt_val:15;
483	} s;
484	struct cvmx_iob_outb_req_pri_cnt_s cn38xx;
485	struct cvmx_iob_outb_req_pri_cnt_s cn38xxp2;
486	struct cvmx_iob_outb_req_pri_cnt_s cn52xx;
487	struct cvmx_iob_outb_req_pri_cnt_s cn52xxp1;
488	struct cvmx_iob_outb_req_pri_cnt_s cn56xx;
489	struct cvmx_iob_outb_req_pri_cnt_s cn56xxp1;
490	struct cvmx_iob_outb_req_pri_cnt_s cn58xx;
491	struct cvmx_iob_outb_req_pri_cnt_s cn58xxp1;
492};
493
494union cvmx_iob_p2c_req_pri_cnt {
495	uint64_t u64;
496	struct cvmx_iob_p2c_req_pri_cnt_s {
497		uint64_t reserved_16_63:48;
498		uint64_t cnt_enb:1;
499		uint64_t cnt_val:15;
500	} s;
501	struct cvmx_iob_p2c_req_pri_cnt_s cn38xx;
502	struct cvmx_iob_p2c_req_pri_cnt_s cn38xxp2;
503	struct cvmx_iob_p2c_req_pri_cnt_s cn52xx;
504	struct cvmx_iob_p2c_req_pri_cnt_s cn52xxp1;
505	struct cvmx_iob_p2c_req_pri_cnt_s cn56xx;
506	struct cvmx_iob_p2c_req_pri_cnt_s cn56xxp1;
507	struct cvmx_iob_p2c_req_pri_cnt_s cn58xx;
508	struct cvmx_iob_p2c_req_pri_cnt_s cn58xxp1;
509};
510
511union cvmx_iob_pkt_err {
512	uint64_t u64;
513	struct cvmx_iob_pkt_err_s {
514		uint64_t reserved_6_63:58;
515		uint64_t port:6;
516	} s;
517	struct cvmx_iob_pkt_err_s cn30xx;
518	struct cvmx_iob_pkt_err_s cn31xx;
519	struct cvmx_iob_pkt_err_s cn38xx;
520	struct cvmx_iob_pkt_err_s cn38xxp2;
521	struct cvmx_iob_pkt_err_s cn50xx;
522	struct cvmx_iob_pkt_err_s cn52xx;
523	struct cvmx_iob_pkt_err_s cn52xxp1;
524	struct cvmx_iob_pkt_err_s cn56xx;
525	struct cvmx_iob_pkt_err_s cn56xxp1;
526	struct cvmx_iob_pkt_err_s cn58xx;
527	struct cvmx_iob_pkt_err_s cn58xxp1;
528};
529
530#endif
531