treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / arch / mips / include / asm / octeon / cvmx-pko-defs.h
blob7e14c0d328f1f3f27aa7cb6bf4159fce0df423a4
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
17 * details.
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 {
90 uint64_t u64;
91 struct cvmx_pko_mem_count0_s {
92 #ifdef __BIG_ENDIAN_BITFIELD
93 uint64_t reserved_32_63:32;
94 uint64_t count:32;
95 #else
96 uint64_t count:32;
97 uint64_t reserved_32_63:32;
98 #endif
99 } s;
102 union cvmx_pko_mem_count1 {
103 uint64_t u64;
104 struct cvmx_pko_mem_count1_s {
105 #ifdef __BIG_ENDIAN_BITFIELD
106 uint64_t reserved_48_63:16;
107 uint64_t count:48;
108 #else
109 uint64_t count:48;
110 uint64_t reserved_48_63:16;
111 #endif
112 } s;
115 union cvmx_pko_mem_debug0 {
116 uint64_t u64;
117 struct cvmx_pko_mem_debug0_s {
118 #ifdef __BIG_ENDIAN_BITFIELD
119 uint64_t fau:28;
120 uint64_t cmd:14;
121 uint64_t segs:6;
122 uint64_t size:16;
123 #else
124 uint64_t size:16;
125 uint64_t segs:6;
126 uint64_t cmd:14;
127 uint64_t fau:28;
128 #endif
129 } s;
132 union cvmx_pko_mem_debug1 {
133 uint64_t u64;
134 struct cvmx_pko_mem_debug1_s {
135 #ifdef __BIG_ENDIAN_BITFIELD
136 uint64_t i:1;
137 uint64_t back:4;
138 uint64_t pool:3;
139 uint64_t size:16;
140 uint64_t ptr:40;
141 #else
142 uint64_t ptr:40;
143 uint64_t size:16;
144 uint64_t pool:3;
145 uint64_t back:4;
146 uint64_t i:1;
147 #endif
148 } s;
151 union cvmx_pko_mem_debug10 {
152 uint64_t u64;
153 struct cvmx_pko_mem_debug10_s {
154 #ifdef __BIG_ENDIAN_BITFIELD
155 uint64_t reserved_0_63:64;
156 #else
157 uint64_t reserved_0_63:64;
158 #endif
159 } s;
160 struct cvmx_pko_mem_debug10_cn30xx {
161 #ifdef __BIG_ENDIAN_BITFIELD
162 uint64_t fau:28;
163 uint64_t cmd:14;
164 uint64_t segs:6;
165 uint64_t size:16;
166 #else
167 uint64_t size:16;
168 uint64_t segs:6;
169 uint64_t cmd:14;
170 uint64_t fau:28;
171 #endif
172 } cn30xx;
173 struct cvmx_pko_mem_debug10_cn50xx {
174 #ifdef __BIG_ENDIAN_BITFIELD
175 uint64_t reserved_49_63:15;
176 uint64_t ptrs1:17;
177 uint64_t reserved_17_31:15;
178 uint64_t ptrs2:17;
179 #else
180 uint64_t ptrs2:17;
181 uint64_t reserved_17_31:15;
182 uint64_t ptrs1:17;
183 uint64_t reserved_49_63:15;
184 #endif
185 } cn50xx;
188 union cvmx_pko_mem_debug11 {
189 uint64_t u64;
190 struct cvmx_pko_mem_debug11_s {
191 #ifdef __BIG_ENDIAN_BITFIELD
192 uint64_t i:1;
193 uint64_t back:4;
194 uint64_t pool:3;
195 uint64_t size:16;
196 uint64_t reserved_0_39:40;
197 #else
198 uint64_t reserved_0_39:40;
199 uint64_t size:16;
200 uint64_t pool:3;
201 uint64_t back:4;
202 uint64_t i:1;
203 #endif
204 } s;
205 struct cvmx_pko_mem_debug11_cn30xx {
206 #ifdef __BIG_ENDIAN_BITFIELD
207 uint64_t i:1;
208 uint64_t back:4;
209 uint64_t pool:3;
210 uint64_t size:16;
211 uint64_t ptr:40;
212 #else
213 uint64_t ptr:40;
214 uint64_t size:16;
215 uint64_t pool:3;
216 uint64_t back:4;
217 uint64_t i:1;
218 #endif
219 } cn30xx;
220 struct cvmx_pko_mem_debug11_cn50xx {
221 #ifdef __BIG_ENDIAN_BITFIELD
222 uint64_t reserved_23_63:41;
223 uint64_t maj:1;
224 uint64_t uid:3;
225 uint64_t sop:1;
226 uint64_t len:1;
227 uint64_t chk:1;
228 uint64_t cnt:13;
229 uint64_t mod:3;
230 #else
231 uint64_t mod:3;
232 uint64_t cnt:13;
233 uint64_t chk:1;
234 uint64_t len:1;
235 uint64_t sop:1;
236 uint64_t uid:3;
237 uint64_t maj:1;
238 uint64_t reserved_23_63:41;
239 #endif
240 } cn50xx;
243 union cvmx_pko_mem_debug12 {
244 uint64_t u64;
245 struct cvmx_pko_mem_debug12_s {
246 #ifdef __BIG_ENDIAN_BITFIELD
247 uint64_t reserved_0_63:64;
248 #else
249 uint64_t reserved_0_63:64;
250 #endif
251 } s;
252 struct cvmx_pko_mem_debug12_cn30xx {
253 #ifdef __BIG_ENDIAN_BITFIELD
254 uint64_t data:64;
255 #else
256 uint64_t data:64;
257 #endif
258 } cn30xx;
259 struct cvmx_pko_mem_debug12_cn50xx {
260 #ifdef __BIG_ENDIAN_BITFIELD
261 uint64_t fau:28;
262 uint64_t cmd:14;
263 uint64_t segs:6;
264 uint64_t size:16;
265 #else
266 uint64_t size:16;
267 uint64_t segs:6;
268 uint64_t cmd:14;
269 uint64_t fau:28;
270 #endif
271 } cn50xx;
272 struct cvmx_pko_mem_debug12_cn68xx {
273 #ifdef __BIG_ENDIAN_BITFIELD
274 uint64_t state:64;
275 #else
276 uint64_t state:64;
277 #endif
278 } cn68xx;
281 union cvmx_pko_mem_debug13 {
282 uint64_t u64;
283 struct cvmx_pko_mem_debug13_s {
284 #ifdef __BIG_ENDIAN_BITFIELD
285 uint64_t reserved_0_63:64;
286 #else
287 uint64_t reserved_0_63:64;
288 #endif
289 } s;
290 struct cvmx_pko_mem_debug13_cn30xx {
291 #ifdef __BIG_ENDIAN_BITFIELD
292 uint64_t reserved_51_63:13;
293 uint64_t widx:17;
294 uint64_t ridx2:17;
295 uint64_t widx2:17;
296 #else
297 uint64_t widx2:17;
298 uint64_t ridx2:17;
299 uint64_t widx:17;
300 uint64_t reserved_51_63:13;
301 #endif
302 } cn30xx;
303 struct cvmx_pko_mem_debug13_cn50xx {
304 #ifdef __BIG_ENDIAN_BITFIELD
305 uint64_t i:1;
306 uint64_t back:4;
307 uint64_t pool:3;
308 uint64_t size:16;
309 uint64_t ptr:40;
310 #else
311 uint64_t ptr:40;
312 uint64_t size:16;
313 uint64_t pool:3;
314 uint64_t back:4;
315 uint64_t i:1;
316 #endif
317 } cn50xx;
318 struct cvmx_pko_mem_debug13_cn68xx {
319 #ifdef __BIG_ENDIAN_BITFIELD
320 uint64_t state:64;
321 #else
322 uint64_t state:64;
323 #endif
324 } cn68xx;
327 union cvmx_pko_mem_debug14 {
328 uint64_t u64;
329 struct cvmx_pko_mem_debug14_s {
330 #ifdef __BIG_ENDIAN_BITFIELD
331 uint64_t reserved_0_63:64;
332 #else
333 uint64_t reserved_0_63:64;
334 #endif
335 } s;
336 struct cvmx_pko_mem_debug14_cn30xx {
337 #ifdef __BIG_ENDIAN_BITFIELD
338 uint64_t reserved_17_63:47;
339 uint64_t ridx:17;
340 #else
341 uint64_t ridx:17;
342 uint64_t reserved_17_63:47;
343 #endif
344 } cn30xx;
345 struct cvmx_pko_mem_debug14_cn52xx {
346 #ifdef __BIG_ENDIAN_BITFIELD
347 uint64_t data:64;
348 #else
349 uint64_t data:64;
350 #endif
351 } cn52xx;
354 union cvmx_pko_mem_debug2 {
355 uint64_t u64;
356 struct cvmx_pko_mem_debug2_s {
357 #ifdef __BIG_ENDIAN_BITFIELD
358 uint64_t i:1;
359 uint64_t back:4;
360 uint64_t pool:3;
361 uint64_t size:16;
362 uint64_t ptr:40;
363 #else
364 uint64_t ptr:40;
365 uint64_t size:16;
366 uint64_t pool:3;
367 uint64_t back:4;
368 uint64_t i:1;
369 #endif
370 } s;
373 union cvmx_pko_mem_debug3 {
374 uint64_t u64;
375 struct cvmx_pko_mem_debug3_s {
376 #ifdef __BIG_ENDIAN_BITFIELD
377 uint64_t reserved_0_63:64;
378 #else
379 uint64_t reserved_0_63:64;
380 #endif
381 } s;
382 struct cvmx_pko_mem_debug3_cn30xx {
383 #ifdef __BIG_ENDIAN_BITFIELD
384 uint64_t i:1;
385 uint64_t back:4;
386 uint64_t pool:3;
387 uint64_t size:16;
388 uint64_t ptr:40;
389 #else
390 uint64_t ptr:40;
391 uint64_t size:16;
392 uint64_t pool:3;
393 uint64_t back:4;
394 uint64_t i:1;
395 #endif
396 } cn30xx;
397 struct cvmx_pko_mem_debug3_cn50xx {
398 #ifdef __BIG_ENDIAN_BITFIELD
399 uint64_t data:64;
400 #else
401 uint64_t data:64;
402 #endif
403 } cn50xx;
406 union cvmx_pko_mem_debug4 {
407 uint64_t u64;
408 struct cvmx_pko_mem_debug4_s {
409 #ifdef __BIG_ENDIAN_BITFIELD
410 uint64_t reserved_0_63:64;
411 #else
412 uint64_t reserved_0_63:64;
413 #endif
414 } s;
415 struct cvmx_pko_mem_debug4_cn30xx {
416 #ifdef __BIG_ENDIAN_BITFIELD
417 uint64_t data:64;
418 #else
419 uint64_t data:64;
420 #endif
421 } cn30xx;
422 struct cvmx_pko_mem_debug4_cn50xx {
423 #ifdef __BIG_ENDIAN_BITFIELD
424 uint64_t cmnd_segs:3;
425 uint64_t cmnd_siz:16;
426 uint64_t cmnd_off:6;
427 uint64_t uid:3;
428 uint64_t dread_sop:1;
429 uint64_t init_dwrite:1;
430 uint64_t chk_once:1;
431 uint64_t chk_mode:1;
432 uint64_t active:1;
433 uint64_t static_p:1;
434 uint64_t qos:3;
435 uint64_t qcb_ridx:5;
436 uint64_t qid_off_max:4;
437 uint64_t qid_off:4;
438 uint64_t qid_base:8;
439 uint64_t wait:1;
440 uint64_t minor:2;
441 uint64_t major:3;
442 #else
443 uint64_t major:3;
444 uint64_t minor:2;
445 uint64_t wait:1;
446 uint64_t qid_base:8;
447 uint64_t qid_off:4;
448 uint64_t qid_off_max:4;
449 uint64_t qcb_ridx:5;
450 uint64_t qos:3;
451 uint64_t static_p:1;
452 uint64_t active:1;
453 uint64_t chk_mode:1;
454 uint64_t chk_once:1;
455 uint64_t init_dwrite:1;
456 uint64_t dread_sop:1;
457 uint64_t uid:3;
458 uint64_t cmnd_off:6;
459 uint64_t cmnd_siz:16;
460 uint64_t cmnd_segs:3;
461 #endif
462 } cn50xx;
463 struct cvmx_pko_mem_debug4_cn52xx {
464 #ifdef __BIG_ENDIAN_BITFIELD
465 uint64_t curr_siz:8;
466 uint64_t curr_off:16;
467 uint64_t cmnd_segs:6;
468 uint64_t cmnd_siz:16;
469 uint64_t cmnd_off:6;
470 uint64_t uid:2;
471 uint64_t dread_sop:1;
472 uint64_t init_dwrite:1;
473 uint64_t chk_once:1;
474 uint64_t chk_mode:1;
475 uint64_t wait:1;
476 uint64_t minor:2;
477 uint64_t major:3;
478 #else
479 uint64_t major:3;
480 uint64_t minor:2;
481 uint64_t wait:1;
482 uint64_t chk_mode:1;
483 uint64_t chk_once:1;
484 uint64_t init_dwrite:1;
485 uint64_t dread_sop:1;
486 uint64_t uid:2;
487 uint64_t cmnd_off:6;
488 uint64_t cmnd_siz:16;
489 uint64_t cmnd_segs:6;
490 uint64_t curr_off:16;
491 uint64_t curr_siz:8;
492 #endif
493 } cn52xx;
496 union cvmx_pko_mem_debug5 {
497 uint64_t u64;
498 struct cvmx_pko_mem_debug5_s {
499 #ifdef __BIG_ENDIAN_BITFIELD
500 uint64_t reserved_0_63:64;
501 #else
502 uint64_t reserved_0_63:64;
503 #endif
504 } s;
505 struct cvmx_pko_mem_debug5_cn30xx {
506 #ifdef __BIG_ENDIAN_BITFIELD
507 uint64_t dwri_mod:1;
508 uint64_t dwri_sop:1;
509 uint64_t dwri_len:1;
510 uint64_t dwri_cnt:13;
511 uint64_t cmnd_siz:16;
512 uint64_t uid:1;
513 uint64_t xfer_wor:1;
514 uint64_t xfer_dwr:1;
515 uint64_t cbuf_fre:1;
516 uint64_t reserved_27_27:1;
517 uint64_t chk_mode:1;
518 uint64_t active:1;
519 uint64_t qos:3;
520 uint64_t qcb_ridx:5;
521 uint64_t qid_off:3;
522 uint64_t qid_base:7;
523 uint64_t wait:1;
524 uint64_t minor:2;
525 uint64_t major:4;
526 #else
527 uint64_t major:4;
528 uint64_t minor:2;
529 uint64_t wait:1;
530 uint64_t qid_base:7;
531 uint64_t qid_off:3;
532 uint64_t qcb_ridx:5;
533 uint64_t qos:3;
534 uint64_t active:1;
535 uint64_t chk_mode:1;
536 uint64_t reserved_27_27:1;
537 uint64_t cbuf_fre:1;
538 uint64_t xfer_dwr:1;
539 uint64_t xfer_wor:1;
540 uint64_t uid:1;
541 uint64_t cmnd_siz:16;
542 uint64_t dwri_cnt:13;
543 uint64_t dwri_len:1;
544 uint64_t dwri_sop:1;
545 uint64_t dwri_mod:1;
546 #endif
547 } cn30xx;
548 struct cvmx_pko_mem_debug5_cn50xx {
549 #ifdef __BIG_ENDIAN_BITFIELD
550 uint64_t curr_ptr:29;
551 uint64_t curr_siz:16;
552 uint64_t curr_off:16;
553 uint64_t cmnd_segs:3;
554 #else
555 uint64_t cmnd_segs:3;
556 uint64_t curr_off:16;
557 uint64_t curr_siz:16;
558 uint64_t curr_ptr:29;
559 #endif
560 } cn50xx;
561 struct cvmx_pko_mem_debug5_cn52xx {
562 #ifdef __BIG_ENDIAN_BITFIELD
563 uint64_t reserved_54_63:10;
564 uint64_t nxt_inflt:6;
565 uint64_t curr_ptr:40;
566 uint64_t curr_siz:8;
567 #else
568 uint64_t curr_siz:8;
569 uint64_t curr_ptr:40;
570 uint64_t nxt_inflt:6;
571 uint64_t reserved_54_63:10;
572 #endif
573 } cn52xx;
574 struct cvmx_pko_mem_debug5_cn61xx {
575 #ifdef __BIG_ENDIAN_BITFIELD
576 uint64_t reserved_56_63:8;
577 uint64_t ptp:1;
578 uint64_t major_3:1;
579 uint64_t nxt_inflt:6;
580 uint64_t curr_ptr:40;
581 uint64_t curr_siz:8;
582 #else
583 uint64_t curr_siz:8;
584 uint64_t curr_ptr:40;
585 uint64_t nxt_inflt:6;
586 uint64_t major_3:1;
587 uint64_t ptp:1;
588 uint64_t reserved_56_63:8;
589 #endif
590 } cn61xx;
591 struct cvmx_pko_mem_debug5_cn68xx {
592 #ifdef __BIG_ENDIAN_BITFIELD
593 uint64_t reserved_57_63:7;
594 uint64_t uid_2:1;
595 uint64_t ptp:1;
596 uint64_t major_3:1;
597 uint64_t nxt_inflt:6;
598 uint64_t curr_ptr:40;
599 uint64_t curr_siz:8;
600 #else
601 uint64_t curr_siz:8;
602 uint64_t curr_ptr:40;
603 uint64_t nxt_inflt:6;
604 uint64_t major_3:1;
605 uint64_t ptp:1;
606 uint64_t uid_2:1;
607 uint64_t reserved_57_63:7;
608 #endif
609 } cn68xx;
612 union cvmx_pko_mem_debug6 {
613 uint64_t u64;
614 struct cvmx_pko_mem_debug6_s {
615 #ifdef __BIG_ENDIAN_BITFIELD
616 uint64_t reserved_37_63:27;
617 uint64_t qid_offres:4;
618 uint64_t qid_offths:4;
619 uint64_t preempter:1;
620 uint64_t preemptee:1;
621 uint64_t preempted:1;
622 uint64_t active:1;
623 uint64_t statc:1;
624 uint64_t qos:3;
625 uint64_t qcb_ridx:5;
626 uint64_t qid_offmax:4;
627 uint64_t reserved_0_11:12;
628 #else
629 uint64_t reserved_0_11:12;
630 uint64_t qid_offmax:4;
631 uint64_t qcb_ridx:5;
632 uint64_t qos:3;
633 uint64_t statc:1;
634 uint64_t active:1;
635 uint64_t preempted:1;
636 uint64_t preemptee:1;
637 uint64_t preempter:1;
638 uint64_t qid_offths:4;
639 uint64_t qid_offres:4;
640 uint64_t reserved_37_63:27;
641 #endif
642 } s;
643 struct cvmx_pko_mem_debug6_cn30xx {
644 #ifdef __BIG_ENDIAN_BITFIELD
645 uint64_t reserved_11_63:53;
646 uint64_t qid_offm:3;
647 uint64_t static_p:1;
648 uint64_t work_min:3;
649 uint64_t dwri_chk:1;
650 uint64_t dwri_uid:1;
651 uint64_t dwri_mod:2;
652 #else
653 uint64_t dwri_mod:2;
654 uint64_t dwri_uid:1;
655 uint64_t dwri_chk:1;
656 uint64_t work_min:3;
657 uint64_t static_p:1;
658 uint64_t qid_offm:3;
659 uint64_t reserved_11_63:53;
660 #endif
661 } cn30xx;
662 struct cvmx_pko_mem_debug6_cn50xx {
663 #ifdef __BIG_ENDIAN_BITFIELD
664 uint64_t reserved_11_63:53;
665 uint64_t curr_ptr:11;
666 #else
667 uint64_t curr_ptr:11;
668 uint64_t reserved_11_63:53;
669 #endif
670 } cn50xx;
671 struct cvmx_pko_mem_debug6_cn52xx {
672 #ifdef __BIG_ENDIAN_BITFIELD
673 uint64_t reserved_37_63:27;
674 uint64_t qid_offres:4;
675 uint64_t qid_offths:4;
676 uint64_t preempter:1;
677 uint64_t preemptee:1;
678 uint64_t preempted:1;
679 uint64_t active:1;
680 uint64_t statc:1;
681 uint64_t qos:3;
682 uint64_t qcb_ridx:5;
683 uint64_t qid_offmax:4;
684 uint64_t qid_off:4;
685 uint64_t qid_base:8;
686 #else
687 uint64_t qid_base:8;
688 uint64_t qid_off:4;
689 uint64_t qid_offmax:4;
690 uint64_t qcb_ridx:5;
691 uint64_t qos:3;
692 uint64_t statc:1;
693 uint64_t active:1;
694 uint64_t preempted:1;
695 uint64_t preemptee:1;
696 uint64_t preempter:1;
697 uint64_t qid_offths:4;
698 uint64_t qid_offres:4;
699 uint64_t reserved_37_63:27;
700 #endif
701 } cn52xx;
704 union cvmx_pko_mem_debug7 {
705 uint64_t u64;
706 struct cvmx_pko_mem_debug7_s {
707 #ifdef __BIG_ENDIAN_BITFIELD
708 uint64_t reserved_0_63:64;
709 #else
710 uint64_t reserved_0_63:64;
711 #endif
712 } s;
713 struct cvmx_pko_mem_debug7_cn30xx {
714 #ifdef __BIG_ENDIAN_BITFIELD
715 uint64_t reserved_58_63:6;
716 uint64_t dwb:9;
717 uint64_t start:33;
718 uint64_t size:16;
719 #else
720 uint64_t size:16;
721 uint64_t start:33;
722 uint64_t dwb:9;
723 uint64_t reserved_58_63:6;
724 #endif
725 } cn30xx;
726 struct cvmx_pko_mem_debug7_cn50xx {
727 #ifdef __BIG_ENDIAN_BITFIELD
728 uint64_t qos:5;
729 uint64_t tail:1;
730 uint64_t buf_siz:13;
731 uint64_t buf_ptr:33;
732 uint64_t qcb_widx:6;
733 uint64_t qcb_ridx:6;
734 #else
735 uint64_t qcb_ridx:6;
736 uint64_t qcb_widx:6;
737 uint64_t buf_ptr:33;
738 uint64_t buf_siz:13;
739 uint64_t tail:1;
740 uint64_t qos:5;
741 #endif
742 } cn50xx;
743 struct cvmx_pko_mem_debug7_cn68xx {
744 #ifdef __BIG_ENDIAN_BITFIELD
745 uint64_t qos:3;
746 uint64_t tail:1;
747 uint64_t buf_siz:13;
748 uint64_t buf_ptr:33;
749 uint64_t qcb_widx:7;
750 uint64_t qcb_ridx:7;
751 #else
752 uint64_t qcb_ridx:7;
753 uint64_t qcb_widx:7;
754 uint64_t buf_ptr:33;
755 uint64_t buf_siz:13;
756 uint64_t tail:1;
757 uint64_t qos:3;
758 #endif
759 } cn68xx;
762 union cvmx_pko_mem_debug8 {
763 uint64_t u64;
764 struct cvmx_pko_mem_debug8_s {
765 #ifdef __BIG_ENDIAN_BITFIELD
766 uint64_t reserved_59_63:5;
767 uint64_t tail:1;
768 uint64_t buf_siz:13;
769 uint64_t reserved_0_44:45;
770 #else
771 uint64_t reserved_0_44:45;
772 uint64_t buf_siz:13;
773 uint64_t tail:1;
774 uint64_t reserved_59_63:5;
775 #endif
776 } s;
777 struct cvmx_pko_mem_debug8_cn30xx {
778 #ifdef __BIG_ENDIAN_BITFIELD
779 uint64_t qos:5;
780 uint64_t tail:1;
781 uint64_t buf_siz:13;
782 uint64_t buf_ptr:33;
783 uint64_t qcb_widx:6;
784 uint64_t qcb_ridx:6;
785 #else
786 uint64_t qcb_ridx:6;
787 uint64_t qcb_widx:6;
788 uint64_t buf_ptr:33;
789 uint64_t buf_siz:13;
790 uint64_t tail:1;
791 uint64_t qos:5;
792 #endif
793 } cn30xx;
794 struct cvmx_pko_mem_debug8_cn50xx {
795 #ifdef __BIG_ENDIAN_BITFIELD
796 uint64_t reserved_28_63:36;
797 uint64_t doorbell:20;
798 uint64_t reserved_6_7:2;
799 uint64_t static_p:1;
800 uint64_t s_tail:1;
801 uint64_t static_q:1;
802 uint64_t qos:3;
803 #else
804 uint64_t qos:3;
805 uint64_t static_q:1;
806 uint64_t s_tail:1;
807 uint64_t static_p:1;
808 uint64_t reserved_6_7:2;
809 uint64_t doorbell:20;
810 uint64_t reserved_28_63:36;
811 #endif
812 } cn50xx;
813 struct cvmx_pko_mem_debug8_cn52xx {
814 #ifdef __BIG_ENDIAN_BITFIELD
815 uint64_t reserved_29_63:35;
816 uint64_t preempter:1;
817 uint64_t doorbell:20;
818 uint64_t reserved_7_7:1;
819 uint64_t preemptee:1;
820 uint64_t static_p:1;
821 uint64_t s_tail:1;
822 uint64_t static_q:1;
823 uint64_t qos:3;
824 #else
825 uint64_t qos:3;
826 uint64_t static_q:1;
827 uint64_t s_tail:1;
828 uint64_t static_p:1;
829 uint64_t preemptee:1;
830 uint64_t reserved_7_7:1;
831 uint64_t doorbell:20;
832 uint64_t preempter:1;
833 uint64_t reserved_29_63:35;
834 #endif
835 } cn52xx;
836 struct cvmx_pko_mem_debug8_cn61xx {
837 #ifdef __BIG_ENDIAN_BITFIELD
838 uint64_t reserved_42_63:22;
839 uint64_t qid_qqos:8;
840 uint64_t reserved_33_33:1;
841 uint64_t qid_idx:4;
842 uint64_t preempter:1;
843 uint64_t doorbell:20;
844 uint64_t reserved_7_7:1;
845 uint64_t preemptee:1;
846 uint64_t static_p:1;
847 uint64_t s_tail:1;
848 uint64_t static_q:1;
849 uint64_t qos:3;
850 #else
851 uint64_t qos:3;
852 uint64_t static_q:1;
853 uint64_t s_tail:1;
854 uint64_t static_p:1;
855 uint64_t preemptee:1;
856 uint64_t reserved_7_7:1;
857 uint64_t doorbell:20;
858 uint64_t preempter:1;
859 uint64_t qid_idx:4;
860 uint64_t reserved_33_33:1;
861 uint64_t qid_qqos:8;
862 uint64_t reserved_42_63:22;
863 #endif
864 } cn61xx;
865 struct cvmx_pko_mem_debug8_cn68xx {
866 #ifdef __BIG_ENDIAN_BITFIELD
867 uint64_t reserved_37_63:27;
868 uint64_t preempter:1;
869 uint64_t doorbell:20;
870 uint64_t reserved_9_15:7;
871 uint64_t preemptee:1;
872 uint64_t static_p:1;
873 uint64_t s_tail:1;
874 uint64_t static_q:1;
875 uint64_t qos:5;
876 #else
877 uint64_t qos:5;
878 uint64_t static_q:1;
879 uint64_t s_tail:1;
880 uint64_t static_p:1;
881 uint64_t preemptee:1;
882 uint64_t reserved_9_15:7;
883 uint64_t doorbell:20;
884 uint64_t preempter:1;
885 uint64_t reserved_37_63:27;
886 #endif
887 } cn68xx;
890 union cvmx_pko_mem_debug9 {
891 uint64_t u64;
892 struct cvmx_pko_mem_debug9_s {
893 #ifdef __BIG_ENDIAN_BITFIELD
894 uint64_t reserved_49_63:15;
895 uint64_t ptrs0:17;
896 uint64_t reserved_0_31:32;
897 #else
898 uint64_t reserved_0_31:32;
899 uint64_t ptrs0:17;
900 uint64_t reserved_49_63:15;
901 #endif
902 } s;
903 struct cvmx_pko_mem_debug9_cn30xx {
904 #ifdef __BIG_ENDIAN_BITFIELD
905 uint64_t reserved_28_63:36;
906 uint64_t doorbell:20;
907 uint64_t reserved_5_7:3;
908 uint64_t s_tail:1;
909 uint64_t static_q:1;
910 uint64_t qos:3;
911 #else
912 uint64_t qos:3;
913 uint64_t static_q:1;
914 uint64_t s_tail:1;
915 uint64_t reserved_5_7:3;
916 uint64_t doorbell:20;
917 uint64_t reserved_28_63:36;
918 #endif
919 } cn30xx;
920 struct cvmx_pko_mem_debug9_cn38xx {
921 #ifdef __BIG_ENDIAN_BITFIELD
922 uint64_t reserved_28_63:36;
923 uint64_t doorbell:20;
924 uint64_t reserved_6_7:2;
925 uint64_t static_p:1;
926 uint64_t s_tail:1;
927 uint64_t static_q:1;
928 uint64_t qos:3;
929 #else
930 uint64_t qos:3;
931 uint64_t static_q:1;
932 uint64_t s_tail:1;
933 uint64_t static_p:1;
934 uint64_t reserved_6_7:2;
935 uint64_t doorbell:20;
936 uint64_t reserved_28_63:36;
937 #endif
938 } cn38xx;
939 struct cvmx_pko_mem_debug9_cn50xx {
940 #ifdef __BIG_ENDIAN_BITFIELD
941 uint64_t reserved_49_63:15;
942 uint64_t ptrs0:17;
943 uint64_t reserved_17_31:15;
944 uint64_t ptrs3:17;
945 #else
946 uint64_t ptrs3:17;
947 uint64_t reserved_17_31:15;
948 uint64_t ptrs0:17;
949 uint64_t reserved_49_63:15;
950 #endif
951 } cn50xx;
954 union cvmx_pko_mem_iport_ptrs {
955 uint64_t u64;
956 struct cvmx_pko_mem_iport_ptrs_s {
957 #ifdef __BIG_ENDIAN_BITFIELD
958 uint64_t reserved_63_63:1;
959 uint64_t crc:1;
960 uint64_t static_p:1;
961 uint64_t qos_mask:8;
962 uint64_t min_pkt:3;
963 uint64_t reserved_31_49:19;
964 uint64_t pipe:7;
965 uint64_t reserved_21_23:3;
966 uint64_t intr:5;
967 uint64_t reserved_13_15:3;
968 uint64_t eid:5;
969 uint64_t reserved_7_7:1;
970 uint64_t ipid:7;
971 #else
972 uint64_t ipid:7;
973 uint64_t reserved_7_7:1;
974 uint64_t eid:5;
975 uint64_t reserved_13_15:3;
976 uint64_t intr:5;
977 uint64_t reserved_21_23:3;
978 uint64_t pipe:7;
979 uint64_t reserved_31_49:19;
980 uint64_t min_pkt:3;
981 uint64_t qos_mask:8;
982 uint64_t static_p:1;
983 uint64_t crc:1;
984 uint64_t reserved_63_63:1;
985 #endif
986 } s;
989 union cvmx_pko_mem_iport_qos {
990 uint64_t u64;
991 struct cvmx_pko_mem_iport_qos_s {
992 #ifdef __BIG_ENDIAN_BITFIELD
993 uint64_t reserved_61_63:3;
994 uint64_t qos_mask:8;
995 uint64_t reserved_13_52:40;
996 uint64_t eid:5;
997 uint64_t reserved_7_7:1;
998 uint64_t ipid:7;
999 #else
1000 uint64_t ipid:7;
1001 uint64_t reserved_7_7:1;
1002 uint64_t eid:5;
1003 uint64_t reserved_13_52:40;
1004 uint64_t qos_mask:8;
1005 uint64_t reserved_61_63:3;
1006 #endif
1007 } s;
1010 union cvmx_pko_mem_iqueue_ptrs {
1011 uint64_t u64;
1012 struct cvmx_pko_mem_iqueue_ptrs_s {
1013 #ifdef __BIG_ENDIAN_BITFIELD
1014 uint64_t s_tail:1;
1015 uint64_t static_p:1;
1016 uint64_t static_q:1;
1017 uint64_t qos_mask:8;
1018 uint64_t buf_ptr:31;
1019 uint64_t tail:1;
1020 uint64_t index:5;
1021 uint64_t reserved_15_15:1;
1022 uint64_t ipid:7;
1023 uint64_t qid:8;
1024 #else
1025 uint64_t qid:8;
1026 uint64_t ipid:7;
1027 uint64_t reserved_15_15:1;
1028 uint64_t index:5;
1029 uint64_t tail:1;
1030 uint64_t buf_ptr:31;
1031 uint64_t qos_mask:8;
1032 uint64_t static_q:1;
1033 uint64_t static_p:1;
1034 uint64_t s_tail:1;
1035 #endif
1036 } s;
1039 union cvmx_pko_mem_iqueue_qos {
1040 uint64_t u64;
1041 struct cvmx_pko_mem_iqueue_qos_s {
1042 #ifdef __BIG_ENDIAN_BITFIELD
1043 uint64_t reserved_61_63:3;
1044 uint64_t qos_mask:8;
1045 uint64_t reserved_15_52:38;
1046 uint64_t ipid:7;
1047 uint64_t qid:8;
1048 #else
1049 uint64_t qid:8;
1050 uint64_t ipid:7;
1051 uint64_t reserved_15_52:38;
1052 uint64_t qos_mask:8;
1053 uint64_t reserved_61_63:3;
1054 #endif
1055 } s;
1058 union cvmx_pko_mem_port_ptrs {
1059 uint64_t u64;
1060 struct cvmx_pko_mem_port_ptrs_s {
1061 #ifdef __BIG_ENDIAN_BITFIELD
1062 uint64_t reserved_62_63:2;
1063 uint64_t static_p:1;
1064 uint64_t qos_mask:8;
1065 uint64_t reserved_16_52:37;
1066 uint64_t bp_port:6;
1067 uint64_t eid:4;
1068 uint64_t pid:6;
1069 #else
1070 uint64_t pid:6;
1071 uint64_t eid:4;
1072 uint64_t bp_port:6;
1073 uint64_t reserved_16_52:37;
1074 uint64_t qos_mask:8;
1075 uint64_t static_p:1;
1076 uint64_t reserved_62_63:2;
1077 #endif
1078 } s;
1081 union cvmx_pko_mem_port_qos {
1082 uint64_t u64;
1083 struct cvmx_pko_mem_port_qos_s {
1084 #ifdef __BIG_ENDIAN_BITFIELD
1085 uint64_t reserved_61_63:3;
1086 uint64_t qos_mask:8;
1087 uint64_t reserved_10_52:43;
1088 uint64_t eid:4;
1089 uint64_t pid:6;
1090 #else
1091 uint64_t pid:6;
1092 uint64_t eid:4;
1093 uint64_t reserved_10_52:43;
1094 uint64_t qos_mask:8;
1095 uint64_t reserved_61_63:3;
1096 #endif
1097 } s;
1100 union cvmx_pko_mem_port_rate0 {
1101 uint64_t u64;
1102 struct cvmx_pko_mem_port_rate0_s {
1103 #ifdef __BIG_ENDIAN_BITFIELD
1104 uint64_t reserved_51_63:13;
1105 uint64_t rate_word:19;
1106 uint64_t rate_pkt:24;
1107 uint64_t reserved_7_7:1;
1108 uint64_t pid:7;
1109 #else
1110 uint64_t pid:7;
1111 uint64_t reserved_7_7:1;
1112 uint64_t rate_pkt:24;
1113 uint64_t rate_word:19;
1114 uint64_t reserved_51_63:13;
1115 #endif
1116 } s;
1117 struct cvmx_pko_mem_port_rate0_cn52xx {
1118 #ifdef __BIG_ENDIAN_BITFIELD
1119 uint64_t reserved_51_63:13;
1120 uint64_t rate_word:19;
1121 uint64_t rate_pkt:24;
1122 uint64_t reserved_6_7:2;
1123 uint64_t pid:6;
1124 #else
1125 uint64_t pid:6;
1126 uint64_t reserved_6_7:2;
1127 uint64_t rate_pkt:24;
1128 uint64_t rate_word:19;
1129 uint64_t reserved_51_63:13;
1130 #endif
1131 } cn52xx;
1134 union cvmx_pko_mem_port_rate1 {
1135 uint64_t u64;
1136 struct cvmx_pko_mem_port_rate1_s {
1137 #ifdef __BIG_ENDIAN_BITFIELD
1138 uint64_t reserved_32_63:32;
1139 uint64_t rate_lim:24;
1140 uint64_t reserved_7_7:1;
1141 uint64_t pid:7;
1142 #else
1143 uint64_t pid:7;
1144 uint64_t reserved_7_7:1;
1145 uint64_t rate_lim:24;
1146 uint64_t reserved_32_63:32;
1147 #endif
1148 } s;
1149 struct cvmx_pko_mem_port_rate1_cn52xx {
1150 #ifdef __BIG_ENDIAN_BITFIELD
1151 uint64_t reserved_32_63:32;
1152 uint64_t rate_lim:24;
1153 uint64_t reserved_6_7:2;
1154 uint64_t pid:6;
1155 #else
1156 uint64_t pid:6;
1157 uint64_t reserved_6_7:2;
1158 uint64_t rate_lim:24;
1159 uint64_t reserved_32_63:32;
1160 #endif
1161 } cn52xx;
1164 union cvmx_pko_mem_queue_ptrs {
1165 uint64_t u64;
1166 struct cvmx_pko_mem_queue_ptrs_s {
1167 #ifdef __BIG_ENDIAN_BITFIELD
1168 uint64_t s_tail:1;
1169 uint64_t static_p:1;
1170 uint64_t static_q:1;
1171 uint64_t qos_mask:8;
1172 uint64_t buf_ptr:36;
1173 uint64_t tail:1;
1174 uint64_t index:3;
1175 uint64_t port:6;
1176 uint64_t queue:7;
1177 #else
1178 uint64_t queue:7;
1179 uint64_t port:6;
1180 uint64_t index:3;
1181 uint64_t tail:1;
1182 uint64_t buf_ptr:36;
1183 uint64_t qos_mask:8;
1184 uint64_t static_q:1;
1185 uint64_t static_p:1;
1186 uint64_t s_tail:1;
1187 #endif
1188 } s;
1191 union cvmx_pko_mem_queue_qos {
1192 uint64_t u64;
1193 struct cvmx_pko_mem_queue_qos_s {
1194 #ifdef __BIG_ENDIAN_BITFIELD
1195 uint64_t reserved_61_63:3;
1196 uint64_t qos_mask:8;
1197 uint64_t reserved_13_52:40;
1198 uint64_t pid:6;
1199 uint64_t qid:7;
1200 #else
1201 uint64_t qid:7;
1202 uint64_t pid:6;
1203 uint64_t reserved_13_52:40;
1204 uint64_t qos_mask:8;
1205 uint64_t reserved_61_63:3;
1206 #endif
1207 } s;
1210 union cvmx_pko_mem_throttle_int {
1211 uint64_t u64;
1212 struct cvmx_pko_mem_throttle_int_s {
1213 #ifdef __BIG_ENDIAN_BITFIELD
1214 uint64_t reserved_47_63:17;
1215 uint64_t word:15;
1216 uint64_t reserved_14_31:18;
1217 uint64_t packet:6;
1218 uint64_t reserved_5_7:3;
1219 uint64_t intr:5;
1220 #else
1221 uint64_t intr:5;
1222 uint64_t reserved_5_7:3;
1223 uint64_t packet:6;
1224 uint64_t reserved_14_31:18;
1225 uint64_t word:15;
1226 uint64_t reserved_47_63:17;
1227 #endif
1228 } s;
1231 union cvmx_pko_mem_throttle_pipe {
1232 uint64_t u64;
1233 struct cvmx_pko_mem_throttle_pipe_s {
1234 #ifdef __BIG_ENDIAN_BITFIELD
1235 uint64_t reserved_47_63:17;
1236 uint64_t word:15;
1237 uint64_t reserved_14_31:18;
1238 uint64_t packet:6;
1239 uint64_t reserved_7_7:1;
1240 uint64_t pipe:7;
1241 #else
1242 uint64_t pipe:7;
1243 uint64_t reserved_7_7:1;
1244 uint64_t packet:6;
1245 uint64_t reserved_14_31:18;
1246 uint64_t word:15;
1247 uint64_t reserved_47_63:17;
1248 #endif
1249 } s;
1252 union cvmx_pko_reg_bist_result {
1253 uint64_t u64;
1254 struct cvmx_pko_reg_bist_result_s {
1255 #ifdef __BIG_ENDIAN_BITFIELD
1256 uint64_t reserved_0_63:64;
1257 #else
1258 uint64_t reserved_0_63:64;
1259 #endif
1260 } s;
1261 struct cvmx_pko_reg_bist_result_cn30xx {
1262 #ifdef __BIG_ENDIAN_BITFIELD
1263 uint64_t reserved_27_63:37;
1264 uint64_t psb2:5;
1265 uint64_t count:1;
1266 uint64_t rif:1;
1267 uint64_t wif:1;
1268 uint64_t ncb:1;
1269 uint64_t out:1;
1270 uint64_t crc:1;
1271 uint64_t chk:1;
1272 uint64_t qsb:2;
1273 uint64_t qcb:2;
1274 uint64_t pdb:4;
1275 uint64_t psb:7;
1276 #else
1277 uint64_t psb:7;
1278 uint64_t pdb:4;
1279 uint64_t qcb:2;
1280 uint64_t qsb:2;
1281 uint64_t chk:1;
1282 uint64_t crc:1;
1283 uint64_t out:1;
1284 uint64_t ncb:1;
1285 uint64_t wif:1;
1286 uint64_t rif:1;
1287 uint64_t count:1;
1288 uint64_t psb2:5;
1289 uint64_t reserved_27_63:37;
1290 #endif
1291 } cn30xx;
1292 struct cvmx_pko_reg_bist_result_cn50xx {
1293 #ifdef __BIG_ENDIAN_BITFIELD
1294 uint64_t reserved_33_63:31;
1295 uint64_t csr:1;
1296 uint64_t iob:1;
1297 uint64_t out_crc:1;
1298 uint64_t out_ctl:3;
1299 uint64_t out_sta:1;
1300 uint64_t out_wif:1;
1301 uint64_t prt_chk:3;
1302 uint64_t prt_nxt:1;
1303 uint64_t prt_psb:6;
1304 uint64_t ncb_inb:2;
1305 uint64_t prt_qcb:2;
1306 uint64_t prt_qsb:3;
1307 uint64_t dat_dat:4;
1308 uint64_t dat_ptr:4;
1309 #else
1310 uint64_t dat_ptr:4;
1311 uint64_t dat_dat:4;
1312 uint64_t prt_qsb:3;
1313 uint64_t prt_qcb:2;
1314 uint64_t ncb_inb:2;
1315 uint64_t prt_psb:6;
1316 uint64_t prt_nxt:1;
1317 uint64_t prt_chk:3;
1318 uint64_t out_wif:1;
1319 uint64_t out_sta:1;
1320 uint64_t out_ctl:3;
1321 uint64_t out_crc:1;
1322 uint64_t iob:1;
1323 uint64_t csr:1;
1324 uint64_t reserved_33_63:31;
1325 #endif
1326 } cn50xx;
1327 struct cvmx_pko_reg_bist_result_cn52xx {
1328 #ifdef __BIG_ENDIAN_BITFIELD
1329 uint64_t reserved_35_63:29;
1330 uint64_t csr:1;
1331 uint64_t iob:1;
1332 uint64_t out_dat:1;
1333 uint64_t out_ctl:3;
1334 uint64_t out_sta:1;
1335 uint64_t out_wif:1;
1336 uint64_t prt_chk:3;
1337 uint64_t prt_nxt:1;
1338 uint64_t prt_psb:8;
1339 uint64_t ncb_inb:2;
1340 uint64_t prt_qcb:2;
1341 uint64_t prt_qsb:3;
1342 uint64_t prt_ctl:2;
1343 uint64_t dat_dat:2;
1344 uint64_t dat_ptr:4;
1345 #else
1346 uint64_t dat_ptr:4;
1347 uint64_t dat_dat:2;
1348 uint64_t prt_ctl:2;
1349 uint64_t prt_qsb:3;
1350 uint64_t prt_qcb:2;
1351 uint64_t ncb_inb:2;
1352 uint64_t prt_psb:8;
1353 uint64_t prt_nxt:1;
1354 uint64_t prt_chk:3;
1355 uint64_t out_wif:1;
1356 uint64_t out_sta:1;
1357 uint64_t out_ctl:3;
1358 uint64_t out_dat:1;
1359 uint64_t iob:1;
1360 uint64_t csr:1;
1361 uint64_t reserved_35_63:29;
1362 #endif
1363 } cn52xx;
1364 struct cvmx_pko_reg_bist_result_cn68xx {
1365 #ifdef __BIG_ENDIAN_BITFIELD
1366 uint64_t reserved_36_63:28;
1367 uint64_t crc:1;
1368 uint64_t csr:1;
1369 uint64_t iob:1;
1370 uint64_t out_dat:1;
1371 uint64_t reserved_31_31:1;
1372 uint64_t out_ctl:2;
1373 uint64_t out_sta:1;
1374 uint64_t out_wif:1;
1375 uint64_t prt_chk:3;
1376 uint64_t prt_nxt:1;
1377 uint64_t prt_psb7:1;
1378 uint64_t reserved_21_21:1;
1379 uint64_t prt_psb:6;
1380 uint64_t ncb_inb:2;
1381 uint64_t prt_qcb:2;
1382 uint64_t prt_qsb:3;
1383 uint64_t prt_ctl:2;
1384 uint64_t dat_dat:2;
1385 uint64_t dat_ptr:4;
1386 #else
1387 uint64_t dat_ptr:4;
1388 uint64_t dat_dat:2;
1389 uint64_t prt_ctl:2;
1390 uint64_t prt_qsb:3;
1391 uint64_t prt_qcb:2;
1392 uint64_t ncb_inb:2;
1393 uint64_t prt_psb:6;
1394 uint64_t reserved_21_21:1;
1395 uint64_t prt_psb7:1;
1396 uint64_t prt_nxt:1;
1397 uint64_t prt_chk:3;
1398 uint64_t out_wif:1;
1399 uint64_t out_sta:1;
1400 uint64_t out_ctl:2;
1401 uint64_t reserved_31_31:1;
1402 uint64_t out_dat:1;
1403 uint64_t iob:1;
1404 uint64_t csr:1;
1405 uint64_t crc:1;
1406 uint64_t reserved_36_63:28;
1407 #endif
1408 } cn68xx;
1409 struct cvmx_pko_reg_bist_result_cn68xxp1 {
1410 #ifdef __BIG_ENDIAN_BITFIELD
1411 uint64_t reserved_35_63:29;
1412 uint64_t csr:1;
1413 uint64_t iob:1;
1414 uint64_t out_dat:1;
1415 uint64_t reserved_31_31:1;
1416 uint64_t out_ctl:2;
1417 uint64_t out_sta:1;
1418 uint64_t out_wif:1;
1419 uint64_t prt_chk:3;
1420 uint64_t prt_nxt:1;
1421 uint64_t prt_psb7:1;
1422 uint64_t reserved_21_21:1;
1423 uint64_t prt_psb:6;
1424 uint64_t ncb_inb:2;
1425 uint64_t prt_qcb:2;
1426 uint64_t prt_qsb:3;
1427 uint64_t prt_ctl:2;
1428 uint64_t dat_dat:2;
1429 uint64_t dat_ptr:4;
1430 #else
1431 uint64_t dat_ptr:4;
1432 uint64_t dat_dat:2;
1433 uint64_t prt_ctl:2;
1434 uint64_t prt_qsb:3;
1435 uint64_t prt_qcb:2;
1436 uint64_t ncb_inb:2;
1437 uint64_t prt_psb:6;
1438 uint64_t reserved_21_21:1;
1439 uint64_t prt_psb7:1;
1440 uint64_t prt_nxt:1;
1441 uint64_t prt_chk:3;
1442 uint64_t out_wif:1;
1443 uint64_t out_sta:1;
1444 uint64_t out_ctl:2;
1445 uint64_t reserved_31_31:1;
1446 uint64_t out_dat:1;
1447 uint64_t iob:1;
1448 uint64_t csr:1;
1449 uint64_t reserved_35_63:29;
1450 #endif
1451 } cn68xxp1;
1454 union cvmx_pko_reg_cmd_buf {
1455 uint64_t u64;
1456 struct cvmx_pko_reg_cmd_buf_s {
1457 #ifdef __BIG_ENDIAN_BITFIELD
1458 uint64_t reserved_23_63:41;
1459 uint64_t pool:3;
1460 uint64_t reserved_13_19:7;
1461 uint64_t size:13;
1462 #else
1463 uint64_t size:13;
1464 uint64_t reserved_13_19:7;
1465 uint64_t pool:3;
1466 uint64_t reserved_23_63:41;
1467 #endif
1468 } s;
1471 union cvmx_pko_reg_crc_ctlx {
1472 uint64_t u64;
1473 struct cvmx_pko_reg_crc_ctlx_s {
1474 #ifdef __BIG_ENDIAN_BITFIELD
1475 uint64_t reserved_2_63:62;
1476 uint64_t invres:1;
1477 uint64_t refin:1;
1478 #else
1479 uint64_t refin:1;
1480 uint64_t invres:1;
1481 uint64_t reserved_2_63:62;
1482 #endif
1483 } s;
1486 union cvmx_pko_reg_crc_enable {
1487 uint64_t u64;
1488 struct cvmx_pko_reg_crc_enable_s {
1489 #ifdef __BIG_ENDIAN_BITFIELD
1490 uint64_t reserved_32_63:32;
1491 uint64_t enable:32;
1492 #else
1493 uint64_t enable:32;
1494 uint64_t reserved_32_63:32;
1495 #endif
1496 } s;
1499 union cvmx_pko_reg_crc_ivx {
1500 uint64_t u64;
1501 struct cvmx_pko_reg_crc_ivx_s {
1502 #ifdef __BIG_ENDIAN_BITFIELD
1503 uint64_t reserved_32_63:32;
1504 uint64_t iv:32;
1505 #else
1506 uint64_t iv:32;
1507 uint64_t reserved_32_63:32;
1508 #endif
1509 } s;
1512 union cvmx_pko_reg_debug0 {
1513 uint64_t u64;
1514 struct cvmx_pko_reg_debug0_s {
1515 #ifdef __BIG_ENDIAN_BITFIELD
1516 uint64_t asserts:64;
1517 #else
1518 uint64_t asserts:64;
1519 #endif
1520 } s;
1521 struct cvmx_pko_reg_debug0_cn30xx {
1522 #ifdef __BIG_ENDIAN_BITFIELD
1523 uint64_t reserved_17_63:47;
1524 uint64_t asserts:17;
1525 #else
1526 uint64_t asserts:17;
1527 uint64_t reserved_17_63:47;
1528 #endif
1529 } cn30xx;
1532 union cvmx_pko_reg_debug1 {
1533 uint64_t u64;
1534 struct cvmx_pko_reg_debug1_s {
1535 #ifdef __BIG_ENDIAN_BITFIELD
1536 uint64_t asserts:64;
1537 #else
1538 uint64_t asserts:64;
1539 #endif
1540 } s;
1543 union cvmx_pko_reg_debug2 {
1544 uint64_t u64;
1545 struct cvmx_pko_reg_debug2_s {
1546 #ifdef __BIG_ENDIAN_BITFIELD
1547 uint64_t asserts:64;
1548 #else
1549 uint64_t asserts:64;
1550 #endif
1551 } s;
1554 union cvmx_pko_reg_debug3 {
1555 uint64_t u64;
1556 struct cvmx_pko_reg_debug3_s {
1557 #ifdef __BIG_ENDIAN_BITFIELD
1558 uint64_t asserts:64;
1559 #else
1560 uint64_t asserts:64;
1561 #endif
1562 } s;
1565 union cvmx_pko_reg_debug4 {
1566 uint64_t u64;
1567 struct cvmx_pko_reg_debug4_s {
1568 #ifdef __BIG_ENDIAN_BITFIELD
1569 uint64_t asserts:64;
1570 #else
1571 uint64_t asserts:64;
1572 #endif
1573 } s;
1576 union cvmx_pko_reg_engine_inflight {
1577 uint64_t u64;
1578 struct cvmx_pko_reg_engine_inflight_s {
1579 #ifdef __BIG_ENDIAN_BITFIELD
1580 uint64_t engine15:4;
1581 uint64_t engine14:4;
1582 uint64_t engine13:4;
1583 uint64_t engine12:4;
1584 uint64_t engine11:4;
1585 uint64_t engine10:4;
1586 uint64_t engine9:4;
1587 uint64_t engine8:4;
1588 uint64_t engine7:4;
1589 uint64_t engine6:4;
1590 uint64_t engine5:4;
1591 uint64_t engine4:4;
1592 uint64_t engine3:4;
1593 uint64_t engine2:4;
1594 uint64_t engine1:4;
1595 uint64_t engine0:4;
1596 #else
1597 uint64_t engine0:4;
1598 uint64_t engine1:4;
1599 uint64_t engine2:4;
1600 uint64_t engine3:4;
1601 uint64_t engine4:4;
1602 uint64_t engine5:4;
1603 uint64_t engine6:4;
1604 uint64_t engine7:4;
1605 uint64_t engine8:4;
1606 uint64_t engine9:4;
1607 uint64_t engine10:4;
1608 uint64_t engine11:4;
1609 uint64_t engine12:4;
1610 uint64_t engine13:4;
1611 uint64_t engine14:4;
1612 uint64_t engine15:4;
1613 #endif
1614 } s;
1615 struct cvmx_pko_reg_engine_inflight_cn52xx {
1616 #ifdef __BIG_ENDIAN_BITFIELD
1617 uint64_t reserved_40_63:24;
1618 uint64_t engine9:4;
1619 uint64_t engine8:4;
1620 uint64_t engine7:4;
1621 uint64_t engine6:4;
1622 uint64_t engine5:4;
1623 uint64_t engine4:4;
1624 uint64_t engine3:4;
1625 uint64_t engine2:4;
1626 uint64_t engine1:4;
1627 uint64_t engine0:4;
1628 #else
1629 uint64_t engine0:4;
1630 uint64_t engine1:4;
1631 uint64_t engine2:4;
1632 uint64_t engine3:4;
1633 uint64_t engine4:4;
1634 uint64_t engine5:4;
1635 uint64_t engine6:4;
1636 uint64_t engine7:4;
1637 uint64_t engine8:4;
1638 uint64_t engine9:4;
1639 uint64_t reserved_40_63:24;
1640 #endif
1641 } cn52xx;
1642 struct cvmx_pko_reg_engine_inflight_cn61xx {
1643 #ifdef __BIG_ENDIAN_BITFIELD
1644 uint64_t reserved_56_63:8;
1645 uint64_t engine13:4;
1646 uint64_t engine12:4;
1647 uint64_t engine11:4;
1648 uint64_t engine10:4;
1649 uint64_t engine9:4;
1650 uint64_t engine8:4;
1651 uint64_t engine7:4;
1652 uint64_t engine6:4;
1653 uint64_t engine5:4;
1654 uint64_t engine4:4;
1655 uint64_t engine3:4;
1656 uint64_t engine2:4;
1657 uint64_t engine1:4;
1658 uint64_t engine0:4;
1659 #else
1660 uint64_t engine0:4;
1661 uint64_t engine1:4;
1662 uint64_t engine2:4;
1663 uint64_t engine3:4;
1664 uint64_t engine4:4;
1665 uint64_t engine5:4;
1666 uint64_t engine6:4;
1667 uint64_t engine7:4;
1668 uint64_t engine8:4;
1669 uint64_t engine9:4;
1670 uint64_t engine10:4;
1671 uint64_t engine11:4;
1672 uint64_t engine12:4;
1673 uint64_t engine13:4;
1674 uint64_t reserved_56_63:8;
1675 #endif
1676 } cn61xx;
1677 struct cvmx_pko_reg_engine_inflight_cn63xx {
1678 #ifdef __BIG_ENDIAN_BITFIELD
1679 uint64_t reserved_48_63:16;
1680 uint64_t engine11:4;
1681 uint64_t engine10:4;
1682 uint64_t engine9:4;
1683 uint64_t engine8:4;
1684 uint64_t engine7:4;
1685 uint64_t engine6:4;
1686 uint64_t engine5:4;
1687 uint64_t engine4:4;
1688 uint64_t engine3:4;
1689 uint64_t engine2:4;
1690 uint64_t engine1:4;
1691 uint64_t engine0:4;
1692 #else
1693 uint64_t engine0:4;
1694 uint64_t engine1:4;
1695 uint64_t engine2:4;
1696 uint64_t engine3:4;
1697 uint64_t engine4:4;
1698 uint64_t engine5:4;
1699 uint64_t engine6:4;
1700 uint64_t engine7:4;
1701 uint64_t engine8:4;
1702 uint64_t engine9:4;
1703 uint64_t engine10:4;
1704 uint64_t engine11:4;
1705 uint64_t reserved_48_63:16;
1706 #endif
1707 } cn63xx;
1710 union cvmx_pko_reg_engine_inflight1 {
1711 uint64_t u64;
1712 struct cvmx_pko_reg_engine_inflight1_s {
1713 #ifdef __BIG_ENDIAN_BITFIELD
1714 uint64_t reserved_16_63:48;
1715 uint64_t engine19:4;
1716 uint64_t engine18:4;
1717 uint64_t engine17:4;
1718 uint64_t engine16:4;
1719 #else
1720 uint64_t engine16:4;
1721 uint64_t engine17:4;
1722 uint64_t engine18:4;
1723 uint64_t engine19:4;
1724 uint64_t reserved_16_63:48;
1725 #endif
1726 } s;
1729 union cvmx_pko_reg_engine_storagex {
1730 uint64_t u64;
1731 struct cvmx_pko_reg_engine_storagex_s {
1732 #ifdef __BIG_ENDIAN_BITFIELD
1733 uint64_t engine15:4;
1734 uint64_t engine14:4;
1735 uint64_t engine13:4;
1736 uint64_t engine12:4;
1737 uint64_t engine11:4;
1738 uint64_t engine10:4;
1739 uint64_t engine9:4;
1740 uint64_t engine8:4;
1741 uint64_t engine7:4;
1742 uint64_t engine6:4;
1743 uint64_t engine5:4;
1744 uint64_t engine4:4;
1745 uint64_t engine3:4;
1746 uint64_t engine2:4;
1747 uint64_t engine1:4;
1748 uint64_t engine0:4;
1749 #else
1750 uint64_t engine0:4;
1751 uint64_t engine1:4;
1752 uint64_t engine2:4;
1753 uint64_t engine3:4;
1754 uint64_t engine4:4;
1755 uint64_t engine5:4;
1756 uint64_t engine6:4;
1757 uint64_t engine7:4;
1758 uint64_t engine8:4;
1759 uint64_t engine9:4;
1760 uint64_t engine10:4;
1761 uint64_t engine11:4;
1762 uint64_t engine12:4;
1763 uint64_t engine13:4;
1764 uint64_t engine14:4;
1765 uint64_t engine15:4;
1766 #endif
1767 } s;
1770 union cvmx_pko_reg_engine_thresh {
1771 uint64_t u64;
1772 struct cvmx_pko_reg_engine_thresh_s {
1773 #ifdef __BIG_ENDIAN_BITFIELD
1774 uint64_t reserved_20_63:44;
1775 uint64_t mask:20;
1776 #else
1777 uint64_t mask:20;
1778 uint64_t reserved_20_63:44;
1779 #endif
1780 } s;
1781 struct cvmx_pko_reg_engine_thresh_cn52xx {
1782 #ifdef __BIG_ENDIAN_BITFIELD
1783 uint64_t reserved_10_63:54;
1784 uint64_t mask:10;
1785 #else
1786 uint64_t mask:10;
1787 uint64_t reserved_10_63:54;
1788 #endif
1789 } cn52xx;
1790 struct cvmx_pko_reg_engine_thresh_cn61xx {
1791 #ifdef __BIG_ENDIAN_BITFIELD
1792 uint64_t reserved_14_63:50;
1793 uint64_t mask:14;
1794 #else
1795 uint64_t mask:14;
1796 uint64_t reserved_14_63:50;
1797 #endif
1798 } cn61xx;
1799 struct cvmx_pko_reg_engine_thresh_cn63xx {
1800 #ifdef __BIG_ENDIAN_BITFIELD
1801 uint64_t reserved_12_63:52;
1802 uint64_t mask:12;
1803 #else
1804 uint64_t mask:12;
1805 uint64_t reserved_12_63:52;
1806 #endif
1807 } cn63xx;
1810 union cvmx_pko_reg_error {
1811 uint64_t u64;
1812 struct cvmx_pko_reg_error_s {
1813 #ifdef __BIG_ENDIAN_BITFIELD
1814 uint64_t reserved_4_63:60;
1815 uint64_t loopback:1;
1816 uint64_t currzero:1;
1817 uint64_t doorbell:1;
1818 uint64_t parity:1;
1819 #else
1820 uint64_t parity:1;
1821 uint64_t doorbell:1;
1822 uint64_t currzero:1;
1823 uint64_t loopback:1;
1824 uint64_t reserved_4_63:60;
1825 #endif
1826 } s;
1827 struct cvmx_pko_reg_error_cn30xx {
1828 #ifdef __BIG_ENDIAN_BITFIELD
1829 uint64_t reserved_2_63:62;
1830 uint64_t doorbell:1;
1831 uint64_t parity:1;
1832 #else
1833 uint64_t parity:1;
1834 uint64_t doorbell:1;
1835 uint64_t reserved_2_63:62;
1836 #endif
1837 } cn30xx;
1838 struct cvmx_pko_reg_error_cn50xx {
1839 #ifdef __BIG_ENDIAN_BITFIELD
1840 uint64_t reserved_3_63:61;
1841 uint64_t currzero:1;
1842 uint64_t doorbell:1;
1843 uint64_t parity:1;
1844 #else
1845 uint64_t parity:1;
1846 uint64_t doorbell:1;
1847 uint64_t currzero:1;
1848 uint64_t reserved_3_63:61;
1849 #endif
1850 } cn50xx;
1853 union cvmx_pko_reg_flags {
1854 uint64_t u64;
1855 struct cvmx_pko_reg_flags_s {
1856 #ifdef __BIG_ENDIAN_BITFIELD
1857 uint64_t reserved_9_63:55;
1858 uint64_t dis_perf3:1;
1859 uint64_t dis_perf2:1;
1860 uint64_t dis_perf1:1;
1861 uint64_t dis_perf0:1;
1862 uint64_t ena_throttle:1;
1863 uint64_t reset:1;
1864 uint64_t store_be:1;
1865 uint64_t ena_dwb:1;
1866 uint64_t ena_pko:1;
1867 #else
1868 uint64_t ena_pko:1;
1869 uint64_t ena_dwb:1;
1870 uint64_t store_be:1;
1871 uint64_t reset:1;
1872 uint64_t ena_throttle:1;
1873 uint64_t dis_perf0:1;
1874 uint64_t dis_perf1:1;
1875 uint64_t dis_perf2:1;
1876 uint64_t dis_perf3:1;
1877 uint64_t reserved_9_63:55;
1878 #endif
1879 } s;
1880 struct cvmx_pko_reg_flags_cn30xx {
1881 #ifdef __BIG_ENDIAN_BITFIELD
1882 uint64_t reserved_4_63:60;
1883 uint64_t reset:1;
1884 uint64_t store_be:1;
1885 uint64_t ena_dwb:1;
1886 uint64_t ena_pko:1;
1887 #else
1888 uint64_t ena_pko:1;
1889 uint64_t ena_dwb:1;
1890 uint64_t store_be:1;
1891 uint64_t reset:1;
1892 uint64_t reserved_4_63:60;
1893 #endif
1894 } cn30xx;
1895 struct cvmx_pko_reg_flags_cn61xx {
1896 #ifdef __BIG_ENDIAN_BITFIELD
1897 uint64_t reserved_9_63:55;
1898 uint64_t dis_perf3:1;
1899 uint64_t dis_perf2:1;
1900 uint64_t reserved_4_6:3;
1901 uint64_t reset:1;
1902 uint64_t store_be:1;
1903 uint64_t ena_dwb:1;
1904 uint64_t ena_pko:1;
1905 #else
1906 uint64_t ena_pko:1;
1907 uint64_t ena_dwb:1;
1908 uint64_t store_be:1;
1909 uint64_t reset:1;
1910 uint64_t reserved_4_6:3;
1911 uint64_t dis_perf2:1;
1912 uint64_t dis_perf3:1;
1913 uint64_t reserved_9_63:55;
1914 #endif
1915 } cn61xx;
1916 struct cvmx_pko_reg_flags_cn68xxp1 {
1917 #ifdef __BIG_ENDIAN_BITFIELD
1918 uint64_t reserved_7_63:57;
1919 uint64_t dis_perf1:1;
1920 uint64_t dis_perf0:1;
1921 uint64_t ena_throttle:1;
1922 uint64_t reset:1;
1923 uint64_t store_be:1;
1924 uint64_t ena_dwb:1;
1925 uint64_t ena_pko:1;
1926 #else
1927 uint64_t ena_pko:1;
1928 uint64_t ena_dwb:1;
1929 uint64_t store_be:1;
1930 uint64_t reset:1;
1931 uint64_t ena_throttle:1;
1932 uint64_t dis_perf0:1;
1933 uint64_t dis_perf1:1;
1934 uint64_t reserved_7_63:57;
1935 #endif
1936 } cn68xxp1;
1939 union cvmx_pko_reg_gmx_port_mode {
1940 uint64_t u64;
1941 struct cvmx_pko_reg_gmx_port_mode_s {
1942 #ifdef __BIG_ENDIAN_BITFIELD
1943 uint64_t reserved_6_63:58;
1944 uint64_t mode1:3;
1945 uint64_t mode0:3;
1946 #else
1947 uint64_t mode0:3;
1948 uint64_t mode1:3;
1949 uint64_t reserved_6_63:58;
1950 #endif
1951 } s;
1954 union cvmx_pko_reg_int_mask {
1955 uint64_t u64;
1956 struct cvmx_pko_reg_int_mask_s {
1957 #ifdef __BIG_ENDIAN_BITFIELD
1958 uint64_t reserved_4_63:60;
1959 uint64_t loopback:1;
1960 uint64_t currzero:1;
1961 uint64_t doorbell:1;
1962 uint64_t parity:1;
1963 #else
1964 uint64_t parity:1;
1965 uint64_t doorbell:1;
1966 uint64_t currzero:1;
1967 uint64_t loopback:1;
1968 uint64_t reserved_4_63:60;
1969 #endif
1970 } s;
1971 struct cvmx_pko_reg_int_mask_cn30xx {
1972 #ifdef __BIG_ENDIAN_BITFIELD
1973 uint64_t reserved_2_63:62;
1974 uint64_t doorbell:1;
1975 uint64_t parity:1;
1976 #else
1977 uint64_t parity:1;
1978 uint64_t doorbell:1;
1979 uint64_t reserved_2_63:62;
1980 #endif
1981 } cn30xx;
1982 struct cvmx_pko_reg_int_mask_cn50xx {
1983 #ifdef __BIG_ENDIAN_BITFIELD
1984 uint64_t reserved_3_63:61;
1985 uint64_t currzero:1;
1986 uint64_t doorbell:1;
1987 uint64_t parity:1;
1988 #else
1989 uint64_t parity:1;
1990 uint64_t doorbell:1;
1991 uint64_t currzero:1;
1992 uint64_t reserved_3_63:61;
1993 #endif
1994 } cn50xx;
1997 union cvmx_pko_reg_loopback_bpid {
1998 uint64_t u64;
1999 struct cvmx_pko_reg_loopback_bpid_s {
2000 #ifdef __BIG_ENDIAN_BITFIELD
2001 uint64_t reserved_59_63:5;
2002 uint64_t bpid7:6;
2003 uint64_t reserved_52_52:1;
2004 uint64_t bpid6:6;
2005 uint64_t reserved_45_45:1;
2006 uint64_t bpid5:6;
2007 uint64_t reserved_38_38:1;
2008 uint64_t bpid4:6;
2009 uint64_t reserved_31_31:1;
2010 uint64_t bpid3:6;
2011 uint64_t reserved_24_24:1;
2012 uint64_t bpid2:6;
2013 uint64_t reserved_17_17:1;
2014 uint64_t bpid1:6;
2015 uint64_t reserved_10_10:1;
2016 uint64_t bpid0:6;
2017 uint64_t reserved_0_3:4;
2018 #else
2019 uint64_t reserved_0_3:4;
2020 uint64_t bpid0:6;
2021 uint64_t reserved_10_10:1;
2022 uint64_t bpid1:6;
2023 uint64_t reserved_17_17:1;
2024 uint64_t bpid2:6;
2025 uint64_t reserved_24_24:1;
2026 uint64_t bpid3:6;
2027 uint64_t reserved_31_31:1;
2028 uint64_t bpid4:6;
2029 uint64_t reserved_38_38:1;
2030 uint64_t bpid5:6;
2031 uint64_t reserved_45_45:1;
2032 uint64_t bpid6:6;
2033 uint64_t reserved_52_52:1;
2034 uint64_t bpid7:6;
2035 uint64_t reserved_59_63:5;
2036 #endif
2037 } s;
2040 union cvmx_pko_reg_loopback_pkind {
2041 uint64_t u64;
2042 struct cvmx_pko_reg_loopback_pkind_s {
2043 #ifdef __BIG_ENDIAN_BITFIELD
2044 uint64_t reserved_59_63:5;
2045 uint64_t pkind7:6;
2046 uint64_t reserved_52_52:1;
2047 uint64_t pkind6:6;
2048 uint64_t reserved_45_45:1;
2049 uint64_t pkind5:6;
2050 uint64_t reserved_38_38:1;
2051 uint64_t pkind4:6;
2052 uint64_t reserved_31_31:1;
2053 uint64_t pkind3:6;
2054 uint64_t reserved_24_24:1;
2055 uint64_t pkind2:6;
2056 uint64_t reserved_17_17:1;
2057 uint64_t pkind1:6;
2058 uint64_t reserved_10_10:1;
2059 uint64_t pkind0:6;
2060 uint64_t num_ports:4;
2061 #else
2062 uint64_t num_ports:4;
2063 uint64_t pkind0:6;
2064 uint64_t reserved_10_10:1;
2065 uint64_t pkind1:6;
2066 uint64_t reserved_17_17:1;
2067 uint64_t pkind2:6;
2068 uint64_t reserved_24_24:1;
2069 uint64_t pkind3:6;
2070 uint64_t reserved_31_31:1;
2071 uint64_t pkind4:6;
2072 uint64_t reserved_38_38:1;
2073 uint64_t pkind5:6;
2074 uint64_t reserved_45_45:1;
2075 uint64_t pkind6:6;
2076 uint64_t reserved_52_52:1;
2077 uint64_t pkind7:6;
2078 uint64_t reserved_59_63:5;
2079 #endif
2080 } s;
2083 union cvmx_pko_reg_min_pkt {
2084 uint64_t u64;
2085 struct cvmx_pko_reg_min_pkt_s {
2086 #ifdef __BIG_ENDIAN_BITFIELD
2087 uint64_t size7:8;
2088 uint64_t size6:8;
2089 uint64_t size5:8;
2090 uint64_t size4:8;
2091 uint64_t size3:8;
2092 uint64_t size2:8;
2093 uint64_t size1:8;
2094 uint64_t size0:8;
2095 #else
2096 uint64_t size0:8;
2097 uint64_t size1:8;
2098 uint64_t size2:8;
2099 uint64_t size3:8;
2100 uint64_t size4:8;
2101 uint64_t size5:8;
2102 uint64_t size6:8;
2103 uint64_t size7:8;
2104 #endif
2105 } s;
2108 union cvmx_pko_reg_preempt {
2109 uint64_t u64;
2110 struct cvmx_pko_reg_preempt_s {
2111 #ifdef __BIG_ENDIAN_BITFIELD
2112 uint64_t reserved_16_63:48;
2113 uint64_t min_size:16;
2114 #else
2115 uint64_t min_size:16;
2116 uint64_t reserved_16_63:48;
2117 #endif
2118 } s;
2121 union cvmx_pko_reg_queue_mode {
2122 uint64_t u64;
2123 struct cvmx_pko_reg_queue_mode_s {
2124 #ifdef __BIG_ENDIAN_BITFIELD
2125 uint64_t reserved_2_63:62;
2126 uint64_t mode:2;
2127 #else
2128 uint64_t mode:2;
2129 uint64_t reserved_2_63:62;
2130 #endif
2131 } s;
2134 union cvmx_pko_reg_queue_preempt {
2135 uint64_t u64;
2136 struct cvmx_pko_reg_queue_preempt_s {
2137 #ifdef __BIG_ENDIAN_BITFIELD
2138 uint64_t reserved_2_63:62;
2139 uint64_t preemptee:1;
2140 uint64_t preempter:1;
2141 #else
2142 uint64_t preempter:1;
2143 uint64_t preemptee:1;
2144 uint64_t reserved_2_63:62;
2145 #endif
2146 } s;
2149 union cvmx_pko_reg_queue_ptrs1 {
2150 uint64_t u64;
2151 struct cvmx_pko_reg_queue_ptrs1_s {
2152 #ifdef __BIG_ENDIAN_BITFIELD
2153 uint64_t reserved_2_63:62;
2154 uint64_t idx3:1;
2155 uint64_t qid7:1;
2156 #else
2157 uint64_t qid7:1;
2158 uint64_t idx3:1;
2159 uint64_t reserved_2_63:62;
2160 #endif
2161 } s;
2164 union cvmx_pko_reg_read_idx {
2165 uint64_t u64;
2166 struct cvmx_pko_reg_read_idx_s {
2167 #ifdef __BIG_ENDIAN_BITFIELD
2168 uint64_t reserved_16_63:48;
2169 uint64_t inc:8;
2170 uint64_t index:8;
2171 #else
2172 uint64_t index:8;
2173 uint64_t inc:8;
2174 uint64_t reserved_16_63:48;
2175 #endif
2176 } s;
2179 union cvmx_pko_reg_throttle {
2180 uint64_t u64;
2181 struct cvmx_pko_reg_throttle_s {
2182 #ifdef __BIG_ENDIAN_BITFIELD
2183 uint64_t reserved_32_63:32;
2184 uint64_t int_mask:32;
2185 #else
2186 uint64_t int_mask:32;
2187 uint64_t reserved_32_63:32;
2188 #endif
2189 } s;
2192 union cvmx_pko_reg_timestamp {
2193 uint64_t u64;
2194 struct cvmx_pko_reg_timestamp_s {
2195 #ifdef __BIG_ENDIAN_BITFIELD
2196 uint64_t reserved_4_63:60;
2197 uint64_t wqe_word:4;
2198 #else
2199 uint64_t wqe_word:4;
2200 uint64_t reserved_4_63:60;
2201 #endif
2202 } s;
2205 #endif