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_IPD_DEFS_H__
29 #define __CVMX_IPD_DEFS_H__
30 
31 #define CVMX_IPD_1ST_MBUFF_SKIP \
32 	 CVMX_ADD_IO_SEG(0x00014F0000000000ull)
33 #define CVMX_IPD_1st_NEXT_PTR_BACK \
34 	 CVMX_ADD_IO_SEG(0x00014F0000000150ull)
35 #define CVMX_IPD_2nd_NEXT_PTR_BACK \
36 	 CVMX_ADD_IO_SEG(0x00014F0000000158ull)
37 #define CVMX_IPD_BIST_STATUS \
38 	 CVMX_ADD_IO_SEG(0x00014F00000007F8ull)
39 #define CVMX_IPD_BP_PRT_RED_END \
40 	 CVMX_ADD_IO_SEG(0x00014F0000000328ull)
41 #define CVMX_IPD_CLK_COUNT \
42 	 CVMX_ADD_IO_SEG(0x00014F0000000338ull)
43 #define CVMX_IPD_CTL_STATUS \
44 	 CVMX_ADD_IO_SEG(0x00014F0000000018ull)
45 #define CVMX_IPD_INT_ENB \
46 	 CVMX_ADD_IO_SEG(0x00014F0000000160ull)
47 #define CVMX_IPD_INT_SUM \
48 	 CVMX_ADD_IO_SEG(0x00014F0000000168ull)
49 #define CVMX_IPD_NOT_1ST_MBUFF_SKIP \
50 	 CVMX_ADD_IO_SEG(0x00014F0000000008ull)
51 #define CVMX_IPD_PACKET_MBUFF_SIZE \
52 	 CVMX_ADD_IO_SEG(0x00014F0000000010ull)
53 #define CVMX_IPD_PKT_PTR_VALID \
54 	 CVMX_ADD_IO_SEG(0x00014F0000000358ull)
55 #define CVMX_IPD_PORTX_BP_PAGE_CNT(offset) \
56 	 CVMX_ADD_IO_SEG(0x00014F0000000028ull + (((offset) & 63) * 8))
57 #define CVMX_IPD_PORTX_BP_PAGE_CNT2(offset) \
58 	 CVMX_ADD_IO_SEG(0x00014F0000000368ull + (((offset) & 63) * 8) - 8 * 36)
59 #define CVMX_IPD_PORT_BP_COUNTERS2_PAIRX(offset) \
60 	 CVMX_ADD_IO_SEG(0x00014F0000000388ull + (((offset) & 63) * 8) - 8 * 36)
61 #define CVMX_IPD_PORT_BP_COUNTERS_PAIRX(offset) \
62 	 CVMX_ADD_IO_SEG(0x00014F00000001B8ull + (((offset) & 63) * 8))
63 #define CVMX_IPD_PORT_QOS_INTX(offset) \
64 	 CVMX_ADD_IO_SEG(0x00014F0000000808ull + (((offset) & 7) * 8))
65 #define CVMX_IPD_PORT_QOS_INT_ENBX(offset) \
66 	 CVMX_ADD_IO_SEG(0x00014F0000000848ull + (((offset) & 7) * 8))
67 #define CVMX_IPD_PORT_QOS_X_CNT(offset) \
68 	 CVMX_ADD_IO_SEG(0x00014F0000000888ull + (((offset) & 511) * 8))
69 #define CVMX_IPD_PRC_HOLD_PTR_FIFO_CTL \
70 	 CVMX_ADD_IO_SEG(0x00014F0000000348ull)
71 #define CVMX_IPD_PRC_PORT_PTR_FIFO_CTL \
72 	 CVMX_ADD_IO_SEG(0x00014F0000000350ull)
73 #define CVMX_IPD_PTR_COUNT \
74 	 CVMX_ADD_IO_SEG(0x00014F0000000320ull)
75 #define CVMX_IPD_PWP_PTR_FIFO_CTL \
76 	 CVMX_ADD_IO_SEG(0x00014F0000000340ull)
77 #define CVMX_IPD_QOS0_RED_MARKS \
78 	 CVMX_ADD_IO_SEG(0x00014F0000000178ull)
79 #define CVMX_IPD_QOS1_RED_MARKS \
80 	 CVMX_ADD_IO_SEG(0x00014F0000000180ull)
81 #define CVMX_IPD_QOS2_RED_MARKS \
82 	 CVMX_ADD_IO_SEG(0x00014F0000000188ull)
83 #define CVMX_IPD_QOS3_RED_MARKS \
84 	 CVMX_ADD_IO_SEG(0x00014F0000000190ull)
85 #define CVMX_IPD_QOS4_RED_MARKS \
86 	 CVMX_ADD_IO_SEG(0x00014F0000000198ull)
87 #define CVMX_IPD_QOS5_RED_MARKS \
88 	 CVMX_ADD_IO_SEG(0x00014F00000001A0ull)
89 #define CVMX_IPD_QOS6_RED_MARKS \
90 	 CVMX_ADD_IO_SEG(0x00014F00000001A8ull)
91 #define CVMX_IPD_QOS7_RED_MARKS \
92 	 CVMX_ADD_IO_SEG(0x00014F00000001B0ull)
93 #define CVMX_IPD_QOSX_RED_MARKS(offset) \
94 	 CVMX_ADD_IO_SEG(0x00014F0000000178ull + (((offset) & 7) * 8))
95 #define CVMX_IPD_QUE0_FREE_PAGE_CNT \
96 	 CVMX_ADD_IO_SEG(0x00014F0000000330ull)
97 #define CVMX_IPD_RED_PORT_ENABLE \
98 	 CVMX_ADD_IO_SEG(0x00014F00000002D8ull)
99 #define CVMX_IPD_RED_PORT_ENABLE2 \
100 	 CVMX_ADD_IO_SEG(0x00014F00000003A8ull)
101 #define CVMX_IPD_RED_QUE0_PARAM \
102 	 CVMX_ADD_IO_SEG(0x00014F00000002E0ull)
103 #define CVMX_IPD_RED_QUE1_PARAM \
104 	 CVMX_ADD_IO_SEG(0x00014F00000002E8ull)
105 #define CVMX_IPD_RED_QUE2_PARAM \
106 	 CVMX_ADD_IO_SEG(0x00014F00000002F0ull)
107 #define CVMX_IPD_RED_QUE3_PARAM \
108 	 CVMX_ADD_IO_SEG(0x00014F00000002F8ull)
109 #define CVMX_IPD_RED_QUE4_PARAM \
110 	 CVMX_ADD_IO_SEG(0x00014F0000000300ull)
111 #define CVMX_IPD_RED_QUE5_PARAM \
112 	 CVMX_ADD_IO_SEG(0x00014F0000000308ull)
113 #define CVMX_IPD_RED_QUE6_PARAM \
114 	 CVMX_ADD_IO_SEG(0x00014F0000000310ull)
115 #define CVMX_IPD_RED_QUE7_PARAM \
116 	 CVMX_ADD_IO_SEG(0x00014F0000000318ull)
117 #define CVMX_IPD_RED_QUEX_PARAM(offset) \
118 	 CVMX_ADD_IO_SEG(0x00014F00000002E0ull + (((offset) & 7) * 8))
119 #define CVMX_IPD_SUB_PORT_BP_PAGE_CNT \
120 	 CVMX_ADD_IO_SEG(0x00014F0000000148ull)
121 #define CVMX_IPD_SUB_PORT_FCS \
122 	 CVMX_ADD_IO_SEG(0x00014F0000000170ull)
123 #define CVMX_IPD_SUB_PORT_QOS_CNT \
124 	 CVMX_ADD_IO_SEG(0x00014F0000000800ull)
125 #define CVMX_IPD_WQE_FPA_QUEUE \
126 	 CVMX_ADD_IO_SEG(0x00014F0000000020ull)
127 #define CVMX_IPD_WQE_PTR_VALID \
128 	 CVMX_ADD_IO_SEG(0x00014F0000000360ull)
129 
130 union cvmx_ipd_1st_mbuff_skip {
131 	uint64_t u64;
132 	struct cvmx_ipd_1st_mbuff_skip_s {
133 		uint64_t reserved_6_63:58;
134 		uint64_t skip_sz:6;
135 	} s;
136 	struct cvmx_ipd_1st_mbuff_skip_s cn30xx;
137 	struct cvmx_ipd_1st_mbuff_skip_s cn31xx;
138 	struct cvmx_ipd_1st_mbuff_skip_s cn38xx;
139 	struct cvmx_ipd_1st_mbuff_skip_s cn38xxp2;
140 	struct cvmx_ipd_1st_mbuff_skip_s cn50xx;
141 	struct cvmx_ipd_1st_mbuff_skip_s cn52xx;
142 	struct cvmx_ipd_1st_mbuff_skip_s cn52xxp1;
143 	struct cvmx_ipd_1st_mbuff_skip_s cn56xx;
144 	struct cvmx_ipd_1st_mbuff_skip_s cn56xxp1;
145 	struct cvmx_ipd_1st_mbuff_skip_s cn58xx;
146 	struct cvmx_ipd_1st_mbuff_skip_s cn58xxp1;
147 };
148 
149 union cvmx_ipd_1st_next_ptr_back {
150 	uint64_t u64;
151 	struct cvmx_ipd_1st_next_ptr_back_s {
152 		uint64_t reserved_4_63:60;
153 		uint64_t back:4;
154 	} s;
155 	struct cvmx_ipd_1st_next_ptr_back_s cn30xx;
156 	struct cvmx_ipd_1st_next_ptr_back_s cn31xx;
157 	struct cvmx_ipd_1st_next_ptr_back_s cn38xx;
158 	struct cvmx_ipd_1st_next_ptr_back_s cn38xxp2;
159 	struct cvmx_ipd_1st_next_ptr_back_s cn50xx;
160 	struct cvmx_ipd_1st_next_ptr_back_s cn52xx;
161 	struct cvmx_ipd_1st_next_ptr_back_s cn52xxp1;
162 	struct cvmx_ipd_1st_next_ptr_back_s cn56xx;
163 	struct cvmx_ipd_1st_next_ptr_back_s cn56xxp1;
164 	struct cvmx_ipd_1st_next_ptr_back_s cn58xx;
165 	struct cvmx_ipd_1st_next_ptr_back_s cn58xxp1;
166 };
167 
168 union cvmx_ipd_2nd_next_ptr_back {
169 	uint64_t u64;
170 	struct cvmx_ipd_2nd_next_ptr_back_s {
171 		uint64_t reserved_4_63:60;
172 		uint64_t back:4;
173 	} s;
174 	struct cvmx_ipd_2nd_next_ptr_back_s cn30xx;
175 	struct cvmx_ipd_2nd_next_ptr_back_s cn31xx;
176 	struct cvmx_ipd_2nd_next_ptr_back_s cn38xx;
177 	struct cvmx_ipd_2nd_next_ptr_back_s cn38xxp2;
178 	struct cvmx_ipd_2nd_next_ptr_back_s cn50xx;
179 	struct cvmx_ipd_2nd_next_ptr_back_s cn52xx;
180 	struct cvmx_ipd_2nd_next_ptr_back_s cn52xxp1;
181 	struct cvmx_ipd_2nd_next_ptr_back_s cn56xx;
182 	struct cvmx_ipd_2nd_next_ptr_back_s cn56xxp1;
183 	struct cvmx_ipd_2nd_next_ptr_back_s cn58xx;
184 	struct cvmx_ipd_2nd_next_ptr_back_s cn58xxp1;
185 };
186 
187 union cvmx_ipd_bist_status {
188 	uint64_t u64;
189 	struct cvmx_ipd_bist_status_s {
190 		uint64_t reserved_18_63:46;
191 		uint64_t csr_mem:1;
192 		uint64_t csr_ncmd:1;
193 		uint64_t pwq_wqed:1;
194 		uint64_t pwq_wp1:1;
195 		uint64_t pwq_pow:1;
196 		uint64_t ipq_pbe1:1;
197 		uint64_t ipq_pbe0:1;
198 		uint64_t pbm3:1;
199 		uint64_t pbm2:1;
200 		uint64_t pbm1:1;
201 		uint64_t pbm0:1;
202 		uint64_t pbm_word:1;
203 		uint64_t pwq1:1;
204 		uint64_t pwq0:1;
205 		uint64_t prc_off:1;
206 		uint64_t ipd_old:1;
207 		uint64_t ipd_new:1;
208 		uint64_t pwp:1;
209 	} s;
210 	struct cvmx_ipd_bist_status_cn30xx {
211 		uint64_t reserved_16_63:48;
212 		uint64_t pwq_wqed:1;
213 		uint64_t pwq_wp1:1;
214 		uint64_t pwq_pow:1;
215 		uint64_t ipq_pbe1:1;
216 		uint64_t ipq_pbe0:1;
217 		uint64_t pbm3:1;
218 		uint64_t pbm2:1;
219 		uint64_t pbm1:1;
220 		uint64_t pbm0:1;
221 		uint64_t pbm_word:1;
222 		uint64_t pwq1:1;
223 		uint64_t pwq0:1;
224 		uint64_t prc_off:1;
225 		uint64_t ipd_old:1;
226 		uint64_t ipd_new:1;
227 		uint64_t pwp:1;
228 	} cn30xx;
229 	struct cvmx_ipd_bist_status_cn30xx cn31xx;
230 	struct cvmx_ipd_bist_status_cn30xx cn38xx;
231 	struct cvmx_ipd_bist_status_cn30xx cn38xxp2;
232 	struct cvmx_ipd_bist_status_cn30xx cn50xx;
233 	struct cvmx_ipd_bist_status_s cn52xx;
234 	struct cvmx_ipd_bist_status_s cn52xxp1;
235 	struct cvmx_ipd_bist_status_s cn56xx;
236 	struct cvmx_ipd_bist_status_s cn56xxp1;
237 	struct cvmx_ipd_bist_status_cn30xx cn58xx;
238 	struct cvmx_ipd_bist_status_cn30xx cn58xxp1;
239 };
240 
241 union cvmx_ipd_bp_prt_red_end {
242 	uint64_t u64;
243 	struct cvmx_ipd_bp_prt_red_end_s {
244 		uint64_t reserved_40_63:24;
245 		uint64_t prt_enb:40;
246 	} s;
247 	struct cvmx_ipd_bp_prt_red_end_cn30xx {
248 		uint64_t reserved_36_63:28;
249 		uint64_t prt_enb:36;
250 	} cn30xx;
251 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn31xx;
252 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn38xx;
253 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn38xxp2;
254 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn50xx;
255 	struct cvmx_ipd_bp_prt_red_end_s cn52xx;
256 	struct cvmx_ipd_bp_prt_red_end_s cn52xxp1;
257 	struct cvmx_ipd_bp_prt_red_end_s cn56xx;
258 	struct cvmx_ipd_bp_prt_red_end_s cn56xxp1;
259 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn58xx;
260 	struct cvmx_ipd_bp_prt_red_end_cn30xx cn58xxp1;
261 };
262 
263 union cvmx_ipd_clk_count {
264 	uint64_t u64;
265 	struct cvmx_ipd_clk_count_s {
266 		uint64_t clk_cnt:64;
267 	} s;
268 	struct cvmx_ipd_clk_count_s cn30xx;
269 	struct cvmx_ipd_clk_count_s cn31xx;
270 	struct cvmx_ipd_clk_count_s cn38xx;
271 	struct cvmx_ipd_clk_count_s cn38xxp2;
272 	struct cvmx_ipd_clk_count_s cn50xx;
273 	struct cvmx_ipd_clk_count_s cn52xx;
274 	struct cvmx_ipd_clk_count_s cn52xxp1;
275 	struct cvmx_ipd_clk_count_s cn56xx;
276 	struct cvmx_ipd_clk_count_s cn56xxp1;
277 	struct cvmx_ipd_clk_count_s cn58xx;
278 	struct cvmx_ipd_clk_count_s cn58xxp1;
279 };
280 
281 union cvmx_ipd_ctl_status {
282 	uint64_t u64;
283 	struct cvmx_ipd_ctl_status_s {
284 		uint64_t reserved_15_63:49;
285 		uint64_t no_wptr:1;
286 		uint64_t pq_apkt:1;
287 		uint64_t pq_nabuf:1;
288 		uint64_t ipd_full:1;
289 		uint64_t pkt_off:1;
290 		uint64_t len_m8:1;
291 		uint64_t reset:1;
292 		uint64_t addpkt:1;
293 		uint64_t naddbuf:1;
294 		uint64_t pkt_lend:1;
295 		uint64_t wqe_lend:1;
296 		uint64_t pbp_en:1;
297 		uint64_t opc_mode:2;
298 		uint64_t ipd_en:1;
299 	} s;
300 	struct cvmx_ipd_ctl_status_cn30xx {
301 		uint64_t reserved_10_63:54;
302 		uint64_t len_m8:1;
303 		uint64_t reset:1;
304 		uint64_t addpkt:1;
305 		uint64_t naddbuf:1;
306 		uint64_t pkt_lend:1;
307 		uint64_t wqe_lend:1;
308 		uint64_t pbp_en:1;
309 		uint64_t opc_mode:2;
310 		uint64_t ipd_en:1;
311 	} cn30xx;
312 	struct cvmx_ipd_ctl_status_cn30xx cn31xx;
313 	struct cvmx_ipd_ctl_status_cn30xx cn38xx;
314 	struct cvmx_ipd_ctl_status_cn38xxp2 {
315 		uint64_t reserved_9_63:55;
316 		uint64_t reset:1;
317 		uint64_t addpkt:1;
318 		uint64_t naddbuf:1;
319 		uint64_t pkt_lend:1;
320 		uint64_t wqe_lend:1;
321 		uint64_t pbp_en:1;
322 		uint64_t opc_mode:2;
323 		uint64_t ipd_en:1;
324 	} cn38xxp2;
325 	struct cvmx_ipd_ctl_status_s cn50xx;
326 	struct cvmx_ipd_ctl_status_s cn52xx;
327 	struct cvmx_ipd_ctl_status_s cn52xxp1;
328 	struct cvmx_ipd_ctl_status_s cn56xx;
329 	struct cvmx_ipd_ctl_status_s cn56xxp1;
330 	struct cvmx_ipd_ctl_status_cn58xx {
331 		uint64_t reserved_12_63:52;
332 		uint64_t ipd_full:1;
333 		uint64_t pkt_off:1;
334 		uint64_t len_m8:1;
335 		uint64_t reset:1;
336 		uint64_t addpkt:1;
337 		uint64_t naddbuf:1;
338 		uint64_t pkt_lend:1;
339 		uint64_t wqe_lend:1;
340 		uint64_t pbp_en:1;
341 		uint64_t opc_mode:2;
342 		uint64_t ipd_en:1;
343 	} cn58xx;
344 	struct cvmx_ipd_ctl_status_cn58xx cn58xxp1;
345 };
346 
347 union cvmx_ipd_int_enb {
348 	uint64_t u64;
349 	struct cvmx_ipd_int_enb_s {
350 		uint64_t reserved_12_63:52;
351 		uint64_t pq_sub:1;
352 		uint64_t pq_add:1;
353 		uint64_t bc_ovr:1;
354 		uint64_t d_coll:1;
355 		uint64_t c_coll:1;
356 		uint64_t cc_ovr:1;
357 		uint64_t dc_ovr:1;
358 		uint64_t bp_sub:1;
359 		uint64_t prc_par3:1;
360 		uint64_t prc_par2:1;
361 		uint64_t prc_par1:1;
362 		uint64_t prc_par0:1;
363 	} s;
364 	struct cvmx_ipd_int_enb_cn30xx {
365 		uint64_t reserved_5_63:59;
366 		uint64_t bp_sub:1;
367 		uint64_t prc_par3:1;
368 		uint64_t prc_par2:1;
369 		uint64_t prc_par1:1;
370 		uint64_t prc_par0:1;
371 	} cn30xx;
372 	struct cvmx_ipd_int_enb_cn30xx cn31xx;
373 	struct cvmx_ipd_int_enb_cn38xx {
374 		uint64_t reserved_10_63:54;
375 		uint64_t bc_ovr:1;
376 		uint64_t d_coll:1;
377 		uint64_t c_coll:1;
378 		uint64_t cc_ovr:1;
379 		uint64_t dc_ovr:1;
380 		uint64_t bp_sub:1;
381 		uint64_t prc_par3:1;
382 		uint64_t prc_par2:1;
383 		uint64_t prc_par1:1;
384 		uint64_t prc_par0:1;
385 	} cn38xx;
386 	struct cvmx_ipd_int_enb_cn30xx cn38xxp2;
387 	struct cvmx_ipd_int_enb_cn38xx cn50xx;
388 	struct cvmx_ipd_int_enb_s cn52xx;
389 	struct cvmx_ipd_int_enb_s cn52xxp1;
390 	struct cvmx_ipd_int_enb_s cn56xx;
391 	struct cvmx_ipd_int_enb_s cn56xxp1;
392 	struct cvmx_ipd_int_enb_cn38xx cn58xx;
393 	struct cvmx_ipd_int_enb_cn38xx cn58xxp1;
394 };
395 
396 union cvmx_ipd_int_sum {
397 	uint64_t u64;
398 	struct cvmx_ipd_int_sum_s {
399 		uint64_t reserved_12_63:52;
400 		uint64_t pq_sub:1;
401 		uint64_t pq_add:1;
402 		uint64_t bc_ovr:1;
403 		uint64_t d_coll:1;
404 		uint64_t c_coll:1;
405 		uint64_t cc_ovr:1;
406 		uint64_t dc_ovr:1;
407 		uint64_t bp_sub:1;
408 		uint64_t prc_par3:1;
409 		uint64_t prc_par2:1;
410 		uint64_t prc_par1:1;
411 		uint64_t prc_par0:1;
412 	} s;
413 	struct cvmx_ipd_int_sum_cn30xx {
414 		uint64_t reserved_5_63:59;
415 		uint64_t bp_sub:1;
416 		uint64_t prc_par3:1;
417 		uint64_t prc_par2:1;
418 		uint64_t prc_par1:1;
419 		uint64_t prc_par0:1;
420 	} cn30xx;
421 	struct cvmx_ipd_int_sum_cn30xx cn31xx;
422 	struct cvmx_ipd_int_sum_cn38xx {
423 		uint64_t reserved_10_63:54;
424 		uint64_t bc_ovr:1;
425 		uint64_t d_coll:1;
426 		uint64_t c_coll:1;
427 		uint64_t cc_ovr:1;
428 		uint64_t dc_ovr:1;
429 		uint64_t bp_sub:1;
430 		uint64_t prc_par3:1;
431 		uint64_t prc_par2:1;
432 		uint64_t prc_par1:1;
433 		uint64_t prc_par0:1;
434 	} cn38xx;
435 	struct cvmx_ipd_int_sum_cn30xx cn38xxp2;
436 	struct cvmx_ipd_int_sum_cn38xx cn50xx;
437 	struct cvmx_ipd_int_sum_s cn52xx;
438 	struct cvmx_ipd_int_sum_s cn52xxp1;
439 	struct cvmx_ipd_int_sum_s cn56xx;
440 	struct cvmx_ipd_int_sum_s cn56xxp1;
441 	struct cvmx_ipd_int_sum_cn38xx cn58xx;
442 	struct cvmx_ipd_int_sum_cn38xx cn58xxp1;
443 };
444 
445 union cvmx_ipd_not_1st_mbuff_skip {
446 	uint64_t u64;
447 	struct cvmx_ipd_not_1st_mbuff_skip_s {
448 		uint64_t reserved_6_63:58;
449 		uint64_t skip_sz:6;
450 	} s;
451 	struct cvmx_ipd_not_1st_mbuff_skip_s cn30xx;
452 	struct cvmx_ipd_not_1st_mbuff_skip_s cn31xx;
453 	struct cvmx_ipd_not_1st_mbuff_skip_s cn38xx;
454 	struct cvmx_ipd_not_1st_mbuff_skip_s cn38xxp2;
455 	struct cvmx_ipd_not_1st_mbuff_skip_s cn50xx;
456 	struct cvmx_ipd_not_1st_mbuff_skip_s cn52xx;
457 	struct cvmx_ipd_not_1st_mbuff_skip_s cn52xxp1;
458 	struct cvmx_ipd_not_1st_mbuff_skip_s cn56xx;
459 	struct cvmx_ipd_not_1st_mbuff_skip_s cn56xxp1;
460 	struct cvmx_ipd_not_1st_mbuff_skip_s cn58xx;
461 	struct cvmx_ipd_not_1st_mbuff_skip_s cn58xxp1;
462 };
463 
464 union cvmx_ipd_packet_mbuff_size {
465 	uint64_t u64;
466 	struct cvmx_ipd_packet_mbuff_size_s {
467 		uint64_t reserved_12_63:52;
468 		uint64_t mb_size:12;
469 	} s;
470 	struct cvmx_ipd_packet_mbuff_size_s cn30xx;
471 	struct cvmx_ipd_packet_mbuff_size_s cn31xx;
472 	struct cvmx_ipd_packet_mbuff_size_s cn38xx;
473 	struct cvmx_ipd_packet_mbuff_size_s cn38xxp2;
474 	struct cvmx_ipd_packet_mbuff_size_s cn50xx;
475 	struct cvmx_ipd_packet_mbuff_size_s cn52xx;
476 	struct cvmx_ipd_packet_mbuff_size_s cn52xxp1;
477 	struct cvmx_ipd_packet_mbuff_size_s cn56xx;
478 	struct cvmx_ipd_packet_mbuff_size_s cn56xxp1;
479 	struct cvmx_ipd_packet_mbuff_size_s cn58xx;
480 	struct cvmx_ipd_packet_mbuff_size_s cn58xxp1;
481 };
482 
483 union cvmx_ipd_pkt_ptr_valid {
484 	uint64_t u64;
485 	struct cvmx_ipd_pkt_ptr_valid_s {
486 		uint64_t reserved_29_63:35;
487 		uint64_t ptr:29;
488 	} s;
489 	struct cvmx_ipd_pkt_ptr_valid_s cn30xx;
490 	struct cvmx_ipd_pkt_ptr_valid_s cn31xx;
491 	struct cvmx_ipd_pkt_ptr_valid_s cn38xx;
492 	struct cvmx_ipd_pkt_ptr_valid_s cn50xx;
493 	struct cvmx_ipd_pkt_ptr_valid_s cn52xx;
494 	struct cvmx_ipd_pkt_ptr_valid_s cn52xxp1;
495 	struct cvmx_ipd_pkt_ptr_valid_s cn56xx;
496 	struct cvmx_ipd_pkt_ptr_valid_s cn56xxp1;
497 	struct cvmx_ipd_pkt_ptr_valid_s cn58xx;
498 	struct cvmx_ipd_pkt_ptr_valid_s cn58xxp1;
499 };
500 
501 union cvmx_ipd_portx_bp_page_cnt {
502 	uint64_t u64;
503 	struct cvmx_ipd_portx_bp_page_cnt_s {
504 		uint64_t reserved_18_63:46;
505 		uint64_t bp_enb:1;
506 		uint64_t page_cnt:17;
507 	} s;
508 	struct cvmx_ipd_portx_bp_page_cnt_s cn30xx;
509 	struct cvmx_ipd_portx_bp_page_cnt_s cn31xx;
510 	struct cvmx_ipd_portx_bp_page_cnt_s cn38xx;
511 	struct cvmx_ipd_portx_bp_page_cnt_s cn38xxp2;
512 	struct cvmx_ipd_portx_bp_page_cnt_s cn50xx;
513 	struct cvmx_ipd_portx_bp_page_cnt_s cn52xx;
514 	struct cvmx_ipd_portx_bp_page_cnt_s cn52xxp1;
515 	struct cvmx_ipd_portx_bp_page_cnt_s cn56xx;
516 	struct cvmx_ipd_portx_bp_page_cnt_s cn56xxp1;
517 	struct cvmx_ipd_portx_bp_page_cnt_s cn58xx;
518 	struct cvmx_ipd_portx_bp_page_cnt_s cn58xxp1;
519 };
520 
521 union cvmx_ipd_portx_bp_page_cnt2 {
522 	uint64_t u64;
523 	struct cvmx_ipd_portx_bp_page_cnt2_s {
524 		uint64_t reserved_18_63:46;
525 		uint64_t bp_enb:1;
526 		uint64_t page_cnt:17;
527 	} s;
528 	struct cvmx_ipd_portx_bp_page_cnt2_s cn52xx;
529 	struct cvmx_ipd_portx_bp_page_cnt2_s cn52xxp1;
530 	struct cvmx_ipd_portx_bp_page_cnt2_s cn56xx;
531 	struct cvmx_ipd_portx_bp_page_cnt2_s cn56xxp1;
532 };
533 
534 union cvmx_ipd_port_bp_counters2_pairx {
535 	uint64_t u64;
536 	struct cvmx_ipd_port_bp_counters2_pairx_s {
537 		uint64_t reserved_25_63:39;
538 		uint64_t cnt_val:25;
539 	} s;
540 	struct cvmx_ipd_port_bp_counters2_pairx_s cn52xx;
541 	struct cvmx_ipd_port_bp_counters2_pairx_s cn52xxp1;
542 	struct cvmx_ipd_port_bp_counters2_pairx_s cn56xx;
543 	struct cvmx_ipd_port_bp_counters2_pairx_s cn56xxp1;
544 };
545 
546 union cvmx_ipd_port_bp_counters_pairx {
547 	uint64_t u64;
548 	struct cvmx_ipd_port_bp_counters_pairx_s {
549 		uint64_t reserved_25_63:39;
550 		uint64_t cnt_val:25;
551 	} s;
552 	struct cvmx_ipd_port_bp_counters_pairx_s cn30xx;
553 	struct cvmx_ipd_port_bp_counters_pairx_s cn31xx;
554 	struct cvmx_ipd_port_bp_counters_pairx_s cn38xx;
555 	struct cvmx_ipd_port_bp_counters_pairx_s cn38xxp2;
556 	struct cvmx_ipd_port_bp_counters_pairx_s cn50xx;
557 	struct cvmx_ipd_port_bp_counters_pairx_s cn52xx;
558 	struct cvmx_ipd_port_bp_counters_pairx_s cn52xxp1;
559 	struct cvmx_ipd_port_bp_counters_pairx_s cn56xx;
560 	struct cvmx_ipd_port_bp_counters_pairx_s cn56xxp1;
561 	struct cvmx_ipd_port_bp_counters_pairx_s cn58xx;
562 	struct cvmx_ipd_port_bp_counters_pairx_s cn58xxp1;
563 };
564 
565 union cvmx_ipd_port_qos_x_cnt {
566 	uint64_t u64;
567 	struct cvmx_ipd_port_qos_x_cnt_s {
568 		uint64_t wmark:32;
569 		uint64_t cnt:32;
570 	} s;
571 	struct cvmx_ipd_port_qos_x_cnt_s cn52xx;
572 	struct cvmx_ipd_port_qos_x_cnt_s cn52xxp1;
573 	struct cvmx_ipd_port_qos_x_cnt_s cn56xx;
574 	struct cvmx_ipd_port_qos_x_cnt_s cn56xxp1;
575 };
576 
577 union cvmx_ipd_port_qos_intx {
578 	uint64_t u64;
579 	struct cvmx_ipd_port_qos_intx_s {
580 		uint64_t intr:64;
581 	} s;
582 	struct cvmx_ipd_port_qos_intx_s cn52xx;
583 	struct cvmx_ipd_port_qos_intx_s cn52xxp1;
584 	struct cvmx_ipd_port_qos_intx_s cn56xx;
585 	struct cvmx_ipd_port_qos_intx_s cn56xxp1;
586 };
587 
588 union cvmx_ipd_port_qos_int_enbx {
589 	uint64_t u64;
590 	struct cvmx_ipd_port_qos_int_enbx_s {
591 		uint64_t enb:64;
592 	} s;
593 	struct cvmx_ipd_port_qos_int_enbx_s cn52xx;
594 	struct cvmx_ipd_port_qos_int_enbx_s cn52xxp1;
595 	struct cvmx_ipd_port_qos_int_enbx_s cn56xx;
596 	struct cvmx_ipd_port_qos_int_enbx_s cn56xxp1;
597 };
598 
599 union cvmx_ipd_prc_hold_ptr_fifo_ctl {
600 	uint64_t u64;
601 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s {
602 		uint64_t reserved_39_63:25;
603 		uint64_t max_pkt:3;
604 		uint64_t praddr:3;
605 		uint64_t ptr:29;
606 		uint64_t cena:1;
607 		uint64_t raddr:3;
608 	} s;
609 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn30xx;
610 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn31xx;
611 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn38xx;
612 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn50xx;
613 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn52xx;
614 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn52xxp1;
615 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn56xx;
616 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn56xxp1;
617 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn58xx;
618 	struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s cn58xxp1;
619 };
620 
621 union cvmx_ipd_prc_port_ptr_fifo_ctl {
622 	uint64_t u64;
623 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s {
624 		uint64_t reserved_44_63:20;
625 		uint64_t max_pkt:7;
626 		uint64_t ptr:29;
627 		uint64_t cena:1;
628 		uint64_t raddr:7;
629 	} s;
630 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn30xx;
631 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn31xx;
632 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn38xx;
633 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn50xx;
634 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn52xx;
635 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn52xxp1;
636 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn56xx;
637 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn56xxp1;
638 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn58xx;
639 	struct cvmx_ipd_prc_port_ptr_fifo_ctl_s cn58xxp1;
640 };
641 
642 union cvmx_ipd_ptr_count {
643 	uint64_t u64;
644 	struct cvmx_ipd_ptr_count_s {
645 		uint64_t reserved_19_63:45;
646 		uint64_t pktv_cnt:1;
647 		uint64_t wqev_cnt:1;
648 		uint64_t pfif_cnt:3;
649 		uint64_t pkt_pcnt:7;
650 		uint64_t wqe_pcnt:7;
651 	} s;
652 	struct cvmx_ipd_ptr_count_s cn30xx;
653 	struct cvmx_ipd_ptr_count_s cn31xx;
654 	struct cvmx_ipd_ptr_count_s cn38xx;
655 	struct cvmx_ipd_ptr_count_s cn38xxp2;
656 	struct cvmx_ipd_ptr_count_s cn50xx;
657 	struct cvmx_ipd_ptr_count_s cn52xx;
658 	struct cvmx_ipd_ptr_count_s cn52xxp1;
659 	struct cvmx_ipd_ptr_count_s cn56xx;
660 	struct cvmx_ipd_ptr_count_s cn56xxp1;
661 	struct cvmx_ipd_ptr_count_s cn58xx;
662 	struct cvmx_ipd_ptr_count_s cn58xxp1;
663 };
664 
665 union cvmx_ipd_pwp_ptr_fifo_ctl {
666 	uint64_t u64;
667 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s {
668 		uint64_t reserved_61_63:3;
669 		uint64_t max_cnts:7;
670 		uint64_t wraddr:8;
671 		uint64_t praddr:8;
672 		uint64_t ptr:29;
673 		uint64_t cena:1;
674 		uint64_t raddr:8;
675 	} s;
676 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn30xx;
677 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn31xx;
678 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn38xx;
679 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn50xx;
680 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn52xx;
681 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn52xxp1;
682 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn56xx;
683 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn56xxp1;
684 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn58xx;
685 	struct cvmx_ipd_pwp_ptr_fifo_ctl_s cn58xxp1;
686 };
687 
688 union cvmx_ipd_qosx_red_marks {
689 	uint64_t u64;
690 	struct cvmx_ipd_qosx_red_marks_s {
691 		uint64_t drop:32;
692 		uint64_t pass:32;
693 	} s;
694 	struct cvmx_ipd_qosx_red_marks_s cn30xx;
695 	struct cvmx_ipd_qosx_red_marks_s cn31xx;
696 	struct cvmx_ipd_qosx_red_marks_s cn38xx;
697 	struct cvmx_ipd_qosx_red_marks_s cn38xxp2;
698 	struct cvmx_ipd_qosx_red_marks_s cn50xx;
699 	struct cvmx_ipd_qosx_red_marks_s cn52xx;
700 	struct cvmx_ipd_qosx_red_marks_s cn52xxp1;
701 	struct cvmx_ipd_qosx_red_marks_s cn56xx;
702 	struct cvmx_ipd_qosx_red_marks_s cn56xxp1;
703 	struct cvmx_ipd_qosx_red_marks_s cn58xx;
704 	struct cvmx_ipd_qosx_red_marks_s cn58xxp1;
705 };
706 
707 union cvmx_ipd_que0_free_page_cnt {
708 	uint64_t u64;
709 	struct cvmx_ipd_que0_free_page_cnt_s {
710 		uint64_t reserved_32_63:32;
711 		uint64_t q0_pcnt:32;
712 	} s;
713 	struct cvmx_ipd_que0_free_page_cnt_s cn30xx;
714 	struct cvmx_ipd_que0_free_page_cnt_s cn31xx;
715 	struct cvmx_ipd_que0_free_page_cnt_s cn38xx;
716 	struct cvmx_ipd_que0_free_page_cnt_s cn38xxp2;
717 	struct cvmx_ipd_que0_free_page_cnt_s cn50xx;
718 	struct cvmx_ipd_que0_free_page_cnt_s cn52xx;
719 	struct cvmx_ipd_que0_free_page_cnt_s cn52xxp1;
720 	struct cvmx_ipd_que0_free_page_cnt_s cn56xx;
721 	struct cvmx_ipd_que0_free_page_cnt_s cn56xxp1;
722 	struct cvmx_ipd_que0_free_page_cnt_s cn58xx;
723 	struct cvmx_ipd_que0_free_page_cnt_s cn58xxp1;
724 };
725 
726 union cvmx_ipd_red_port_enable {
727 	uint64_t u64;
728 	struct cvmx_ipd_red_port_enable_s {
729 		uint64_t prb_dly:14;
730 		uint64_t avg_dly:14;
731 		uint64_t prt_enb:36;
732 	} s;
733 	struct cvmx_ipd_red_port_enable_s cn30xx;
734 	struct cvmx_ipd_red_port_enable_s cn31xx;
735 	struct cvmx_ipd_red_port_enable_s cn38xx;
736 	struct cvmx_ipd_red_port_enable_s cn38xxp2;
737 	struct cvmx_ipd_red_port_enable_s cn50xx;
738 	struct cvmx_ipd_red_port_enable_s cn52xx;
739 	struct cvmx_ipd_red_port_enable_s cn52xxp1;
740 	struct cvmx_ipd_red_port_enable_s cn56xx;
741 	struct cvmx_ipd_red_port_enable_s cn56xxp1;
742 	struct cvmx_ipd_red_port_enable_s cn58xx;
743 	struct cvmx_ipd_red_port_enable_s cn58xxp1;
744 };
745 
746 union cvmx_ipd_red_port_enable2 {
747 	uint64_t u64;
748 	struct cvmx_ipd_red_port_enable2_s {
749 		uint64_t reserved_4_63:60;
750 		uint64_t prt_enb:4;
751 	} s;
752 	struct cvmx_ipd_red_port_enable2_s cn52xx;
753 	struct cvmx_ipd_red_port_enable2_s cn52xxp1;
754 	struct cvmx_ipd_red_port_enable2_s cn56xx;
755 	struct cvmx_ipd_red_port_enable2_s cn56xxp1;
756 };
757 
758 union cvmx_ipd_red_quex_param {
759 	uint64_t u64;
760 	struct cvmx_ipd_red_quex_param_s {
761 		uint64_t reserved_49_63:15;
762 		uint64_t use_pcnt:1;
763 		uint64_t new_con:8;
764 		uint64_t avg_con:8;
765 		uint64_t prb_con:32;
766 	} s;
767 	struct cvmx_ipd_red_quex_param_s cn30xx;
768 	struct cvmx_ipd_red_quex_param_s cn31xx;
769 	struct cvmx_ipd_red_quex_param_s cn38xx;
770 	struct cvmx_ipd_red_quex_param_s cn38xxp2;
771 	struct cvmx_ipd_red_quex_param_s cn50xx;
772 	struct cvmx_ipd_red_quex_param_s cn52xx;
773 	struct cvmx_ipd_red_quex_param_s cn52xxp1;
774 	struct cvmx_ipd_red_quex_param_s cn56xx;
775 	struct cvmx_ipd_red_quex_param_s cn56xxp1;
776 	struct cvmx_ipd_red_quex_param_s cn58xx;
777 	struct cvmx_ipd_red_quex_param_s cn58xxp1;
778 };
779 
780 union cvmx_ipd_sub_port_bp_page_cnt {
781 	uint64_t u64;
782 	struct cvmx_ipd_sub_port_bp_page_cnt_s {
783 		uint64_t reserved_31_63:33;
784 		uint64_t port:6;
785 		uint64_t page_cnt:25;
786 	} s;
787 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn30xx;
788 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn31xx;
789 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn38xx;
790 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn38xxp2;
791 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn50xx;
792 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn52xx;
793 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn52xxp1;
794 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn56xx;
795 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn56xxp1;
796 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn58xx;
797 	struct cvmx_ipd_sub_port_bp_page_cnt_s cn58xxp1;
798 };
799 
800 union cvmx_ipd_sub_port_fcs {
801 	uint64_t u64;
802 	struct cvmx_ipd_sub_port_fcs_s {
803 		uint64_t reserved_40_63:24;
804 		uint64_t port_bit2:4;
805 		uint64_t reserved_32_35:4;
806 		uint64_t port_bit:32;
807 	} s;
808 	struct cvmx_ipd_sub_port_fcs_cn30xx {
809 		uint64_t reserved_3_63:61;
810 		uint64_t port_bit:3;
811 	} cn30xx;
812 	struct cvmx_ipd_sub_port_fcs_cn30xx cn31xx;
813 	struct cvmx_ipd_sub_port_fcs_cn38xx {
814 		uint64_t reserved_32_63:32;
815 		uint64_t port_bit:32;
816 	} cn38xx;
817 	struct cvmx_ipd_sub_port_fcs_cn38xx cn38xxp2;
818 	struct cvmx_ipd_sub_port_fcs_cn30xx cn50xx;
819 	struct cvmx_ipd_sub_port_fcs_s cn52xx;
820 	struct cvmx_ipd_sub_port_fcs_s cn52xxp1;
821 	struct cvmx_ipd_sub_port_fcs_s cn56xx;
822 	struct cvmx_ipd_sub_port_fcs_s cn56xxp1;
823 	struct cvmx_ipd_sub_port_fcs_cn38xx cn58xx;
824 	struct cvmx_ipd_sub_port_fcs_cn38xx cn58xxp1;
825 };
826 
827 union cvmx_ipd_sub_port_qos_cnt {
828 	uint64_t u64;
829 	struct cvmx_ipd_sub_port_qos_cnt_s {
830 		uint64_t reserved_41_63:23;
831 		uint64_t port_qos:9;
832 		uint64_t cnt:32;
833 	} s;
834 	struct cvmx_ipd_sub_port_qos_cnt_s cn52xx;
835 	struct cvmx_ipd_sub_port_qos_cnt_s cn52xxp1;
836 	struct cvmx_ipd_sub_port_qos_cnt_s cn56xx;
837 	struct cvmx_ipd_sub_port_qos_cnt_s cn56xxp1;
838 };
839 
840 union cvmx_ipd_wqe_fpa_queue {
841 	uint64_t u64;
842 	struct cvmx_ipd_wqe_fpa_queue_s {
843 		uint64_t reserved_3_63:61;
844 		uint64_t wqe_pool:3;
845 	} s;
846 	struct cvmx_ipd_wqe_fpa_queue_s cn30xx;
847 	struct cvmx_ipd_wqe_fpa_queue_s cn31xx;
848 	struct cvmx_ipd_wqe_fpa_queue_s cn38xx;
849 	struct cvmx_ipd_wqe_fpa_queue_s cn38xxp2;
850 	struct cvmx_ipd_wqe_fpa_queue_s cn50xx;
851 	struct cvmx_ipd_wqe_fpa_queue_s cn52xx;
852 	struct cvmx_ipd_wqe_fpa_queue_s cn52xxp1;
853 	struct cvmx_ipd_wqe_fpa_queue_s cn56xx;
854 	struct cvmx_ipd_wqe_fpa_queue_s cn56xxp1;
855 	struct cvmx_ipd_wqe_fpa_queue_s cn58xx;
856 	struct cvmx_ipd_wqe_fpa_queue_s cn58xxp1;
857 };
858 
859 union cvmx_ipd_wqe_ptr_valid {
860 	uint64_t u64;
861 	struct cvmx_ipd_wqe_ptr_valid_s {
862 		uint64_t reserved_29_63:35;
863 		uint64_t ptr:29;
864 	} s;
865 	struct cvmx_ipd_wqe_ptr_valid_s cn30xx;
866 	struct cvmx_ipd_wqe_ptr_valid_s cn31xx;
867 	struct cvmx_ipd_wqe_ptr_valid_s cn38xx;
868 	struct cvmx_ipd_wqe_ptr_valid_s cn50xx;
869 	struct cvmx_ipd_wqe_ptr_valid_s cn52xx;
870 	struct cvmx_ipd_wqe_ptr_valid_s cn52xxp1;
871 	struct cvmx_ipd_wqe_ptr_valid_s cn56xx;
872 	struct cvmx_ipd_wqe_ptr_valid_s cn56xxp1;
873 	struct cvmx_ipd_wqe_ptr_valid_s cn58xx;
874 	struct cvmx_ipd_wqe_ptr_valid_s cn58xxp1;
875 };
876 
877 #endif
878