1 /***********************license start***************
2 * Author: Cavium Networks
4 * Contact: support@caviumnetworks.com
5 * This file is part of the OCTEON SDK
7 * Copyright (c) 2003-2012 Cavium Networks
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.
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
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/.
24 * This file may also be available under a different license from Cavium.
25 * Contact Cavium Networks for more information
26 ***********************license end**************************************/
28 #ifndef __CVMX_PKO_DEFS_H__
29 #define __CVMX_PKO_DEFS_H__
31 #define CVMX_PKO_MEM_COUNT0 (CVMX_ADD_IO_SEG(0x0001180050001080ull))
32 #define CVMX_PKO_MEM_COUNT1 (CVMX_ADD_IO_SEG(0x0001180050001088ull))
33 #define CVMX_PKO_MEM_DEBUG0 (CVMX_ADD_IO_SEG(0x0001180050001100ull))
34 #define CVMX_PKO_MEM_DEBUG1 (CVMX_ADD_IO_SEG(0x0001180050001108ull))
35 #define CVMX_PKO_MEM_DEBUG10 (CVMX_ADD_IO_SEG(0x0001180050001150ull))
36 #define CVMX_PKO_MEM_DEBUG11 (CVMX_ADD_IO_SEG(0x0001180050001158ull))
37 #define CVMX_PKO_MEM_DEBUG12 (CVMX_ADD_IO_SEG(0x0001180050001160ull))
38 #define CVMX_PKO_MEM_DEBUG13 (CVMX_ADD_IO_SEG(0x0001180050001168ull))
39 #define CVMX_PKO_MEM_DEBUG14 (CVMX_ADD_IO_SEG(0x0001180050001170ull))
40 #define CVMX_PKO_MEM_DEBUG2 (CVMX_ADD_IO_SEG(0x0001180050001110ull))
41 #define CVMX_PKO_MEM_DEBUG3 (CVMX_ADD_IO_SEG(0x0001180050001118ull))
42 #define CVMX_PKO_MEM_DEBUG4 (CVMX_ADD_IO_SEG(0x0001180050001120ull))
43 #define CVMX_PKO_MEM_DEBUG5 (CVMX_ADD_IO_SEG(0x0001180050001128ull))
44 #define CVMX_PKO_MEM_DEBUG6 (CVMX_ADD_IO_SEG(0x0001180050001130ull))
45 #define CVMX_PKO_MEM_DEBUG7 (CVMX_ADD_IO_SEG(0x0001180050001138ull))
46 #define CVMX_PKO_MEM_DEBUG8 (CVMX_ADD_IO_SEG(0x0001180050001140ull))
47 #define CVMX_PKO_MEM_DEBUG9 (CVMX_ADD_IO_SEG(0x0001180050001148ull))
48 #define CVMX_PKO_MEM_IPORT_PTRS (CVMX_ADD_IO_SEG(0x0001180050001030ull))
49 #define CVMX_PKO_MEM_IPORT_QOS (CVMX_ADD_IO_SEG(0x0001180050001038ull))
50 #define CVMX_PKO_MEM_IQUEUE_PTRS (CVMX_ADD_IO_SEG(0x0001180050001040ull))
51 #define CVMX_PKO_MEM_IQUEUE_QOS (CVMX_ADD_IO_SEG(0x0001180050001048ull))
52 #define CVMX_PKO_MEM_PORT_PTRS (CVMX_ADD_IO_SEG(0x0001180050001010ull))
53 #define CVMX_PKO_MEM_PORT_QOS (CVMX_ADD_IO_SEG(0x0001180050001018ull))
54 #define CVMX_PKO_MEM_PORT_RATE0 (CVMX_ADD_IO_SEG(0x0001180050001020ull))
55 #define CVMX_PKO_MEM_PORT_RATE1 (CVMX_ADD_IO_SEG(0x0001180050001028ull))
56 #define CVMX_PKO_MEM_QUEUE_PTRS (CVMX_ADD_IO_SEG(0x0001180050001000ull))
57 #define CVMX_PKO_MEM_QUEUE_QOS (CVMX_ADD_IO_SEG(0x0001180050001008ull))
58 #define CVMX_PKO_MEM_THROTTLE_INT (CVMX_ADD_IO_SEG(0x0001180050001058ull))
59 #define CVMX_PKO_MEM_THROTTLE_PIPE (CVMX_ADD_IO_SEG(0x0001180050001050ull))
60 #define CVMX_PKO_REG_BIST_RESULT (CVMX_ADD_IO_SEG(0x0001180050000080ull))
61 #define CVMX_PKO_REG_CMD_BUF (CVMX_ADD_IO_SEG(0x0001180050000010ull))
62 #define CVMX_PKO_REG_CRC_CTLX(offset) (CVMX_ADD_IO_SEG(0x0001180050000028ull) + ((offset) & 1) * 8)
63 #define CVMX_PKO_REG_CRC_ENABLE (CVMX_ADD_IO_SEG(0x0001180050000020ull))
64 #define CVMX_PKO_REG_CRC_IVX(offset) (CVMX_ADD_IO_SEG(0x0001180050000038ull) + ((offset) & 1) * 8)
65 #define CVMX_PKO_REG_DEBUG0 (CVMX_ADD_IO_SEG(0x0001180050000098ull))
66 #define CVMX_PKO_REG_DEBUG1 (CVMX_ADD_IO_SEG(0x00011800500000A0ull))
67 #define CVMX_PKO_REG_DEBUG2 (CVMX_ADD_IO_SEG(0x00011800500000A8ull))
68 #define CVMX_PKO_REG_DEBUG3 (CVMX_ADD_IO_SEG(0x00011800500000B0ull))
69 #define CVMX_PKO_REG_DEBUG4 (CVMX_ADD_IO_SEG(0x00011800500000B8ull))
70 #define CVMX_PKO_REG_ENGINE_INFLIGHT (CVMX_ADD_IO_SEG(0x0001180050000050ull))
71 #define CVMX_PKO_REG_ENGINE_INFLIGHT1 (CVMX_ADD_IO_SEG(0x0001180050000318ull))
72 #define CVMX_PKO_REG_ENGINE_STORAGEX(offset) (CVMX_ADD_IO_SEG(0x0001180050000300ull) + ((offset) & 1) * 8)
73 #define CVMX_PKO_REG_ENGINE_THRESH (CVMX_ADD_IO_SEG(0x0001180050000058ull))
74 #define CVMX_PKO_REG_ERROR (CVMX_ADD_IO_SEG(0x0001180050000088ull))
75 #define CVMX_PKO_REG_FLAGS (CVMX_ADD_IO_SEG(0x0001180050000000ull))
76 #define CVMX_PKO_REG_GMX_PORT_MODE (CVMX_ADD_IO_SEG(0x0001180050000018ull))
77 #define CVMX_PKO_REG_INT_MASK (CVMX_ADD_IO_SEG(0x0001180050000090ull))
78 #define CVMX_PKO_REG_LOOPBACK_BPID (CVMX_ADD_IO_SEG(0x0001180050000118ull))
79 #define CVMX_PKO_REG_LOOPBACK_PKIND (CVMX_ADD_IO_SEG(0x0001180050000068ull))
80 #define CVMX_PKO_REG_MIN_PKT (CVMX_ADD_IO_SEG(0x0001180050000070ull))
81 #define CVMX_PKO_REG_PREEMPT (CVMX_ADD_IO_SEG(0x0001180050000110ull))
82 #define CVMX_PKO_REG_QUEUE_MODE (CVMX_ADD_IO_SEG(0x0001180050000048ull))
83 #define CVMX_PKO_REG_QUEUE_PREEMPT (CVMX_ADD_IO_SEG(0x0001180050000108ull))
84 #define CVMX_PKO_REG_QUEUE_PTRS1 (CVMX_ADD_IO_SEG(0x0001180050000100ull))
85 #define CVMX_PKO_REG_READ_IDX (CVMX_ADD_IO_SEG(0x0001180050000008ull))
86 #define CVMX_PKO_REG_THROTTLE (CVMX_ADD_IO_SEG(0x0001180050000078ull))
87 #define CVMX_PKO_REG_TIMESTAMP (CVMX_ADD_IO_SEG(0x0001180050000060ull))
89 union cvmx_pko_mem_count0 {
91 struct cvmx_pko_mem_count0_s {
92 #ifdef __BIG_ENDIAN_BITFIELD
93 uint64_t reserved_32_63:32;
97 uint64_t reserved_32_63:32;
100 struct cvmx_pko_mem_count0_s cn30xx;
101 struct cvmx_pko_mem_count0_s cn31xx;
102 struct cvmx_pko_mem_count0_s cn38xx;
103 struct cvmx_pko_mem_count0_s cn38xxp2;
104 struct cvmx_pko_mem_count0_s cn50xx;
105 struct cvmx_pko_mem_count0_s cn52xx;
106 struct cvmx_pko_mem_count0_s cn52xxp1;
107 struct cvmx_pko_mem_count0_s cn56xx;
108 struct cvmx_pko_mem_count0_s cn56xxp1;
109 struct cvmx_pko_mem_count0_s cn58xx;
110 struct cvmx_pko_mem_count0_s cn58xxp1;
111 struct cvmx_pko_mem_count0_s cn61xx;
112 struct cvmx_pko_mem_count0_s cn63xx;
113 struct cvmx_pko_mem_count0_s cn63xxp1;
114 struct cvmx_pko_mem_count0_s cn66xx;
115 struct cvmx_pko_mem_count0_s cn68xx;
116 struct cvmx_pko_mem_count0_s cn68xxp1;
117 struct cvmx_pko_mem_count0_s cnf71xx;
120 union cvmx_pko_mem_count1 {
122 struct cvmx_pko_mem_count1_s {
123 #ifdef __BIG_ENDIAN_BITFIELD
124 uint64_t reserved_48_63:16;
128 uint64_t reserved_48_63:16;
131 struct cvmx_pko_mem_count1_s cn30xx;
132 struct cvmx_pko_mem_count1_s cn31xx;
133 struct cvmx_pko_mem_count1_s cn38xx;
134 struct cvmx_pko_mem_count1_s cn38xxp2;
135 struct cvmx_pko_mem_count1_s cn50xx;
136 struct cvmx_pko_mem_count1_s cn52xx;
137 struct cvmx_pko_mem_count1_s cn52xxp1;
138 struct cvmx_pko_mem_count1_s cn56xx;
139 struct cvmx_pko_mem_count1_s cn56xxp1;
140 struct cvmx_pko_mem_count1_s cn58xx;
141 struct cvmx_pko_mem_count1_s cn58xxp1;
142 struct cvmx_pko_mem_count1_s cn61xx;
143 struct cvmx_pko_mem_count1_s cn63xx;
144 struct cvmx_pko_mem_count1_s cn63xxp1;
145 struct cvmx_pko_mem_count1_s cn66xx;
146 struct cvmx_pko_mem_count1_s cn68xx;
147 struct cvmx_pko_mem_count1_s cn68xxp1;
148 struct cvmx_pko_mem_count1_s cnf71xx;
151 union cvmx_pko_mem_debug0 {
153 struct cvmx_pko_mem_debug0_s {
154 #ifdef __BIG_ENDIAN_BITFIELD
166 struct cvmx_pko_mem_debug0_s cn30xx;
167 struct cvmx_pko_mem_debug0_s cn31xx;
168 struct cvmx_pko_mem_debug0_s cn38xx;
169 struct cvmx_pko_mem_debug0_s cn38xxp2;
170 struct cvmx_pko_mem_debug0_s cn50xx;
171 struct cvmx_pko_mem_debug0_s cn52xx;
172 struct cvmx_pko_mem_debug0_s cn52xxp1;
173 struct cvmx_pko_mem_debug0_s cn56xx;
174 struct cvmx_pko_mem_debug0_s cn56xxp1;
175 struct cvmx_pko_mem_debug0_s cn58xx;
176 struct cvmx_pko_mem_debug0_s cn58xxp1;
177 struct cvmx_pko_mem_debug0_s cn61xx;
178 struct cvmx_pko_mem_debug0_s cn63xx;
179 struct cvmx_pko_mem_debug0_s cn63xxp1;
180 struct cvmx_pko_mem_debug0_s cn66xx;
181 struct cvmx_pko_mem_debug0_s cn68xx;
182 struct cvmx_pko_mem_debug0_s cn68xxp1;
183 struct cvmx_pko_mem_debug0_s cnf71xx;
186 union cvmx_pko_mem_debug1 {
188 struct cvmx_pko_mem_debug1_s {
189 #ifdef __BIG_ENDIAN_BITFIELD
203 struct cvmx_pko_mem_debug1_s cn30xx;
204 struct cvmx_pko_mem_debug1_s cn31xx;
205 struct cvmx_pko_mem_debug1_s cn38xx;
206 struct cvmx_pko_mem_debug1_s cn38xxp2;
207 struct cvmx_pko_mem_debug1_s cn50xx;
208 struct cvmx_pko_mem_debug1_s cn52xx;
209 struct cvmx_pko_mem_debug1_s cn52xxp1;
210 struct cvmx_pko_mem_debug1_s cn56xx;
211 struct cvmx_pko_mem_debug1_s cn56xxp1;
212 struct cvmx_pko_mem_debug1_s cn58xx;
213 struct cvmx_pko_mem_debug1_s cn58xxp1;
214 struct cvmx_pko_mem_debug1_s cn61xx;
215 struct cvmx_pko_mem_debug1_s cn63xx;
216 struct cvmx_pko_mem_debug1_s cn63xxp1;
217 struct cvmx_pko_mem_debug1_s cn66xx;
218 struct cvmx_pko_mem_debug1_s cn68xx;
219 struct cvmx_pko_mem_debug1_s cn68xxp1;
220 struct cvmx_pko_mem_debug1_s cnf71xx;
223 union cvmx_pko_mem_debug10 {
225 struct cvmx_pko_mem_debug10_s {
226 #ifdef __BIG_ENDIAN_BITFIELD
227 uint64_t reserved_0_63:64;
229 uint64_t reserved_0_63:64;
232 struct cvmx_pko_mem_debug10_cn30xx {
233 #ifdef __BIG_ENDIAN_BITFIELD
245 struct cvmx_pko_mem_debug10_cn30xx cn31xx;
246 struct cvmx_pko_mem_debug10_cn30xx cn38xx;
247 struct cvmx_pko_mem_debug10_cn30xx cn38xxp2;
248 struct cvmx_pko_mem_debug10_cn50xx {
249 #ifdef __BIG_ENDIAN_BITFIELD
250 uint64_t reserved_49_63:15;
252 uint64_t reserved_17_31:15;
256 uint64_t reserved_17_31:15;
258 uint64_t reserved_49_63:15;
261 struct cvmx_pko_mem_debug10_cn50xx cn52xx;
262 struct cvmx_pko_mem_debug10_cn50xx cn52xxp1;
263 struct cvmx_pko_mem_debug10_cn50xx cn56xx;
264 struct cvmx_pko_mem_debug10_cn50xx cn56xxp1;
265 struct cvmx_pko_mem_debug10_cn50xx cn58xx;
266 struct cvmx_pko_mem_debug10_cn50xx cn58xxp1;
267 struct cvmx_pko_mem_debug10_cn50xx cn61xx;
268 struct cvmx_pko_mem_debug10_cn50xx cn63xx;
269 struct cvmx_pko_mem_debug10_cn50xx cn63xxp1;
270 struct cvmx_pko_mem_debug10_cn50xx cn66xx;
271 struct cvmx_pko_mem_debug10_cn50xx cn68xx;
272 struct cvmx_pko_mem_debug10_cn50xx cn68xxp1;
273 struct cvmx_pko_mem_debug10_cn50xx cnf71xx;
276 union cvmx_pko_mem_debug11 {
278 struct cvmx_pko_mem_debug11_s {
279 #ifdef __BIG_ENDIAN_BITFIELD
284 uint64_t reserved_0_39:40;
286 uint64_t reserved_0_39:40;
293 struct cvmx_pko_mem_debug11_cn30xx {
294 #ifdef __BIG_ENDIAN_BITFIELD
308 struct cvmx_pko_mem_debug11_cn30xx cn31xx;
309 struct cvmx_pko_mem_debug11_cn30xx cn38xx;
310 struct cvmx_pko_mem_debug11_cn30xx cn38xxp2;
311 struct cvmx_pko_mem_debug11_cn50xx {
312 #ifdef __BIG_ENDIAN_BITFIELD
313 uint64_t reserved_23_63:41;
329 uint64_t reserved_23_63:41;
332 struct cvmx_pko_mem_debug11_cn50xx cn52xx;
333 struct cvmx_pko_mem_debug11_cn50xx cn52xxp1;
334 struct cvmx_pko_mem_debug11_cn50xx cn56xx;
335 struct cvmx_pko_mem_debug11_cn50xx cn56xxp1;
336 struct cvmx_pko_mem_debug11_cn50xx cn58xx;
337 struct cvmx_pko_mem_debug11_cn50xx cn58xxp1;
338 struct cvmx_pko_mem_debug11_cn50xx cn61xx;
339 struct cvmx_pko_mem_debug11_cn50xx cn63xx;
340 struct cvmx_pko_mem_debug11_cn50xx cn63xxp1;
341 struct cvmx_pko_mem_debug11_cn50xx cn66xx;
342 struct cvmx_pko_mem_debug11_cn50xx cn68xx;
343 struct cvmx_pko_mem_debug11_cn50xx cn68xxp1;
344 struct cvmx_pko_mem_debug11_cn50xx cnf71xx;
347 union cvmx_pko_mem_debug12 {
349 struct cvmx_pko_mem_debug12_s {
350 #ifdef __BIG_ENDIAN_BITFIELD
351 uint64_t reserved_0_63:64;
353 uint64_t reserved_0_63:64;
356 struct cvmx_pko_mem_debug12_cn30xx {
357 #ifdef __BIG_ENDIAN_BITFIELD
363 struct cvmx_pko_mem_debug12_cn30xx cn31xx;
364 struct cvmx_pko_mem_debug12_cn30xx cn38xx;
365 struct cvmx_pko_mem_debug12_cn30xx cn38xxp2;
366 struct cvmx_pko_mem_debug12_cn50xx {
367 #ifdef __BIG_ENDIAN_BITFIELD
379 struct cvmx_pko_mem_debug12_cn50xx cn52xx;
380 struct cvmx_pko_mem_debug12_cn50xx cn52xxp1;
381 struct cvmx_pko_mem_debug12_cn50xx cn56xx;
382 struct cvmx_pko_mem_debug12_cn50xx cn56xxp1;
383 struct cvmx_pko_mem_debug12_cn50xx cn58xx;
384 struct cvmx_pko_mem_debug12_cn50xx cn58xxp1;
385 struct cvmx_pko_mem_debug12_cn50xx cn61xx;
386 struct cvmx_pko_mem_debug12_cn50xx cn63xx;
387 struct cvmx_pko_mem_debug12_cn50xx cn63xxp1;
388 struct cvmx_pko_mem_debug12_cn50xx cn66xx;
389 struct cvmx_pko_mem_debug12_cn68xx {
390 #ifdef __BIG_ENDIAN_BITFIELD
396 struct cvmx_pko_mem_debug12_cn68xx cn68xxp1;
397 struct cvmx_pko_mem_debug12_cn50xx cnf71xx;
400 union cvmx_pko_mem_debug13 {
402 struct cvmx_pko_mem_debug13_s {
403 #ifdef __BIG_ENDIAN_BITFIELD
404 uint64_t reserved_0_63:64;
406 uint64_t reserved_0_63:64;
409 struct cvmx_pko_mem_debug13_cn30xx {
410 #ifdef __BIG_ENDIAN_BITFIELD
411 uint64_t reserved_51_63:13;
419 uint64_t reserved_51_63:13;
422 struct cvmx_pko_mem_debug13_cn30xx cn31xx;
423 struct cvmx_pko_mem_debug13_cn30xx cn38xx;
424 struct cvmx_pko_mem_debug13_cn30xx cn38xxp2;
425 struct cvmx_pko_mem_debug13_cn50xx {
426 #ifdef __BIG_ENDIAN_BITFIELD
440 struct cvmx_pko_mem_debug13_cn50xx cn52xx;
441 struct cvmx_pko_mem_debug13_cn50xx cn52xxp1;
442 struct cvmx_pko_mem_debug13_cn50xx cn56xx;
443 struct cvmx_pko_mem_debug13_cn50xx cn56xxp1;
444 struct cvmx_pko_mem_debug13_cn50xx cn58xx;
445 struct cvmx_pko_mem_debug13_cn50xx cn58xxp1;
446 struct cvmx_pko_mem_debug13_cn50xx cn61xx;
447 struct cvmx_pko_mem_debug13_cn50xx cn63xx;
448 struct cvmx_pko_mem_debug13_cn50xx cn63xxp1;
449 struct cvmx_pko_mem_debug13_cn50xx cn66xx;
450 struct cvmx_pko_mem_debug13_cn68xx {
451 #ifdef __BIG_ENDIAN_BITFIELD
457 struct cvmx_pko_mem_debug13_cn68xx cn68xxp1;
458 struct cvmx_pko_mem_debug13_cn50xx cnf71xx;
461 union cvmx_pko_mem_debug14 {
463 struct cvmx_pko_mem_debug14_s {
464 #ifdef __BIG_ENDIAN_BITFIELD
465 uint64_t reserved_0_63:64;
467 uint64_t reserved_0_63:64;
470 struct cvmx_pko_mem_debug14_cn30xx {
471 #ifdef __BIG_ENDIAN_BITFIELD
472 uint64_t reserved_17_63:47;
476 uint64_t reserved_17_63:47;
479 struct cvmx_pko_mem_debug14_cn30xx cn31xx;
480 struct cvmx_pko_mem_debug14_cn30xx cn38xx;
481 struct cvmx_pko_mem_debug14_cn30xx cn38xxp2;
482 struct cvmx_pko_mem_debug14_cn52xx {
483 #ifdef __BIG_ENDIAN_BITFIELD
489 struct cvmx_pko_mem_debug14_cn52xx cn52xxp1;
490 struct cvmx_pko_mem_debug14_cn52xx cn56xx;
491 struct cvmx_pko_mem_debug14_cn52xx cn56xxp1;
492 struct cvmx_pko_mem_debug14_cn52xx cn61xx;
493 struct cvmx_pko_mem_debug14_cn52xx cn63xx;
494 struct cvmx_pko_mem_debug14_cn52xx cn63xxp1;
495 struct cvmx_pko_mem_debug14_cn52xx cn66xx;
496 struct cvmx_pko_mem_debug14_cn52xx cnf71xx;
499 union cvmx_pko_mem_debug2 {
501 struct cvmx_pko_mem_debug2_s {
502 #ifdef __BIG_ENDIAN_BITFIELD
516 struct cvmx_pko_mem_debug2_s cn30xx;
517 struct cvmx_pko_mem_debug2_s cn31xx;
518 struct cvmx_pko_mem_debug2_s cn38xx;
519 struct cvmx_pko_mem_debug2_s cn38xxp2;
520 struct cvmx_pko_mem_debug2_s cn50xx;
521 struct cvmx_pko_mem_debug2_s cn52xx;
522 struct cvmx_pko_mem_debug2_s cn52xxp1;
523 struct cvmx_pko_mem_debug2_s cn56xx;
524 struct cvmx_pko_mem_debug2_s cn56xxp1;
525 struct cvmx_pko_mem_debug2_s cn58xx;
526 struct cvmx_pko_mem_debug2_s cn58xxp1;
527 struct cvmx_pko_mem_debug2_s cn61xx;
528 struct cvmx_pko_mem_debug2_s cn63xx;
529 struct cvmx_pko_mem_debug2_s cn63xxp1;
530 struct cvmx_pko_mem_debug2_s cn66xx;
531 struct cvmx_pko_mem_debug2_s cn68xx;
532 struct cvmx_pko_mem_debug2_s cn68xxp1;
533 struct cvmx_pko_mem_debug2_s cnf71xx;
536 union cvmx_pko_mem_debug3 {
538 struct cvmx_pko_mem_debug3_s {
539 #ifdef __BIG_ENDIAN_BITFIELD
540 uint64_t reserved_0_63:64;
542 uint64_t reserved_0_63:64;
545 struct cvmx_pko_mem_debug3_cn30xx {
546 #ifdef __BIG_ENDIAN_BITFIELD
560 struct cvmx_pko_mem_debug3_cn30xx cn31xx;
561 struct cvmx_pko_mem_debug3_cn30xx cn38xx;
562 struct cvmx_pko_mem_debug3_cn30xx cn38xxp2;
563 struct cvmx_pko_mem_debug3_cn50xx {
564 #ifdef __BIG_ENDIAN_BITFIELD
570 struct cvmx_pko_mem_debug3_cn50xx cn52xx;
571 struct cvmx_pko_mem_debug3_cn50xx cn52xxp1;
572 struct cvmx_pko_mem_debug3_cn50xx cn56xx;
573 struct cvmx_pko_mem_debug3_cn50xx cn56xxp1;
574 struct cvmx_pko_mem_debug3_cn50xx cn58xx;
575 struct cvmx_pko_mem_debug3_cn50xx cn58xxp1;
576 struct cvmx_pko_mem_debug3_cn50xx cn61xx;
577 struct cvmx_pko_mem_debug3_cn50xx cn63xx;
578 struct cvmx_pko_mem_debug3_cn50xx cn63xxp1;
579 struct cvmx_pko_mem_debug3_cn50xx cn66xx;
580 struct cvmx_pko_mem_debug3_cn50xx cn68xx;
581 struct cvmx_pko_mem_debug3_cn50xx cn68xxp1;
582 struct cvmx_pko_mem_debug3_cn50xx cnf71xx;
585 union cvmx_pko_mem_debug4 {
587 struct cvmx_pko_mem_debug4_s {
588 #ifdef __BIG_ENDIAN_BITFIELD
589 uint64_t reserved_0_63:64;
591 uint64_t reserved_0_63:64;
594 struct cvmx_pko_mem_debug4_cn30xx {
595 #ifdef __BIG_ENDIAN_BITFIELD
601 struct cvmx_pko_mem_debug4_cn30xx cn31xx;
602 struct cvmx_pko_mem_debug4_cn30xx cn38xx;
603 struct cvmx_pko_mem_debug4_cn30xx cn38xxp2;
604 struct cvmx_pko_mem_debug4_cn50xx {
605 #ifdef __BIG_ENDIAN_BITFIELD
606 uint64_t cmnd_segs:3;
607 uint64_t cmnd_siz:16;
610 uint64_t dread_sop:1;
611 uint64_t init_dwrite:1;
618 uint64_t qid_off_max:4;
630 uint64_t qid_off_max:4;
637 uint64_t init_dwrite:1;
638 uint64_t dread_sop:1;
641 uint64_t cmnd_siz:16;
642 uint64_t cmnd_segs:3;
645 struct cvmx_pko_mem_debug4_cn52xx {
646 #ifdef __BIG_ENDIAN_BITFIELD
648 uint64_t curr_off:16;
649 uint64_t cmnd_segs:6;
650 uint64_t cmnd_siz:16;
653 uint64_t dread_sop:1;
654 uint64_t init_dwrite:1;
666 uint64_t init_dwrite:1;
667 uint64_t dread_sop:1;
670 uint64_t cmnd_siz:16;
671 uint64_t cmnd_segs:6;
672 uint64_t curr_off:16;
676 struct cvmx_pko_mem_debug4_cn52xx cn52xxp1;
677 struct cvmx_pko_mem_debug4_cn52xx cn56xx;
678 struct cvmx_pko_mem_debug4_cn52xx cn56xxp1;
679 struct cvmx_pko_mem_debug4_cn50xx cn58xx;
680 struct cvmx_pko_mem_debug4_cn50xx cn58xxp1;
681 struct cvmx_pko_mem_debug4_cn52xx cn61xx;
682 struct cvmx_pko_mem_debug4_cn52xx cn63xx;
683 struct cvmx_pko_mem_debug4_cn52xx cn63xxp1;
684 struct cvmx_pko_mem_debug4_cn52xx cn66xx;
685 struct cvmx_pko_mem_debug4_cn52xx cn68xx;
686 struct cvmx_pko_mem_debug4_cn52xx cn68xxp1;
687 struct cvmx_pko_mem_debug4_cn52xx cnf71xx;
690 union cvmx_pko_mem_debug5 {
692 struct cvmx_pko_mem_debug5_s {
693 #ifdef __BIG_ENDIAN_BITFIELD
694 uint64_t reserved_0_63:64;
696 uint64_t reserved_0_63:64;
699 struct cvmx_pko_mem_debug5_cn30xx {
700 #ifdef __BIG_ENDIAN_BITFIELD
704 uint64_t dwri_cnt:13;
705 uint64_t cmnd_siz:16;
710 uint64_t reserved_27_27:1;
730 uint64_t reserved_27_27:1;
735 uint64_t cmnd_siz:16;
736 uint64_t dwri_cnt:13;
742 struct cvmx_pko_mem_debug5_cn30xx cn31xx;
743 struct cvmx_pko_mem_debug5_cn30xx cn38xx;
744 struct cvmx_pko_mem_debug5_cn30xx cn38xxp2;
745 struct cvmx_pko_mem_debug5_cn50xx {
746 #ifdef __BIG_ENDIAN_BITFIELD
747 uint64_t curr_ptr:29;
748 uint64_t curr_siz:16;
749 uint64_t curr_off:16;
750 uint64_t cmnd_segs:3;
752 uint64_t cmnd_segs:3;
753 uint64_t curr_off:16;
754 uint64_t curr_siz:16;
755 uint64_t curr_ptr:29;
758 struct cvmx_pko_mem_debug5_cn52xx {
759 #ifdef __BIG_ENDIAN_BITFIELD
760 uint64_t reserved_54_63:10;
761 uint64_t nxt_inflt:6;
762 uint64_t curr_ptr:40;
766 uint64_t curr_ptr:40;
767 uint64_t nxt_inflt:6;
768 uint64_t reserved_54_63:10;
771 struct cvmx_pko_mem_debug5_cn52xx cn52xxp1;
772 struct cvmx_pko_mem_debug5_cn52xx cn56xx;
773 struct cvmx_pko_mem_debug5_cn52xx cn56xxp1;
774 struct cvmx_pko_mem_debug5_cn50xx cn58xx;
775 struct cvmx_pko_mem_debug5_cn50xx cn58xxp1;
776 struct cvmx_pko_mem_debug5_cn61xx {
777 #ifdef __BIG_ENDIAN_BITFIELD
778 uint64_t reserved_56_63:8;
781 uint64_t nxt_inflt:6;
782 uint64_t curr_ptr:40;
786 uint64_t curr_ptr:40;
787 uint64_t nxt_inflt:6;
790 uint64_t reserved_56_63:8;
793 struct cvmx_pko_mem_debug5_cn61xx cn63xx;
794 struct cvmx_pko_mem_debug5_cn61xx cn63xxp1;
795 struct cvmx_pko_mem_debug5_cn61xx cn66xx;
796 struct cvmx_pko_mem_debug5_cn68xx {
797 #ifdef __BIG_ENDIAN_BITFIELD
798 uint64_t reserved_57_63:7;
802 uint64_t nxt_inflt:6;
803 uint64_t curr_ptr:40;
807 uint64_t curr_ptr:40;
808 uint64_t nxt_inflt:6;
812 uint64_t reserved_57_63:7;
815 struct cvmx_pko_mem_debug5_cn68xx cn68xxp1;
816 struct cvmx_pko_mem_debug5_cn61xx cnf71xx;
819 union cvmx_pko_mem_debug6 {
821 struct cvmx_pko_mem_debug6_s {
822 #ifdef __BIG_ENDIAN_BITFIELD
823 uint64_t reserved_37_63:27;
824 uint64_t qid_offres:4;
825 uint64_t qid_offths:4;
826 uint64_t preempter:1;
827 uint64_t preemptee:1;
828 uint64_t preempted:1;
833 uint64_t qid_offmax:4;
834 uint64_t reserved_0_11:12;
836 uint64_t reserved_0_11:12;
837 uint64_t qid_offmax:4;
842 uint64_t preempted:1;
843 uint64_t preemptee:1;
844 uint64_t preempter:1;
845 uint64_t qid_offths:4;
846 uint64_t qid_offres:4;
847 uint64_t reserved_37_63:27;
850 struct cvmx_pko_mem_debug6_cn30xx {
851 #ifdef __BIG_ENDIAN_BITFIELD
852 uint64_t reserved_11_63:53;
866 uint64_t reserved_11_63:53;
869 struct cvmx_pko_mem_debug6_cn30xx cn31xx;
870 struct cvmx_pko_mem_debug6_cn30xx cn38xx;
871 struct cvmx_pko_mem_debug6_cn30xx cn38xxp2;
872 struct cvmx_pko_mem_debug6_cn50xx {
873 #ifdef __BIG_ENDIAN_BITFIELD
874 uint64_t reserved_11_63:53;
875 uint64_t curr_ptr:11;
877 uint64_t curr_ptr:11;
878 uint64_t reserved_11_63:53;
881 struct cvmx_pko_mem_debug6_cn52xx {
882 #ifdef __BIG_ENDIAN_BITFIELD
883 uint64_t reserved_37_63:27;
884 uint64_t qid_offres:4;
885 uint64_t qid_offths:4;
886 uint64_t preempter:1;
887 uint64_t preemptee:1;
888 uint64_t preempted:1;
893 uint64_t qid_offmax:4;
899 uint64_t qid_offmax:4;
904 uint64_t preempted:1;
905 uint64_t preemptee:1;
906 uint64_t preempter:1;
907 uint64_t qid_offths:4;
908 uint64_t qid_offres:4;
909 uint64_t reserved_37_63:27;
912 struct cvmx_pko_mem_debug6_cn52xx cn52xxp1;
913 struct cvmx_pko_mem_debug6_cn52xx cn56xx;
914 struct cvmx_pko_mem_debug6_cn52xx cn56xxp1;
915 struct cvmx_pko_mem_debug6_cn50xx cn58xx;
916 struct cvmx_pko_mem_debug6_cn50xx cn58xxp1;
917 struct cvmx_pko_mem_debug6_cn52xx cn61xx;
918 struct cvmx_pko_mem_debug6_cn52xx cn63xx;
919 struct cvmx_pko_mem_debug6_cn52xx cn63xxp1;
920 struct cvmx_pko_mem_debug6_cn52xx cn66xx;
921 struct cvmx_pko_mem_debug6_cn52xx cn68xx;
922 struct cvmx_pko_mem_debug6_cn52xx cn68xxp1;
923 struct cvmx_pko_mem_debug6_cn52xx cnf71xx;
926 union cvmx_pko_mem_debug7 {
928 struct cvmx_pko_mem_debug7_s {
929 #ifdef __BIG_ENDIAN_BITFIELD
930 uint64_t reserved_0_63:64;
932 uint64_t reserved_0_63:64;
935 struct cvmx_pko_mem_debug7_cn30xx {
936 #ifdef __BIG_ENDIAN_BITFIELD
937 uint64_t reserved_58_63:6;
945 uint64_t reserved_58_63:6;
948 struct cvmx_pko_mem_debug7_cn30xx cn31xx;
949 struct cvmx_pko_mem_debug7_cn30xx cn38xx;
950 struct cvmx_pko_mem_debug7_cn30xx cn38xxp2;
951 struct cvmx_pko_mem_debug7_cn50xx {
952 #ifdef __BIG_ENDIAN_BITFIELD
968 struct cvmx_pko_mem_debug7_cn50xx cn52xx;
969 struct cvmx_pko_mem_debug7_cn50xx cn52xxp1;
970 struct cvmx_pko_mem_debug7_cn50xx cn56xx;
971 struct cvmx_pko_mem_debug7_cn50xx cn56xxp1;
972 struct cvmx_pko_mem_debug7_cn50xx cn58xx;
973 struct cvmx_pko_mem_debug7_cn50xx cn58xxp1;
974 struct cvmx_pko_mem_debug7_cn50xx cn61xx;
975 struct cvmx_pko_mem_debug7_cn50xx cn63xx;
976 struct cvmx_pko_mem_debug7_cn50xx cn63xxp1;
977 struct cvmx_pko_mem_debug7_cn50xx cn66xx;
978 struct cvmx_pko_mem_debug7_cn68xx {
979 #ifdef __BIG_ENDIAN_BITFIELD
995 struct cvmx_pko_mem_debug7_cn68xx cn68xxp1;
996 struct cvmx_pko_mem_debug7_cn50xx cnf71xx;
999 union cvmx_pko_mem_debug8 {
1001 struct cvmx_pko_mem_debug8_s {
1002 #ifdef __BIG_ENDIAN_BITFIELD
1003 uint64_t reserved_59_63:5;
1005 uint64_t buf_siz:13;
1006 uint64_t reserved_0_44:45;
1008 uint64_t reserved_0_44:45;
1009 uint64_t buf_siz:13;
1011 uint64_t reserved_59_63:5;
1014 struct cvmx_pko_mem_debug8_cn30xx {
1015 #ifdef __BIG_ENDIAN_BITFIELD
1018 uint64_t buf_siz:13;
1019 uint64_t buf_ptr:33;
1020 uint64_t qcb_widx:6;
1021 uint64_t qcb_ridx:6;
1023 uint64_t qcb_ridx:6;
1024 uint64_t qcb_widx:6;
1025 uint64_t buf_ptr:33;
1026 uint64_t buf_siz:13;
1031 struct cvmx_pko_mem_debug8_cn30xx cn31xx;
1032 struct cvmx_pko_mem_debug8_cn30xx cn38xx;
1033 struct cvmx_pko_mem_debug8_cn30xx cn38xxp2;
1034 struct cvmx_pko_mem_debug8_cn50xx {
1035 #ifdef __BIG_ENDIAN_BITFIELD
1036 uint64_t reserved_28_63:36;
1037 uint64_t doorbell:20;
1038 uint64_t reserved_6_7:2;
1039 uint64_t static_p:1;
1041 uint64_t static_q:1;
1045 uint64_t static_q:1;
1047 uint64_t static_p:1;
1048 uint64_t reserved_6_7:2;
1049 uint64_t doorbell:20;
1050 uint64_t reserved_28_63:36;
1053 struct cvmx_pko_mem_debug8_cn52xx {
1054 #ifdef __BIG_ENDIAN_BITFIELD
1055 uint64_t reserved_29_63:35;
1056 uint64_t preempter:1;
1057 uint64_t doorbell:20;
1058 uint64_t reserved_7_7:1;
1059 uint64_t preemptee:1;
1060 uint64_t static_p:1;
1062 uint64_t static_q:1;
1066 uint64_t static_q:1;
1068 uint64_t static_p:1;
1069 uint64_t preemptee:1;
1070 uint64_t reserved_7_7:1;
1071 uint64_t doorbell:20;
1072 uint64_t preempter:1;
1073 uint64_t reserved_29_63:35;
1076 struct cvmx_pko_mem_debug8_cn52xx cn52xxp1;
1077 struct cvmx_pko_mem_debug8_cn52xx cn56xx;
1078 struct cvmx_pko_mem_debug8_cn52xx cn56xxp1;
1079 struct cvmx_pko_mem_debug8_cn50xx cn58xx;
1080 struct cvmx_pko_mem_debug8_cn50xx cn58xxp1;
1081 struct cvmx_pko_mem_debug8_cn61xx {
1082 #ifdef __BIG_ENDIAN_BITFIELD
1083 uint64_t reserved_42_63:22;
1084 uint64_t qid_qqos:8;
1085 uint64_t reserved_33_33:1;
1087 uint64_t preempter:1;
1088 uint64_t doorbell:20;
1089 uint64_t reserved_7_7:1;
1090 uint64_t preemptee:1;
1091 uint64_t static_p:1;
1093 uint64_t static_q:1;
1097 uint64_t static_q:1;
1099 uint64_t static_p:1;
1100 uint64_t preemptee:1;
1101 uint64_t reserved_7_7:1;
1102 uint64_t doorbell:20;
1103 uint64_t preempter:1;
1105 uint64_t reserved_33_33:1;
1106 uint64_t qid_qqos:8;
1107 uint64_t reserved_42_63:22;
1110 struct cvmx_pko_mem_debug8_cn52xx cn63xx;
1111 struct cvmx_pko_mem_debug8_cn52xx cn63xxp1;
1112 struct cvmx_pko_mem_debug8_cn61xx cn66xx;
1113 struct cvmx_pko_mem_debug8_cn68xx {
1114 #ifdef __BIG_ENDIAN_BITFIELD
1115 uint64_t reserved_37_63:27;
1116 uint64_t preempter:1;
1117 uint64_t doorbell:20;
1118 uint64_t reserved_9_15:7;
1119 uint64_t preemptee:1;
1120 uint64_t static_p:1;
1122 uint64_t static_q:1;
1126 uint64_t static_q:1;
1128 uint64_t static_p:1;
1129 uint64_t preemptee:1;
1130 uint64_t reserved_9_15:7;
1131 uint64_t doorbell:20;
1132 uint64_t preempter:1;
1133 uint64_t reserved_37_63:27;
1136 struct cvmx_pko_mem_debug8_cn68xx cn68xxp1;
1137 struct cvmx_pko_mem_debug8_cn61xx cnf71xx;
1140 union cvmx_pko_mem_debug9 {
1142 struct cvmx_pko_mem_debug9_s {
1143 #ifdef __BIG_ENDIAN_BITFIELD
1144 uint64_t reserved_49_63:15;
1146 uint64_t reserved_0_31:32;
1148 uint64_t reserved_0_31:32;
1150 uint64_t reserved_49_63:15;
1153 struct cvmx_pko_mem_debug9_cn30xx {
1154 #ifdef __BIG_ENDIAN_BITFIELD
1155 uint64_t reserved_28_63:36;
1156 uint64_t doorbell:20;
1157 uint64_t reserved_5_7:3;
1159 uint64_t static_q:1;
1163 uint64_t static_q:1;
1165 uint64_t reserved_5_7:3;
1166 uint64_t doorbell:20;
1167 uint64_t reserved_28_63:36;
1170 struct cvmx_pko_mem_debug9_cn30xx cn31xx;
1171 struct cvmx_pko_mem_debug9_cn38xx {
1172 #ifdef __BIG_ENDIAN_BITFIELD
1173 uint64_t reserved_28_63:36;
1174 uint64_t doorbell:20;
1175 uint64_t reserved_6_7:2;
1176 uint64_t static_p:1;
1178 uint64_t static_q:1;
1182 uint64_t static_q:1;
1184 uint64_t static_p:1;
1185 uint64_t reserved_6_7:2;
1186 uint64_t doorbell:20;
1187 uint64_t reserved_28_63:36;
1190 struct cvmx_pko_mem_debug9_cn38xx cn38xxp2;
1191 struct cvmx_pko_mem_debug9_cn50xx {
1192 #ifdef __BIG_ENDIAN_BITFIELD
1193 uint64_t reserved_49_63:15;
1195 uint64_t reserved_17_31:15;
1199 uint64_t reserved_17_31:15;
1201 uint64_t reserved_49_63:15;
1204 struct cvmx_pko_mem_debug9_cn50xx cn52xx;
1205 struct cvmx_pko_mem_debug9_cn50xx cn52xxp1;
1206 struct cvmx_pko_mem_debug9_cn50xx cn56xx;
1207 struct cvmx_pko_mem_debug9_cn50xx cn56xxp1;
1208 struct cvmx_pko_mem_debug9_cn50xx cn58xx;
1209 struct cvmx_pko_mem_debug9_cn50xx cn58xxp1;
1210 struct cvmx_pko_mem_debug9_cn50xx cn61xx;
1211 struct cvmx_pko_mem_debug9_cn50xx cn63xx;
1212 struct cvmx_pko_mem_debug9_cn50xx cn63xxp1;
1213 struct cvmx_pko_mem_debug9_cn50xx cn66xx;
1214 struct cvmx_pko_mem_debug9_cn50xx cn68xx;
1215 struct cvmx_pko_mem_debug9_cn50xx cn68xxp1;
1216 struct cvmx_pko_mem_debug9_cn50xx cnf71xx;
1219 union cvmx_pko_mem_iport_ptrs {
1221 struct cvmx_pko_mem_iport_ptrs_s {
1222 #ifdef __BIG_ENDIAN_BITFIELD
1223 uint64_t reserved_63_63:1;
1225 uint64_t static_p:1;
1226 uint64_t qos_mask:8;
1228 uint64_t reserved_31_49:19;
1230 uint64_t reserved_21_23:3;
1232 uint64_t reserved_13_15:3;
1234 uint64_t reserved_7_7:1;
1238 uint64_t reserved_7_7:1;
1240 uint64_t reserved_13_15:3;
1242 uint64_t reserved_21_23:3;
1244 uint64_t reserved_31_49:19;
1246 uint64_t qos_mask:8;
1247 uint64_t static_p:1;
1249 uint64_t reserved_63_63:1;
1252 struct cvmx_pko_mem_iport_ptrs_s cn68xx;
1253 struct cvmx_pko_mem_iport_ptrs_s cn68xxp1;
1256 union cvmx_pko_mem_iport_qos {
1258 struct cvmx_pko_mem_iport_qos_s {
1259 #ifdef __BIG_ENDIAN_BITFIELD
1260 uint64_t reserved_61_63:3;
1261 uint64_t qos_mask:8;
1262 uint64_t reserved_13_52:40;
1264 uint64_t reserved_7_7:1;
1268 uint64_t reserved_7_7:1;
1270 uint64_t reserved_13_52:40;
1271 uint64_t qos_mask:8;
1272 uint64_t reserved_61_63:3;
1275 struct cvmx_pko_mem_iport_qos_s cn68xx;
1276 struct cvmx_pko_mem_iport_qos_s cn68xxp1;
1279 union cvmx_pko_mem_iqueue_ptrs {
1281 struct cvmx_pko_mem_iqueue_ptrs_s {
1282 #ifdef __BIG_ENDIAN_BITFIELD
1284 uint64_t static_p:1;
1285 uint64_t static_q:1;
1286 uint64_t qos_mask:8;
1287 uint64_t buf_ptr:31;
1290 uint64_t reserved_15_15:1;
1296 uint64_t reserved_15_15:1;
1299 uint64_t buf_ptr:31;
1300 uint64_t qos_mask:8;
1301 uint64_t static_q:1;
1302 uint64_t static_p:1;
1306 struct cvmx_pko_mem_iqueue_ptrs_s cn68xx;
1307 struct cvmx_pko_mem_iqueue_ptrs_s cn68xxp1;
1310 union cvmx_pko_mem_iqueue_qos {
1312 struct cvmx_pko_mem_iqueue_qos_s {
1313 #ifdef __BIG_ENDIAN_BITFIELD
1314 uint64_t reserved_61_63:3;
1315 uint64_t qos_mask:8;
1316 uint64_t reserved_15_52:38;
1322 uint64_t reserved_15_52:38;
1323 uint64_t qos_mask:8;
1324 uint64_t reserved_61_63:3;
1327 struct cvmx_pko_mem_iqueue_qos_s cn68xx;
1328 struct cvmx_pko_mem_iqueue_qos_s cn68xxp1;
1331 union cvmx_pko_mem_port_ptrs {
1333 struct cvmx_pko_mem_port_ptrs_s {
1334 #ifdef __BIG_ENDIAN_BITFIELD
1335 uint64_t reserved_62_63:2;
1336 uint64_t static_p:1;
1337 uint64_t qos_mask:8;
1338 uint64_t reserved_16_52:37;
1346 uint64_t reserved_16_52:37;
1347 uint64_t qos_mask:8;
1348 uint64_t static_p:1;
1349 uint64_t reserved_62_63:2;
1352 struct cvmx_pko_mem_port_ptrs_s cn52xx;
1353 struct cvmx_pko_mem_port_ptrs_s cn52xxp1;
1354 struct cvmx_pko_mem_port_ptrs_s cn56xx;
1355 struct cvmx_pko_mem_port_ptrs_s cn56xxp1;
1356 struct cvmx_pko_mem_port_ptrs_s cn61xx;
1357 struct cvmx_pko_mem_port_ptrs_s cn63xx;
1358 struct cvmx_pko_mem_port_ptrs_s cn63xxp1;
1359 struct cvmx_pko_mem_port_ptrs_s cn66xx;
1360 struct cvmx_pko_mem_port_ptrs_s cnf71xx;
1363 union cvmx_pko_mem_port_qos {
1365 struct cvmx_pko_mem_port_qos_s {
1366 #ifdef __BIG_ENDIAN_BITFIELD
1367 uint64_t reserved_61_63:3;
1368 uint64_t qos_mask:8;
1369 uint64_t reserved_10_52:43;
1375 uint64_t reserved_10_52:43;
1376 uint64_t qos_mask:8;
1377 uint64_t reserved_61_63:3;
1380 struct cvmx_pko_mem_port_qos_s cn52xx;
1381 struct cvmx_pko_mem_port_qos_s cn52xxp1;
1382 struct cvmx_pko_mem_port_qos_s cn56xx;
1383 struct cvmx_pko_mem_port_qos_s cn56xxp1;
1384 struct cvmx_pko_mem_port_qos_s cn61xx;
1385 struct cvmx_pko_mem_port_qos_s cn63xx;
1386 struct cvmx_pko_mem_port_qos_s cn63xxp1;
1387 struct cvmx_pko_mem_port_qos_s cn66xx;
1388 struct cvmx_pko_mem_port_qos_s cnf71xx;
1391 union cvmx_pko_mem_port_rate0 {
1393 struct cvmx_pko_mem_port_rate0_s {
1394 #ifdef __BIG_ENDIAN_BITFIELD
1395 uint64_t reserved_51_63:13;
1396 uint64_t rate_word:19;
1397 uint64_t rate_pkt:24;
1398 uint64_t reserved_7_7:1;
1402 uint64_t reserved_7_7:1;
1403 uint64_t rate_pkt:24;
1404 uint64_t rate_word:19;
1405 uint64_t reserved_51_63:13;
1408 struct cvmx_pko_mem_port_rate0_cn52xx {
1409 #ifdef __BIG_ENDIAN_BITFIELD
1410 uint64_t reserved_51_63:13;
1411 uint64_t rate_word:19;
1412 uint64_t rate_pkt:24;
1413 uint64_t reserved_6_7:2;
1417 uint64_t reserved_6_7:2;
1418 uint64_t rate_pkt:24;
1419 uint64_t rate_word:19;
1420 uint64_t reserved_51_63:13;
1423 struct cvmx_pko_mem_port_rate0_cn52xx cn52xxp1;
1424 struct cvmx_pko_mem_port_rate0_cn52xx cn56xx;
1425 struct cvmx_pko_mem_port_rate0_cn52xx cn56xxp1;
1426 struct cvmx_pko_mem_port_rate0_cn52xx cn61xx;
1427 struct cvmx_pko_mem_port_rate0_cn52xx cn63xx;
1428 struct cvmx_pko_mem_port_rate0_cn52xx cn63xxp1;
1429 struct cvmx_pko_mem_port_rate0_cn52xx cn66xx;
1430 struct cvmx_pko_mem_port_rate0_s cn68xx;
1431 struct cvmx_pko_mem_port_rate0_s cn68xxp1;
1432 struct cvmx_pko_mem_port_rate0_cn52xx cnf71xx;
1435 union cvmx_pko_mem_port_rate1 {
1437 struct cvmx_pko_mem_port_rate1_s {
1438 #ifdef __BIG_ENDIAN_BITFIELD
1439 uint64_t reserved_32_63:32;
1440 uint64_t rate_lim:24;
1441 uint64_t reserved_7_7:1;
1445 uint64_t reserved_7_7:1;
1446 uint64_t rate_lim:24;
1447 uint64_t reserved_32_63:32;
1450 struct cvmx_pko_mem_port_rate1_cn52xx {
1451 #ifdef __BIG_ENDIAN_BITFIELD
1452 uint64_t reserved_32_63:32;
1453 uint64_t rate_lim:24;
1454 uint64_t reserved_6_7:2;
1458 uint64_t reserved_6_7:2;
1459 uint64_t rate_lim:24;
1460 uint64_t reserved_32_63:32;
1463 struct cvmx_pko_mem_port_rate1_cn52xx cn52xxp1;
1464 struct cvmx_pko_mem_port_rate1_cn52xx cn56xx;
1465 struct cvmx_pko_mem_port_rate1_cn52xx cn56xxp1;
1466 struct cvmx_pko_mem_port_rate1_cn52xx cn61xx;
1467 struct cvmx_pko_mem_port_rate1_cn52xx cn63xx;
1468 struct cvmx_pko_mem_port_rate1_cn52xx cn63xxp1;
1469 struct cvmx_pko_mem_port_rate1_cn52xx cn66xx;
1470 struct cvmx_pko_mem_port_rate1_s cn68xx;
1471 struct cvmx_pko_mem_port_rate1_s cn68xxp1;
1472 struct cvmx_pko_mem_port_rate1_cn52xx cnf71xx;
1475 union cvmx_pko_mem_queue_ptrs {
1477 struct cvmx_pko_mem_queue_ptrs_s {
1478 #ifdef __BIG_ENDIAN_BITFIELD
1480 uint64_t static_p:1;
1481 uint64_t static_q:1;
1482 uint64_t qos_mask:8;
1483 uint64_t buf_ptr:36;
1493 uint64_t buf_ptr:36;
1494 uint64_t qos_mask:8;
1495 uint64_t static_q:1;
1496 uint64_t static_p:1;
1500 struct cvmx_pko_mem_queue_ptrs_s cn30xx;
1501 struct cvmx_pko_mem_queue_ptrs_s cn31xx;
1502 struct cvmx_pko_mem_queue_ptrs_s cn38xx;
1503 struct cvmx_pko_mem_queue_ptrs_s cn38xxp2;
1504 struct cvmx_pko_mem_queue_ptrs_s cn50xx;
1505 struct cvmx_pko_mem_queue_ptrs_s cn52xx;
1506 struct cvmx_pko_mem_queue_ptrs_s cn52xxp1;
1507 struct cvmx_pko_mem_queue_ptrs_s cn56xx;
1508 struct cvmx_pko_mem_queue_ptrs_s cn56xxp1;
1509 struct cvmx_pko_mem_queue_ptrs_s cn58xx;
1510 struct cvmx_pko_mem_queue_ptrs_s cn58xxp1;
1511 struct cvmx_pko_mem_queue_ptrs_s cn61xx;
1512 struct cvmx_pko_mem_queue_ptrs_s cn63xx;
1513 struct cvmx_pko_mem_queue_ptrs_s cn63xxp1;
1514 struct cvmx_pko_mem_queue_ptrs_s cn66xx;
1515 struct cvmx_pko_mem_queue_ptrs_s cnf71xx;
1518 union cvmx_pko_mem_queue_qos {
1520 struct cvmx_pko_mem_queue_qos_s {
1521 #ifdef __BIG_ENDIAN_BITFIELD
1522 uint64_t reserved_61_63:3;
1523 uint64_t qos_mask:8;
1524 uint64_t reserved_13_52:40;
1530 uint64_t reserved_13_52:40;
1531 uint64_t qos_mask:8;
1532 uint64_t reserved_61_63:3;
1535 struct cvmx_pko_mem_queue_qos_s cn30xx;
1536 struct cvmx_pko_mem_queue_qos_s cn31xx;
1537 struct cvmx_pko_mem_queue_qos_s cn38xx;
1538 struct cvmx_pko_mem_queue_qos_s cn38xxp2;
1539 struct cvmx_pko_mem_queue_qos_s cn50xx;
1540 struct cvmx_pko_mem_queue_qos_s cn52xx;
1541 struct cvmx_pko_mem_queue_qos_s cn52xxp1;
1542 struct cvmx_pko_mem_queue_qos_s cn56xx;
1543 struct cvmx_pko_mem_queue_qos_s cn56xxp1;
1544 struct cvmx_pko_mem_queue_qos_s cn58xx;
1545 struct cvmx_pko_mem_queue_qos_s cn58xxp1;
1546 struct cvmx_pko_mem_queue_qos_s cn61xx;
1547 struct cvmx_pko_mem_queue_qos_s cn63xx;
1548 struct cvmx_pko_mem_queue_qos_s cn63xxp1;
1549 struct cvmx_pko_mem_queue_qos_s cn66xx;
1550 struct cvmx_pko_mem_queue_qos_s cnf71xx;
1553 union cvmx_pko_mem_throttle_int {
1555 struct cvmx_pko_mem_throttle_int_s {
1556 #ifdef __BIG_ENDIAN_BITFIELD
1557 uint64_t reserved_47_63:17;
1559 uint64_t reserved_14_31:18;
1561 uint64_t reserved_5_7:3;
1565 uint64_t reserved_5_7:3;
1567 uint64_t reserved_14_31:18;
1569 uint64_t reserved_47_63:17;
1572 struct cvmx_pko_mem_throttle_int_s cn68xx;
1573 struct cvmx_pko_mem_throttle_int_s cn68xxp1;
1576 union cvmx_pko_mem_throttle_pipe {
1578 struct cvmx_pko_mem_throttle_pipe_s {
1579 #ifdef __BIG_ENDIAN_BITFIELD
1580 uint64_t reserved_47_63:17;
1582 uint64_t reserved_14_31:18;
1584 uint64_t reserved_7_7:1;
1588 uint64_t reserved_7_7:1;
1590 uint64_t reserved_14_31:18;
1592 uint64_t reserved_47_63:17;
1595 struct cvmx_pko_mem_throttle_pipe_s cn68xx;
1596 struct cvmx_pko_mem_throttle_pipe_s cn68xxp1;
1599 union cvmx_pko_reg_bist_result {
1601 struct cvmx_pko_reg_bist_result_s {
1602 #ifdef __BIG_ENDIAN_BITFIELD
1603 uint64_t reserved_0_63:64;
1605 uint64_t reserved_0_63:64;
1608 struct cvmx_pko_reg_bist_result_cn30xx {
1609 #ifdef __BIG_ENDIAN_BITFIELD
1610 uint64_t reserved_27_63:37;
1636 uint64_t reserved_27_63:37;
1639 struct cvmx_pko_reg_bist_result_cn30xx cn31xx;
1640 struct cvmx_pko_reg_bist_result_cn30xx cn38xx;
1641 struct cvmx_pko_reg_bist_result_cn30xx cn38xxp2;
1642 struct cvmx_pko_reg_bist_result_cn50xx {
1643 #ifdef __BIG_ENDIAN_BITFIELD
1644 uint64_t reserved_33_63:31;
1674 uint64_t reserved_33_63:31;
1677 struct cvmx_pko_reg_bist_result_cn52xx {
1678 #ifdef __BIG_ENDIAN_BITFIELD
1679 uint64_t reserved_35_63:29;
1711 uint64_t reserved_35_63:29;
1714 struct cvmx_pko_reg_bist_result_cn52xx cn52xxp1;
1715 struct cvmx_pko_reg_bist_result_cn52xx cn56xx;
1716 struct cvmx_pko_reg_bist_result_cn52xx cn56xxp1;
1717 struct cvmx_pko_reg_bist_result_cn50xx cn58xx;
1718 struct cvmx_pko_reg_bist_result_cn50xx cn58xxp1;
1719 struct cvmx_pko_reg_bist_result_cn52xx cn61xx;
1720 struct cvmx_pko_reg_bist_result_cn52xx cn63xx;
1721 struct cvmx_pko_reg_bist_result_cn52xx cn63xxp1;
1722 struct cvmx_pko_reg_bist_result_cn52xx cn66xx;
1723 struct cvmx_pko_reg_bist_result_cn68xx {
1724 #ifdef __BIG_ENDIAN_BITFIELD
1725 uint64_t reserved_36_63:28;
1730 uint64_t reserved_31_31:1;
1736 uint64_t prt_psb7:1;
1737 uint64_t reserved_21_21:1;
1753 uint64_t reserved_21_21:1;
1754 uint64_t prt_psb7:1;
1760 uint64_t reserved_31_31:1;
1765 uint64_t reserved_36_63:28;
1768 struct cvmx_pko_reg_bist_result_cn68xxp1 {
1769 #ifdef __BIG_ENDIAN_BITFIELD
1770 uint64_t reserved_35_63:29;
1774 uint64_t reserved_31_31:1;
1780 uint64_t prt_psb7:1;
1781 uint64_t reserved_21_21:1;
1797 uint64_t reserved_21_21:1;
1798 uint64_t prt_psb7:1;
1804 uint64_t reserved_31_31:1;
1808 uint64_t reserved_35_63:29;
1811 struct cvmx_pko_reg_bist_result_cn52xx cnf71xx;
1814 union cvmx_pko_reg_cmd_buf {
1816 struct cvmx_pko_reg_cmd_buf_s {
1817 #ifdef __BIG_ENDIAN_BITFIELD
1818 uint64_t reserved_23_63:41;
1820 uint64_t reserved_13_19:7;
1824 uint64_t reserved_13_19:7;
1826 uint64_t reserved_23_63:41;
1829 struct cvmx_pko_reg_cmd_buf_s cn30xx;
1830 struct cvmx_pko_reg_cmd_buf_s cn31xx;
1831 struct cvmx_pko_reg_cmd_buf_s cn38xx;
1832 struct cvmx_pko_reg_cmd_buf_s cn38xxp2;
1833 struct cvmx_pko_reg_cmd_buf_s cn50xx;
1834 struct cvmx_pko_reg_cmd_buf_s cn52xx;
1835 struct cvmx_pko_reg_cmd_buf_s cn52xxp1;
1836 struct cvmx_pko_reg_cmd_buf_s cn56xx;
1837 struct cvmx_pko_reg_cmd_buf_s cn56xxp1;
1838 struct cvmx_pko_reg_cmd_buf_s cn58xx;
1839 struct cvmx_pko_reg_cmd_buf_s cn58xxp1;
1840 struct cvmx_pko_reg_cmd_buf_s cn61xx;
1841 struct cvmx_pko_reg_cmd_buf_s cn63xx;
1842 struct cvmx_pko_reg_cmd_buf_s cn63xxp1;
1843 struct cvmx_pko_reg_cmd_buf_s cn66xx;
1844 struct cvmx_pko_reg_cmd_buf_s cn68xx;
1845 struct cvmx_pko_reg_cmd_buf_s cn68xxp1;
1846 struct cvmx_pko_reg_cmd_buf_s cnf71xx;
1849 union cvmx_pko_reg_crc_ctlx {
1851 struct cvmx_pko_reg_crc_ctlx_s {
1852 #ifdef __BIG_ENDIAN_BITFIELD
1853 uint64_t reserved_2_63:62;
1859 uint64_t reserved_2_63:62;
1862 struct cvmx_pko_reg_crc_ctlx_s cn38xx;
1863 struct cvmx_pko_reg_crc_ctlx_s cn38xxp2;
1864 struct cvmx_pko_reg_crc_ctlx_s cn58xx;
1865 struct cvmx_pko_reg_crc_ctlx_s cn58xxp1;
1868 union cvmx_pko_reg_crc_enable {
1870 struct cvmx_pko_reg_crc_enable_s {
1871 #ifdef __BIG_ENDIAN_BITFIELD
1872 uint64_t reserved_32_63:32;
1876 uint64_t reserved_32_63:32;
1879 struct cvmx_pko_reg_crc_enable_s cn38xx;
1880 struct cvmx_pko_reg_crc_enable_s cn38xxp2;
1881 struct cvmx_pko_reg_crc_enable_s cn58xx;
1882 struct cvmx_pko_reg_crc_enable_s cn58xxp1;
1885 union cvmx_pko_reg_crc_ivx {
1887 struct cvmx_pko_reg_crc_ivx_s {
1888 #ifdef __BIG_ENDIAN_BITFIELD
1889 uint64_t reserved_32_63:32;
1893 uint64_t reserved_32_63:32;
1896 struct cvmx_pko_reg_crc_ivx_s cn38xx;
1897 struct cvmx_pko_reg_crc_ivx_s cn38xxp2;
1898 struct cvmx_pko_reg_crc_ivx_s cn58xx;
1899 struct cvmx_pko_reg_crc_ivx_s cn58xxp1;
1902 union cvmx_pko_reg_debug0 {
1904 struct cvmx_pko_reg_debug0_s {
1905 #ifdef __BIG_ENDIAN_BITFIELD
1906 uint64_t asserts:64;
1908 uint64_t asserts:64;
1911 struct cvmx_pko_reg_debug0_cn30xx {
1912 #ifdef __BIG_ENDIAN_BITFIELD
1913 uint64_t reserved_17_63:47;
1914 uint64_t asserts:17;
1916 uint64_t asserts:17;
1917 uint64_t reserved_17_63:47;
1920 struct cvmx_pko_reg_debug0_cn30xx cn31xx;
1921 struct cvmx_pko_reg_debug0_cn30xx cn38xx;
1922 struct cvmx_pko_reg_debug0_cn30xx cn38xxp2;
1923 struct cvmx_pko_reg_debug0_s cn50xx;
1924 struct cvmx_pko_reg_debug0_s cn52xx;
1925 struct cvmx_pko_reg_debug0_s cn52xxp1;
1926 struct cvmx_pko_reg_debug0_s cn56xx;
1927 struct cvmx_pko_reg_debug0_s cn56xxp1;
1928 struct cvmx_pko_reg_debug0_s cn58xx;
1929 struct cvmx_pko_reg_debug0_s cn58xxp1;
1930 struct cvmx_pko_reg_debug0_s cn61xx;
1931 struct cvmx_pko_reg_debug0_s cn63xx;
1932 struct cvmx_pko_reg_debug0_s cn63xxp1;
1933 struct cvmx_pko_reg_debug0_s cn66xx;
1934 struct cvmx_pko_reg_debug0_s cn68xx;
1935 struct cvmx_pko_reg_debug0_s cn68xxp1;
1936 struct cvmx_pko_reg_debug0_s cnf71xx;
1939 union cvmx_pko_reg_debug1 {
1941 struct cvmx_pko_reg_debug1_s {
1942 #ifdef __BIG_ENDIAN_BITFIELD
1943 uint64_t asserts:64;
1945 uint64_t asserts:64;
1948 struct cvmx_pko_reg_debug1_s cn50xx;
1949 struct cvmx_pko_reg_debug1_s cn52xx;
1950 struct cvmx_pko_reg_debug1_s cn52xxp1;
1951 struct cvmx_pko_reg_debug1_s cn56xx;
1952 struct cvmx_pko_reg_debug1_s cn56xxp1;
1953 struct cvmx_pko_reg_debug1_s cn58xx;
1954 struct cvmx_pko_reg_debug1_s cn58xxp1;
1955 struct cvmx_pko_reg_debug1_s cn61xx;
1956 struct cvmx_pko_reg_debug1_s cn63xx;
1957 struct cvmx_pko_reg_debug1_s cn63xxp1;
1958 struct cvmx_pko_reg_debug1_s cn66xx;
1959 struct cvmx_pko_reg_debug1_s cn68xx;
1960 struct cvmx_pko_reg_debug1_s cn68xxp1;
1961 struct cvmx_pko_reg_debug1_s cnf71xx;
1964 union cvmx_pko_reg_debug2 {
1966 struct cvmx_pko_reg_debug2_s {
1967 #ifdef __BIG_ENDIAN_BITFIELD
1968 uint64_t asserts:64;
1970 uint64_t asserts:64;
1973 struct cvmx_pko_reg_debug2_s cn50xx;
1974 struct cvmx_pko_reg_debug2_s cn52xx;
1975 struct cvmx_pko_reg_debug2_s cn52xxp1;
1976 struct cvmx_pko_reg_debug2_s cn56xx;
1977 struct cvmx_pko_reg_debug2_s cn56xxp1;
1978 struct cvmx_pko_reg_debug2_s cn58xx;
1979 struct cvmx_pko_reg_debug2_s cn58xxp1;
1980 struct cvmx_pko_reg_debug2_s cn61xx;
1981 struct cvmx_pko_reg_debug2_s cn63xx;
1982 struct cvmx_pko_reg_debug2_s cn63xxp1;
1983 struct cvmx_pko_reg_debug2_s cn66xx;
1984 struct cvmx_pko_reg_debug2_s cn68xx;
1985 struct cvmx_pko_reg_debug2_s cn68xxp1;
1986 struct cvmx_pko_reg_debug2_s cnf71xx;
1989 union cvmx_pko_reg_debug3 {
1991 struct cvmx_pko_reg_debug3_s {
1992 #ifdef __BIG_ENDIAN_BITFIELD
1993 uint64_t asserts:64;
1995 uint64_t asserts:64;
1998 struct cvmx_pko_reg_debug3_s cn50xx;
1999 struct cvmx_pko_reg_debug3_s cn52xx;
2000 struct cvmx_pko_reg_debug3_s cn52xxp1;
2001 struct cvmx_pko_reg_debug3_s cn56xx;
2002 struct cvmx_pko_reg_debug3_s cn56xxp1;
2003 struct cvmx_pko_reg_debug3_s cn58xx;
2004 struct cvmx_pko_reg_debug3_s cn58xxp1;
2005 struct cvmx_pko_reg_debug3_s cn61xx;
2006 struct cvmx_pko_reg_debug3_s cn63xx;
2007 struct cvmx_pko_reg_debug3_s cn63xxp1;
2008 struct cvmx_pko_reg_debug3_s cn66xx;
2009 struct cvmx_pko_reg_debug3_s cn68xx;
2010 struct cvmx_pko_reg_debug3_s cn68xxp1;
2011 struct cvmx_pko_reg_debug3_s cnf71xx;
2014 union cvmx_pko_reg_debug4 {
2016 struct cvmx_pko_reg_debug4_s {
2017 #ifdef __BIG_ENDIAN_BITFIELD
2018 uint64_t asserts:64;
2020 uint64_t asserts:64;
2023 struct cvmx_pko_reg_debug4_s cn68xx;
2024 struct cvmx_pko_reg_debug4_s cn68xxp1;
2027 union cvmx_pko_reg_engine_inflight {
2029 struct cvmx_pko_reg_engine_inflight_s {
2030 #ifdef __BIG_ENDIAN_BITFIELD
2031 uint64_t engine15:4;
2032 uint64_t engine14:4;
2033 uint64_t engine13:4;
2034 uint64_t engine12:4;
2035 uint64_t engine11:4;
2036 uint64_t engine10:4;
2058 uint64_t engine10:4;
2059 uint64_t engine11:4;
2060 uint64_t engine12:4;
2061 uint64_t engine13:4;
2062 uint64_t engine14:4;
2063 uint64_t engine15:4;
2066 struct cvmx_pko_reg_engine_inflight_cn52xx {
2067 #ifdef __BIG_ENDIAN_BITFIELD
2068 uint64_t reserved_40_63:24;
2090 uint64_t reserved_40_63:24;
2093 struct cvmx_pko_reg_engine_inflight_cn52xx cn52xxp1;
2094 struct cvmx_pko_reg_engine_inflight_cn52xx cn56xx;
2095 struct cvmx_pko_reg_engine_inflight_cn52xx cn56xxp1;
2096 struct cvmx_pko_reg_engine_inflight_cn61xx {
2097 #ifdef __BIG_ENDIAN_BITFIELD
2098 uint64_t reserved_56_63:8;
2099 uint64_t engine13:4;
2100 uint64_t engine12:4;
2101 uint64_t engine11:4;
2102 uint64_t engine10:4;
2124 uint64_t engine10:4;
2125 uint64_t engine11:4;
2126 uint64_t engine12:4;
2127 uint64_t engine13:4;
2128 uint64_t reserved_56_63:8;
2131 struct cvmx_pko_reg_engine_inflight_cn63xx {
2132 #ifdef __BIG_ENDIAN_BITFIELD
2133 uint64_t reserved_48_63:16;
2134 uint64_t engine11:4;
2135 uint64_t engine10:4;
2157 uint64_t engine10:4;
2158 uint64_t engine11:4;
2159 uint64_t reserved_48_63:16;
2162 struct cvmx_pko_reg_engine_inflight_cn63xx cn63xxp1;
2163 struct cvmx_pko_reg_engine_inflight_cn61xx cn66xx;
2164 struct cvmx_pko_reg_engine_inflight_s cn68xx;
2165 struct cvmx_pko_reg_engine_inflight_s cn68xxp1;
2166 struct cvmx_pko_reg_engine_inflight_cn61xx cnf71xx;
2169 union cvmx_pko_reg_engine_inflight1 {
2171 struct cvmx_pko_reg_engine_inflight1_s {
2172 #ifdef __BIG_ENDIAN_BITFIELD
2173 uint64_t reserved_16_63:48;
2174 uint64_t engine19:4;
2175 uint64_t engine18:4;
2176 uint64_t engine17:4;
2177 uint64_t engine16:4;
2179 uint64_t engine16:4;
2180 uint64_t engine17:4;
2181 uint64_t engine18:4;
2182 uint64_t engine19:4;
2183 uint64_t reserved_16_63:48;
2186 struct cvmx_pko_reg_engine_inflight1_s cn68xx;
2187 struct cvmx_pko_reg_engine_inflight1_s cn68xxp1;
2190 union cvmx_pko_reg_engine_storagex {
2192 struct cvmx_pko_reg_engine_storagex_s {
2193 #ifdef __BIG_ENDIAN_BITFIELD
2194 uint64_t engine15:4;
2195 uint64_t engine14:4;
2196 uint64_t engine13:4;
2197 uint64_t engine12:4;
2198 uint64_t engine11:4;
2199 uint64_t engine10:4;
2221 uint64_t engine10:4;
2222 uint64_t engine11:4;
2223 uint64_t engine12:4;
2224 uint64_t engine13:4;
2225 uint64_t engine14:4;
2226 uint64_t engine15:4;
2229 struct cvmx_pko_reg_engine_storagex_s cn68xx;
2230 struct cvmx_pko_reg_engine_storagex_s cn68xxp1;
2233 union cvmx_pko_reg_engine_thresh {
2235 struct cvmx_pko_reg_engine_thresh_s {
2236 #ifdef __BIG_ENDIAN_BITFIELD
2237 uint64_t reserved_20_63:44;
2241 uint64_t reserved_20_63:44;
2244 struct cvmx_pko_reg_engine_thresh_cn52xx {
2245 #ifdef __BIG_ENDIAN_BITFIELD
2246 uint64_t reserved_10_63:54;
2250 uint64_t reserved_10_63:54;
2253 struct cvmx_pko_reg_engine_thresh_cn52xx cn52xxp1;
2254 struct cvmx_pko_reg_engine_thresh_cn52xx cn56xx;
2255 struct cvmx_pko_reg_engine_thresh_cn52xx cn56xxp1;
2256 struct cvmx_pko_reg_engine_thresh_cn61xx {
2257 #ifdef __BIG_ENDIAN_BITFIELD
2258 uint64_t reserved_14_63:50;
2262 uint64_t reserved_14_63:50;
2265 struct cvmx_pko_reg_engine_thresh_cn63xx {
2266 #ifdef __BIG_ENDIAN_BITFIELD
2267 uint64_t reserved_12_63:52;
2271 uint64_t reserved_12_63:52;
2274 struct cvmx_pko_reg_engine_thresh_cn63xx cn63xxp1;
2275 struct cvmx_pko_reg_engine_thresh_cn61xx cn66xx;
2276 struct cvmx_pko_reg_engine_thresh_s cn68xx;
2277 struct cvmx_pko_reg_engine_thresh_s cn68xxp1;
2278 struct cvmx_pko_reg_engine_thresh_cn61xx cnf71xx;
2281 union cvmx_pko_reg_error {
2283 struct cvmx_pko_reg_error_s {
2284 #ifdef __BIG_ENDIAN_BITFIELD
2285 uint64_t reserved_4_63:60;
2286 uint64_t loopback:1;
2287 uint64_t currzero:1;
2288 uint64_t doorbell:1;
2292 uint64_t doorbell:1;
2293 uint64_t currzero:1;
2294 uint64_t loopback:1;
2295 uint64_t reserved_4_63:60;
2298 struct cvmx_pko_reg_error_cn30xx {
2299 #ifdef __BIG_ENDIAN_BITFIELD
2300 uint64_t reserved_2_63:62;
2301 uint64_t doorbell:1;
2305 uint64_t doorbell:1;
2306 uint64_t reserved_2_63:62;
2309 struct cvmx_pko_reg_error_cn30xx cn31xx;
2310 struct cvmx_pko_reg_error_cn30xx cn38xx;
2311 struct cvmx_pko_reg_error_cn30xx cn38xxp2;
2312 struct cvmx_pko_reg_error_cn50xx {
2313 #ifdef __BIG_ENDIAN_BITFIELD
2314 uint64_t reserved_3_63:61;
2315 uint64_t currzero:1;
2316 uint64_t doorbell:1;
2320 uint64_t doorbell:1;
2321 uint64_t currzero:1;
2322 uint64_t reserved_3_63:61;
2325 struct cvmx_pko_reg_error_cn50xx cn52xx;
2326 struct cvmx_pko_reg_error_cn50xx cn52xxp1;
2327 struct cvmx_pko_reg_error_cn50xx cn56xx;
2328 struct cvmx_pko_reg_error_cn50xx cn56xxp1;
2329 struct cvmx_pko_reg_error_cn50xx cn58xx;
2330 struct cvmx_pko_reg_error_cn50xx cn58xxp1;
2331 struct cvmx_pko_reg_error_cn50xx cn61xx;
2332 struct cvmx_pko_reg_error_cn50xx cn63xx;
2333 struct cvmx_pko_reg_error_cn50xx cn63xxp1;
2334 struct cvmx_pko_reg_error_cn50xx cn66xx;
2335 struct cvmx_pko_reg_error_s cn68xx;
2336 struct cvmx_pko_reg_error_s cn68xxp1;
2337 struct cvmx_pko_reg_error_cn50xx cnf71xx;
2340 union cvmx_pko_reg_flags {
2342 struct cvmx_pko_reg_flags_s {
2343 #ifdef __BIG_ENDIAN_BITFIELD
2344 uint64_t reserved_9_63:55;
2345 uint64_t dis_perf3:1;
2346 uint64_t dis_perf2:1;
2347 uint64_t dis_perf1:1;
2348 uint64_t dis_perf0:1;
2349 uint64_t ena_throttle:1;
2351 uint64_t store_be:1;
2357 uint64_t store_be:1;
2359 uint64_t ena_throttle:1;
2360 uint64_t dis_perf0:1;
2361 uint64_t dis_perf1:1;
2362 uint64_t dis_perf2:1;
2363 uint64_t dis_perf3:1;
2364 uint64_t reserved_9_63:55;
2367 struct cvmx_pko_reg_flags_cn30xx {
2368 #ifdef __BIG_ENDIAN_BITFIELD
2369 uint64_t reserved_4_63:60;
2371 uint64_t store_be:1;
2377 uint64_t store_be:1;
2379 uint64_t reserved_4_63:60;
2382 struct cvmx_pko_reg_flags_cn30xx cn31xx;
2383 struct cvmx_pko_reg_flags_cn30xx cn38xx;
2384 struct cvmx_pko_reg_flags_cn30xx cn38xxp2;
2385 struct cvmx_pko_reg_flags_cn30xx cn50xx;
2386 struct cvmx_pko_reg_flags_cn30xx cn52xx;
2387 struct cvmx_pko_reg_flags_cn30xx cn52xxp1;
2388 struct cvmx_pko_reg_flags_cn30xx cn56xx;
2389 struct cvmx_pko_reg_flags_cn30xx cn56xxp1;
2390 struct cvmx_pko_reg_flags_cn30xx cn58xx;
2391 struct cvmx_pko_reg_flags_cn30xx cn58xxp1;
2392 struct cvmx_pko_reg_flags_cn61xx {
2393 #ifdef __BIG_ENDIAN_BITFIELD
2394 uint64_t reserved_9_63:55;
2395 uint64_t dis_perf3:1;
2396 uint64_t dis_perf2:1;
2397 uint64_t reserved_4_6:3;
2399 uint64_t store_be:1;
2405 uint64_t store_be:1;
2407 uint64_t reserved_4_6:3;
2408 uint64_t dis_perf2:1;
2409 uint64_t dis_perf3:1;
2410 uint64_t reserved_9_63:55;
2413 struct cvmx_pko_reg_flags_cn30xx cn63xx;
2414 struct cvmx_pko_reg_flags_cn30xx cn63xxp1;
2415 struct cvmx_pko_reg_flags_cn61xx cn66xx;
2416 struct cvmx_pko_reg_flags_s cn68xx;
2417 struct cvmx_pko_reg_flags_cn68xxp1 {
2418 #ifdef __BIG_ENDIAN_BITFIELD
2419 uint64_t reserved_7_63:57;
2420 uint64_t dis_perf1:1;
2421 uint64_t dis_perf0:1;
2422 uint64_t ena_throttle:1;
2424 uint64_t store_be:1;
2430 uint64_t store_be:1;
2432 uint64_t ena_throttle:1;
2433 uint64_t dis_perf0:1;
2434 uint64_t dis_perf1:1;
2435 uint64_t reserved_7_63:57;
2438 struct cvmx_pko_reg_flags_cn61xx cnf71xx;
2441 union cvmx_pko_reg_gmx_port_mode {
2443 struct cvmx_pko_reg_gmx_port_mode_s {
2444 #ifdef __BIG_ENDIAN_BITFIELD
2445 uint64_t reserved_6_63:58;
2451 uint64_t reserved_6_63:58;
2454 struct cvmx_pko_reg_gmx_port_mode_s cn30xx;
2455 struct cvmx_pko_reg_gmx_port_mode_s cn31xx;
2456 struct cvmx_pko_reg_gmx_port_mode_s cn38xx;
2457 struct cvmx_pko_reg_gmx_port_mode_s cn38xxp2;
2458 struct cvmx_pko_reg_gmx_port_mode_s cn50xx;
2459 struct cvmx_pko_reg_gmx_port_mode_s cn52xx;
2460 struct cvmx_pko_reg_gmx_port_mode_s cn52xxp1;
2461 struct cvmx_pko_reg_gmx_port_mode_s cn56xx;
2462 struct cvmx_pko_reg_gmx_port_mode_s cn56xxp1;
2463 struct cvmx_pko_reg_gmx_port_mode_s cn58xx;
2464 struct cvmx_pko_reg_gmx_port_mode_s cn58xxp1;
2465 struct cvmx_pko_reg_gmx_port_mode_s cn61xx;
2466 struct cvmx_pko_reg_gmx_port_mode_s cn63xx;
2467 struct cvmx_pko_reg_gmx_port_mode_s cn63xxp1;
2468 struct cvmx_pko_reg_gmx_port_mode_s cn66xx;
2469 struct cvmx_pko_reg_gmx_port_mode_s cnf71xx;
2472 union cvmx_pko_reg_int_mask {
2474 struct cvmx_pko_reg_int_mask_s {
2475 #ifdef __BIG_ENDIAN_BITFIELD
2476 uint64_t reserved_4_63:60;
2477 uint64_t loopback:1;
2478 uint64_t currzero:1;
2479 uint64_t doorbell:1;
2483 uint64_t doorbell:1;
2484 uint64_t currzero:1;
2485 uint64_t loopback:1;
2486 uint64_t reserved_4_63:60;
2489 struct cvmx_pko_reg_int_mask_cn30xx {
2490 #ifdef __BIG_ENDIAN_BITFIELD
2491 uint64_t reserved_2_63:62;
2492 uint64_t doorbell:1;
2496 uint64_t doorbell:1;
2497 uint64_t reserved_2_63:62;
2500 struct cvmx_pko_reg_int_mask_cn30xx cn31xx;
2501 struct cvmx_pko_reg_int_mask_cn30xx cn38xx;
2502 struct cvmx_pko_reg_int_mask_cn30xx cn38xxp2;
2503 struct cvmx_pko_reg_int_mask_cn50xx {
2504 #ifdef __BIG_ENDIAN_BITFIELD
2505 uint64_t reserved_3_63:61;
2506 uint64_t currzero:1;
2507 uint64_t doorbell:1;
2511 uint64_t doorbell:1;
2512 uint64_t currzero:1;
2513 uint64_t reserved_3_63:61;
2516 struct cvmx_pko_reg_int_mask_cn50xx cn52xx;
2517 struct cvmx_pko_reg_int_mask_cn50xx cn52xxp1;
2518 struct cvmx_pko_reg_int_mask_cn50xx cn56xx;
2519 struct cvmx_pko_reg_int_mask_cn50xx cn56xxp1;
2520 struct cvmx_pko_reg_int_mask_cn50xx cn58xx;
2521 struct cvmx_pko_reg_int_mask_cn50xx cn58xxp1;
2522 struct cvmx_pko_reg_int_mask_cn50xx cn61xx;
2523 struct cvmx_pko_reg_int_mask_cn50xx cn63xx;
2524 struct cvmx_pko_reg_int_mask_cn50xx cn63xxp1;
2525 struct cvmx_pko_reg_int_mask_cn50xx cn66xx;
2526 struct cvmx_pko_reg_int_mask_s cn68xx;
2527 struct cvmx_pko_reg_int_mask_s cn68xxp1;
2528 struct cvmx_pko_reg_int_mask_cn50xx cnf71xx;
2531 union cvmx_pko_reg_loopback_bpid {
2533 struct cvmx_pko_reg_loopback_bpid_s {
2534 #ifdef __BIG_ENDIAN_BITFIELD
2535 uint64_t reserved_59_63:5;
2537 uint64_t reserved_52_52:1;
2539 uint64_t reserved_45_45:1;
2541 uint64_t reserved_38_38:1;
2543 uint64_t reserved_31_31:1;
2545 uint64_t reserved_24_24:1;
2547 uint64_t reserved_17_17:1;
2549 uint64_t reserved_10_10:1;
2551 uint64_t reserved_0_3:4;
2553 uint64_t reserved_0_3:4;
2555 uint64_t reserved_10_10:1;
2557 uint64_t reserved_17_17:1;
2559 uint64_t reserved_24_24:1;
2561 uint64_t reserved_31_31:1;
2563 uint64_t reserved_38_38:1;
2565 uint64_t reserved_45_45:1;
2567 uint64_t reserved_52_52:1;
2569 uint64_t reserved_59_63:5;
2572 struct cvmx_pko_reg_loopback_bpid_s cn68xx;
2573 struct cvmx_pko_reg_loopback_bpid_s cn68xxp1;
2576 union cvmx_pko_reg_loopback_pkind {
2578 struct cvmx_pko_reg_loopback_pkind_s {
2579 #ifdef __BIG_ENDIAN_BITFIELD
2580 uint64_t reserved_59_63:5;
2582 uint64_t reserved_52_52:1;
2584 uint64_t reserved_45_45:1;
2586 uint64_t reserved_38_38:1;
2588 uint64_t reserved_31_31:1;
2590 uint64_t reserved_24_24:1;
2592 uint64_t reserved_17_17:1;
2594 uint64_t reserved_10_10:1;
2596 uint64_t num_ports:4;
2598 uint64_t num_ports:4;
2600 uint64_t reserved_10_10:1;
2602 uint64_t reserved_17_17:1;
2604 uint64_t reserved_24_24:1;
2606 uint64_t reserved_31_31:1;
2608 uint64_t reserved_38_38:1;
2610 uint64_t reserved_45_45:1;
2612 uint64_t reserved_52_52:1;
2614 uint64_t reserved_59_63:5;
2617 struct cvmx_pko_reg_loopback_pkind_s cn68xx;
2618 struct cvmx_pko_reg_loopback_pkind_s cn68xxp1;
2621 union cvmx_pko_reg_min_pkt {
2623 struct cvmx_pko_reg_min_pkt_s {
2624 #ifdef __BIG_ENDIAN_BITFIELD
2644 struct cvmx_pko_reg_min_pkt_s cn68xx;
2645 struct cvmx_pko_reg_min_pkt_s cn68xxp1;
2648 union cvmx_pko_reg_preempt {
2650 struct cvmx_pko_reg_preempt_s {
2651 #ifdef __BIG_ENDIAN_BITFIELD
2652 uint64_t reserved_16_63:48;
2653 uint64_t min_size:16;
2655 uint64_t min_size:16;
2656 uint64_t reserved_16_63:48;
2659 struct cvmx_pko_reg_preempt_s cn52xx;
2660 struct cvmx_pko_reg_preempt_s cn52xxp1;
2661 struct cvmx_pko_reg_preempt_s cn56xx;
2662 struct cvmx_pko_reg_preempt_s cn56xxp1;
2663 struct cvmx_pko_reg_preempt_s cn61xx;
2664 struct cvmx_pko_reg_preempt_s cn63xx;
2665 struct cvmx_pko_reg_preempt_s cn63xxp1;
2666 struct cvmx_pko_reg_preempt_s cn66xx;
2667 struct cvmx_pko_reg_preempt_s cn68xx;
2668 struct cvmx_pko_reg_preempt_s cn68xxp1;
2669 struct cvmx_pko_reg_preempt_s cnf71xx;
2672 union cvmx_pko_reg_queue_mode {
2674 struct cvmx_pko_reg_queue_mode_s {
2675 #ifdef __BIG_ENDIAN_BITFIELD
2676 uint64_t reserved_2_63:62;
2680 uint64_t reserved_2_63:62;
2683 struct cvmx_pko_reg_queue_mode_s cn30xx;
2684 struct cvmx_pko_reg_queue_mode_s cn31xx;
2685 struct cvmx_pko_reg_queue_mode_s cn38xx;
2686 struct cvmx_pko_reg_queue_mode_s cn38xxp2;
2687 struct cvmx_pko_reg_queue_mode_s cn50xx;
2688 struct cvmx_pko_reg_queue_mode_s cn52xx;
2689 struct cvmx_pko_reg_queue_mode_s cn52xxp1;
2690 struct cvmx_pko_reg_queue_mode_s cn56xx;
2691 struct cvmx_pko_reg_queue_mode_s cn56xxp1;
2692 struct cvmx_pko_reg_queue_mode_s cn58xx;
2693 struct cvmx_pko_reg_queue_mode_s cn58xxp1;
2694 struct cvmx_pko_reg_queue_mode_s cn61xx;
2695 struct cvmx_pko_reg_queue_mode_s cn63xx;
2696 struct cvmx_pko_reg_queue_mode_s cn63xxp1;
2697 struct cvmx_pko_reg_queue_mode_s cn66xx;
2698 struct cvmx_pko_reg_queue_mode_s cn68xx;
2699 struct cvmx_pko_reg_queue_mode_s cn68xxp1;
2700 struct cvmx_pko_reg_queue_mode_s cnf71xx;
2703 union cvmx_pko_reg_queue_preempt {
2705 struct cvmx_pko_reg_queue_preempt_s {
2706 #ifdef __BIG_ENDIAN_BITFIELD
2707 uint64_t reserved_2_63:62;
2708 uint64_t preemptee:1;
2709 uint64_t preempter:1;
2711 uint64_t preempter:1;
2712 uint64_t preemptee:1;
2713 uint64_t reserved_2_63:62;
2716 struct cvmx_pko_reg_queue_preempt_s cn52xx;
2717 struct cvmx_pko_reg_queue_preempt_s cn52xxp1;
2718 struct cvmx_pko_reg_queue_preempt_s cn56xx;
2719 struct cvmx_pko_reg_queue_preempt_s cn56xxp1;
2720 struct cvmx_pko_reg_queue_preempt_s cn61xx;
2721 struct cvmx_pko_reg_queue_preempt_s cn63xx;
2722 struct cvmx_pko_reg_queue_preempt_s cn63xxp1;
2723 struct cvmx_pko_reg_queue_preempt_s cn66xx;
2724 struct cvmx_pko_reg_queue_preempt_s cn68xx;
2725 struct cvmx_pko_reg_queue_preempt_s cn68xxp1;
2726 struct cvmx_pko_reg_queue_preempt_s cnf71xx;
2729 union cvmx_pko_reg_queue_ptrs1 {
2731 struct cvmx_pko_reg_queue_ptrs1_s {
2732 #ifdef __BIG_ENDIAN_BITFIELD
2733 uint64_t reserved_2_63:62;
2739 uint64_t reserved_2_63:62;
2742 struct cvmx_pko_reg_queue_ptrs1_s cn50xx;
2743 struct cvmx_pko_reg_queue_ptrs1_s cn52xx;
2744 struct cvmx_pko_reg_queue_ptrs1_s cn52xxp1;
2745 struct cvmx_pko_reg_queue_ptrs1_s cn56xx;
2746 struct cvmx_pko_reg_queue_ptrs1_s cn56xxp1;
2747 struct cvmx_pko_reg_queue_ptrs1_s cn58xx;
2748 struct cvmx_pko_reg_queue_ptrs1_s cn58xxp1;
2749 struct cvmx_pko_reg_queue_ptrs1_s cn61xx;
2750 struct cvmx_pko_reg_queue_ptrs1_s cn63xx;
2751 struct cvmx_pko_reg_queue_ptrs1_s cn63xxp1;
2752 struct cvmx_pko_reg_queue_ptrs1_s cn66xx;
2753 struct cvmx_pko_reg_queue_ptrs1_s cnf71xx;
2756 union cvmx_pko_reg_read_idx {
2758 struct cvmx_pko_reg_read_idx_s {
2759 #ifdef __BIG_ENDIAN_BITFIELD
2760 uint64_t reserved_16_63:48;
2766 uint64_t reserved_16_63:48;
2769 struct cvmx_pko_reg_read_idx_s cn30xx;
2770 struct cvmx_pko_reg_read_idx_s cn31xx;
2771 struct cvmx_pko_reg_read_idx_s cn38xx;
2772 struct cvmx_pko_reg_read_idx_s cn38xxp2;
2773 struct cvmx_pko_reg_read_idx_s cn50xx;
2774 struct cvmx_pko_reg_read_idx_s cn52xx;
2775 struct cvmx_pko_reg_read_idx_s cn52xxp1;
2776 struct cvmx_pko_reg_read_idx_s cn56xx;
2777 struct cvmx_pko_reg_read_idx_s cn56xxp1;
2778 struct cvmx_pko_reg_read_idx_s cn58xx;
2779 struct cvmx_pko_reg_read_idx_s cn58xxp1;
2780 struct cvmx_pko_reg_read_idx_s cn61xx;
2781 struct cvmx_pko_reg_read_idx_s cn63xx;
2782 struct cvmx_pko_reg_read_idx_s cn63xxp1;
2783 struct cvmx_pko_reg_read_idx_s cn66xx;
2784 struct cvmx_pko_reg_read_idx_s cn68xx;
2785 struct cvmx_pko_reg_read_idx_s cn68xxp1;
2786 struct cvmx_pko_reg_read_idx_s cnf71xx;
2789 union cvmx_pko_reg_throttle {
2791 struct cvmx_pko_reg_throttle_s {
2792 #ifdef __BIG_ENDIAN_BITFIELD
2793 uint64_t reserved_32_63:32;
2794 uint64_t int_mask:32;
2796 uint64_t int_mask:32;
2797 uint64_t reserved_32_63:32;
2800 struct cvmx_pko_reg_throttle_s cn68xx;
2801 struct cvmx_pko_reg_throttle_s cn68xxp1;
2804 union cvmx_pko_reg_timestamp {
2806 struct cvmx_pko_reg_timestamp_s {
2807 #ifdef __BIG_ENDIAN_BITFIELD
2808 uint64_t reserved_4_63:60;
2809 uint64_t wqe_word:4;
2811 uint64_t wqe_word:4;
2812 uint64_t reserved_4_63:60;
2815 struct cvmx_pko_reg_timestamp_s cn61xx;
2816 struct cvmx_pko_reg_timestamp_s cn63xx;
2817 struct cvmx_pko_reg_timestamp_s cn63xxp1;
2818 struct cvmx_pko_reg_timestamp_s cn66xx;
2819 struct cvmx_pko_reg_timestamp_s cn68xx;
2820 struct cvmx_pko_reg_timestamp_s cn68xxp1;
2821 struct cvmx_pko_reg_timestamp_s cnf71xx;