1 /***********************license start***************
2 * Copyright (c) 2003-2012 Cavium Inc. (support@cavium.com). All rights
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
10 * * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
13 * * Redistributions in binary form must reproduce the above
14 * copyright notice, this list of conditions and the following
15 * disclaimer in the documentation and/or other materials provided
16 * with the distribution.
18 * * Neither the name of Cavium Inc. nor the names of
19 * its contributors may be used to endorse or promote products
20 * derived from this software without specific prior written
23 * This Software, including technical data, may be subject to U.S. export control
24 * laws, including the U.S. Export Administration Act and its associated
25 * regulations, and may be subject to export or import regulations in other
28 * TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS"
29 * AND WITH ALL FAULTS AND CAVIUM INC. MAKES NO PROMISES, REPRESENTATIONS OR
30 * WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO
31 * THE SOFTWARE, INCLUDING ITS CONDITION, ITS CONFORMITY TO ANY REPRESENTATION OR
32 * DESCRIPTION, OR THE EXISTENCE OF ANY LATENT OR PATENT DEFECTS, AND CAVIUM
33 * SPECIFICALLY DISCLAIMS ALL IMPLIED (IF ANY) WARRANTIES OF TITLE,
34 * MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE, LACK OF
35 * VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION OR
36 * CORRESPONDENCE TO DESCRIPTION. THE ENTIRE RISK ARISING OUT OF USE OR
37 * PERFORMANCE OF THE SOFTWARE LIES WITH YOU.
38 ***********************license end**************************************/
44 * Configuration and status register (CSR) type definitions for
47 * This file is auto generated. Do not edit.
52 #ifndef __CVMX_IOB_DEFS_H__
53 #define __CVMX_IOB_DEFS_H__
55 #define CVMX_IOB_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011800F00007F8ull))
56 #define CVMX_IOB_CTL_STATUS (CVMX_ADD_IO_SEG(0x00011800F0000050ull))
57 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
58 #define CVMX_IOB_DWB_PRI_CNT CVMX_IOB_DWB_PRI_CNT_FUNC()
59 static inline uint64_t CVMX_IOB_DWB_PRI_CNT_FUNC(void)
61 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
62 cvmx_warn("CVMX_IOB_DWB_PRI_CNT not supported on this chip\n");
63 return CVMX_ADD_IO_SEG(0x00011800F0000028ull);
66 #define CVMX_IOB_DWB_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000028ull))
68 #define CVMX_IOB_FAU_TIMEOUT (CVMX_ADD_IO_SEG(0x00011800F0000000ull))
69 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
70 #define CVMX_IOB_I2C_PRI_CNT CVMX_IOB_I2C_PRI_CNT_FUNC()
71 static inline uint64_t CVMX_IOB_I2C_PRI_CNT_FUNC(void)
73 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
74 cvmx_warn("CVMX_IOB_I2C_PRI_CNT not supported on this chip\n");
75 return CVMX_ADD_IO_SEG(0x00011800F0000010ull);
78 #define CVMX_IOB_I2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000010ull))
80 #define CVMX_IOB_INB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000078ull))
81 #define CVMX_IOB_INB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000088ull))
82 #define CVMX_IOB_INB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000070ull))
83 #define CVMX_IOB_INB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F0000080ull))
84 #define CVMX_IOB_INT_ENB (CVMX_ADD_IO_SEG(0x00011800F0000060ull))
85 #define CVMX_IOB_INT_SUM (CVMX_ADD_IO_SEG(0x00011800F0000058ull))
86 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
87 #define CVMX_IOB_N2C_L2C_PRI_CNT CVMX_IOB_N2C_L2C_PRI_CNT_FUNC()
88 static inline uint64_t CVMX_IOB_N2C_L2C_PRI_CNT_FUNC(void)
90 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
91 cvmx_warn("CVMX_IOB_N2C_L2C_PRI_CNT not supported on this chip\n");
92 return CVMX_ADD_IO_SEG(0x00011800F0000020ull);
95 #define CVMX_IOB_N2C_L2C_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000020ull))
97 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
98 #define CVMX_IOB_N2C_RSP_PRI_CNT CVMX_IOB_N2C_RSP_PRI_CNT_FUNC()
99 static inline uint64_t CVMX_IOB_N2C_RSP_PRI_CNT_FUNC(void)
101 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
102 cvmx_warn("CVMX_IOB_N2C_RSP_PRI_CNT not supported on this chip\n");
103 return CVMX_ADD_IO_SEG(0x00011800F0000008ull);
106 #define CVMX_IOB_N2C_RSP_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000008ull))
108 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
109 #define CVMX_IOB_OUTB_COM_PRI_CNT CVMX_IOB_OUTB_COM_PRI_CNT_FUNC()
110 static inline uint64_t CVMX_IOB_OUTB_COM_PRI_CNT_FUNC(void)
112 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CN68XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
113 cvmx_warn("CVMX_IOB_OUTB_COM_PRI_CNT not supported on this chip\n");
114 return CVMX_ADD_IO_SEG(0x00011800F0000040ull);
117 #define CVMX_IOB_OUTB_COM_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000040ull))
119 #define CVMX_IOB_OUTB_CONTROL_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000098ull))
120 #define CVMX_IOB_OUTB_CONTROL_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A8ull))
121 #define CVMX_IOB_OUTB_DATA_MATCH (CVMX_ADD_IO_SEG(0x00011800F0000090ull))
122 #define CVMX_IOB_OUTB_DATA_MATCH_ENB (CVMX_ADD_IO_SEG(0x00011800F00000A0ull))
123 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
124 #define CVMX_IOB_OUTB_FPA_PRI_CNT CVMX_IOB_OUTB_FPA_PRI_CNT_FUNC()
125 static inline uint64_t CVMX_IOB_OUTB_FPA_PRI_CNT_FUNC(void)
127 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CN68XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
128 cvmx_warn("CVMX_IOB_OUTB_FPA_PRI_CNT not supported on this chip\n");
129 return CVMX_ADD_IO_SEG(0x00011800F0000048ull);
132 #define CVMX_IOB_OUTB_FPA_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000048ull))
134 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
135 #define CVMX_IOB_OUTB_REQ_PRI_CNT CVMX_IOB_OUTB_REQ_PRI_CNT_FUNC()
136 static inline uint64_t CVMX_IOB_OUTB_REQ_PRI_CNT_FUNC(void)
138 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CN68XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
139 cvmx_warn("CVMX_IOB_OUTB_REQ_PRI_CNT not supported on this chip\n");
140 return CVMX_ADD_IO_SEG(0x00011800F0000038ull);
143 #define CVMX_IOB_OUTB_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000038ull))
145 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
146 #define CVMX_IOB_P2C_REQ_PRI_CNT CVMX_IOB_P2C_REQ_PRI_CNT_FUNC()
147 static inline uint64_t CVMX_IOB_P2C_REQ_PRI_CNT_FUNC(void)
149 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN56XX) || OCTEON_IS_MODEL(OCTEON_CN58XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
150 cvmx_warn("CVMX_IOB_P2C_REQ_PRI_CNT not supported on this chip\n");
151 return CVMX_ADD_IO_SEG(0x00011800F0000018ull);
154 #define CVMX_IOB_P2C_REQ_PRI_CNT (CVMX_ADD_IO_SEG(0x00011800F0000018ull))
156 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
157 #define CVMX_IOB_PKT_ERR CVMX_IOB_PKT_ERR_FUNC()
158 static inline uint64_t CVMX_IOB_PKT_ERR_FUNC(void)
160 if (!(OCTEON_IS_MODEL(OCTEON_CN3XXX) || OCTEON_IS_MODEL(OCTEON_CN5XXX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
161 cvmx_warn("CVMX_IOB_PKT_ERR not supported on this chip\n");
162 return CVMX_ADD_IO_SEG(0x00011800F0000068ull);
165 #define CVMX_IOB_PKT_ERR (CVMX_ADD_IO_SEG(0x00011800F0000068ull))
167 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
168 #define CVMX_IOB_TO_CMB_CREDITS CVMX_IOB_TO_CMB_CREDITS_FUNC()
169 static inline uint64_t CVMX_IOB_TO_CMB_CREDITS_FUNC(void)
171 if (!(OCTEON_IS_MODEL(OCTEON_CN52XX) || OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN63XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CN68XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX)))
172 cvmx_warn("CVMX_IOB_TO_CMB_CREDITS not supported on this chip\n");
173 return CVMX_ADD_IO_SEG(0x00011800F00000B0ull);
176 #define CVMX_IOB_TO_CMB_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00000B0ull))
178 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
179 #define CVMX_IOB_TO_NCB_DID_00_CREDITS CVMX_IOB_TO_NCB_DID_00_CREDITS_FUNC()
180 static inline uint64_t CVMX_IOB_TO_NCB_DID_00_CREDITS_FUNC(void)
182 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
183 cvmx_warn("CVMX_IOB_TO_NCB_DID_00_CREDITS not supported on this chip\n");
184 return CVMX_ADD_IO_SEG(0x00011800F0000800ull);
187 #define CVMX_IOB_TO_NCB_DID_00_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000800ull))
189 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
190 #define CVMX_IOB_TO_NCB_DID_111_CREDITS CVMX_IOB_TO_NCB_DID_111_CREDITS_FUNC()
191 static inline uint64_t CVMX_IOB_TO_NCB_DID_111_CREDITS_FUNC(void)
193 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
194 cvmx_warn("CVMX_IOB_TO_NCB_DID_111_CREDITS not supported on this chip\n");
195 return CVMX_ADD_IO_SEG(0x00011800F0000B78ull);
198 #define CVMX_IOB_TO_NCB_DID_111_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B78ull))
200 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
201 #define CVMX_IOB_TO_NCB_DID_223_CREDITS CVMX_IOB_TO_NCB_DID_223_CREDITS_FUNC()
202 static inline uint64_t CVMX_IOB_TO_NCB_DID_223_CREDITS_FUNC(void)
204 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
205 cvmx_warn("CVMX_IOB_TO_NCB_DID_223_CREDITS not supported on this chip\n");
206 return CVMX_ADD_IO_SEG(0x00011800F0000EF8ull);
209 #define CVMX_IOB_TO_NCB_DID_223_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000EF8ull))
211 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
212 #define CVMX_IOB_TO_NCB_DID_24_CREDITS CVMX_IOB_TO_NCB_DID_24_CREDITS_FUNC()
213 static inline uint64_t CVMX_IOB_TO_NCB_DID_24_CREDITS_FUNC(void)
215 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
216 cvmx_warn("CVMX_IOB_TO_NCB_DID_24_CREDITS not supported on this chip\n");
217 return CVMX_ADD_IO_SEG(0x00011800F00008C0ull);
220 #define CVMX_IOB_TO_NCB_DID_24_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00008C0ull))
222 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
223 #define CVMX_IOB_TO_NCB_DID_32_CREDITS CVMX_IOB_TO_NCB_DID_32_CREDITS_FUNC()
224 static inline uint64_t CVMX_IOB_TO_NCB_DID_32_CREDITS_FUNC(void)
226 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
227 cvmx_warn("CVMX_IOB_TO_NCB_DID_32_CREDITS not supported on this chip\n");
228 return CVMX_ADD_IO_SEG(0x00011800F0000900ull);
231 #define CVMX_IOB_TO_NCB_DID_32_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000900ull))
233 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
234 #define CVMX_IOB_TO_NCB_DID_40_CREDITS CVMX_IOB_TO_NCB_DID_40_CREDITS_FUNC()
235 static inline uint64_t CVMX_IOB_TO_NCB_DID_40_CREDITS_FUNC(void)
237 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
238 cvmx_warn("CVMX_IOB_TO_NCB_DID_40_CREDITS not supported on this chip\n");
239 return CVMX_ADD_IO_SEG(0x00011800F0000940ull);
242 #define CVMX_IOB_TO_NCB_DID_40_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000940ull))
244 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
245 #define CVMX_IOB_TO_NCB_DID_55_CREDITS CVMX_IOB_TO_NCB_DID_55_CREDITS_FUNC()
246 static inline uint64_t CVMX_IOB_TO_NCB_DID_55_CREDITS_FUNC(void)
248 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
249 cvmx_warn("CVMX_IOB_TO_NCB_DID_55_CREDITS not supported on this chip\n");
250 return CVMX_ADD_IO_SEG(0x00011800F00009B8ull);
253 #define CVMX_IOB_TO_NCB_DID_55_CREDITS (CVMX_ADD_IO_SEG(0x00011800F00009B8ull))
255 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
256 #define CVMX_IOB_TO_NCB_DID_64_CREDITS CVMX_IOB_TO_NCB_DID_64_CREDITS_FUNC()
257 static inline uint64_t CVMX_IOB_TO_NCB_DID_64_CREDITS_FUNC(void)
259 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
260 cvmx_warn("CVMX_IOB_TO_NCB_DID_64_CREDITS not supported on this chip\n");
261 return CVMX_ADD_IO_SEG(0x00011800F0000A00ull);
264 #define CVMX_IOB_TO_NCB_DID_64_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A00ull))
266 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
267 #define CVMX_IOB_TO_NCB_DID_79_CREDITS CVMX_IOB_TO_NCB_DID_79_CREDITS_FUNC()
268 static inline uint64_t CVMX_IOB_TO_NCB_DID_79_CREDITS_FUNC(void)
270 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
271 cvmx_warn("CVMX_IOB_TO_NCB_DID_79_CREDITS not supported on this chip\n");
272 return CVMX_ADD_IO_SEG(0x00011800F0000A78ull);
275 #define CVMX_IOB_TO_NCB_DID_79_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000A78ull))
277 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
278 #define CVMX_IOB_TO_NCB_DID_96_CREDITS CVMX_IOB_TO_NCB_DID_96_CREDITS_FUNC()
279 static inline uint64_t CVMX_IOB_TO_NCB_DID_96_CREDITS_FUNC(void)
281 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
282 cvmx_warn("CVMX_IOB_TO_NCB_DID_96_CREDITS not supported on this chip\n");
283 return CVMX_ADD_IO_SEG(0x00011800F0000B00ull);
286 #define CVMX_IOB_TO_NCB_DID_96_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B00ull))
288 #if CVMX_ENABLE_CSR_ADDRESS_CHECKING
289 #define CVMX_IOB_TO_NCB_DID_98_CREDITS CVMX_IOB_TO_NCB_DID_98_CREDITS_FUNC()
290 static inline uint64_t CVMX_IOB_TO_NCB_DID_98_CREDITS_FUNC(void)
292 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX)))
293 cvmx_warn("CVMX_IOB_TO_NCB_DID_98_CREDITS not supported on this chip\n");
294 return CVMX_ADD_IO_SEG(0x00011800F0000B10ull);
297 #define CVMX_IOB_TO_NCB_DID_98_CREDITS (CVMX_ADD_IO_SEG(0x00011800F0000B10ull))
301 * cvmx_iob_bist_status
303 * IOB_BIST_STATUS = BIST Status of IOB Memories
305 * The result of the BIST run on the IOB memories.
307 union cvmx_iob_bist_status {
309 struct cvmx_iob_bist_status_s {
310 #ifdef __BIG_ENDIAN_BITFIELD
311 uint64_t reserved_2_63 : 62;
312 uint64_t ibd : 1; /**< ibd_bist_mem0_status */
313 uint64_t icd : 1; /**< icd_ncb_fifo_bist_status */
317 uint64_t reserved_2_63 : 62;
320 struct cvmx_iob_bist_status_cn30xx {
321 #ifdef __BIG_ENDIAN_BITFIELD
322 uint64_t reserved_18_63 : 46;
323 uint64_t icnrcb : 1; /**< Reserved */
324 uint64_t icr0 : 1; /**< Reserved */
325 uint64_t icr1 : 1; /**< Reserved */
326 uint64_t icnr1 : 1; /**< Reserved */
327 uint64_t icnr0 : 1; /**< icnr_reg_mem0_bist_status */
328 uint64_t ibdr0 : 1; /**< ibdr_bist_req_fifo0_status */
329 uint64_t ibdr1 : 1; /**< ibdr_bist_req_fifo1_status */
330 uint64_t ibr0 : 1; /**< ibr_bist_rsp_fifo0_status */
331 uint64_t ibr1 : 1; /**< ibr_bist_rsp_fifo1_status */
332 uint64_t icnrt : 1; /**< Reserved */
333 uint64_t ibrq0 : 1; /**< ibrq_bist_req_fifo0_status */
334 uint64_t ibrq1 : 1; /**< ibrq_bist_req_fifo1_status */
335 uint64_t icrn0 : 1; /**< icr_ncb_bist_mem0_status */
336 uint64_t icrn1 : 1; /**< icr_ncb_bist_mem1_status */
337 uint64_t icrp0 : 1; /**< icr_pko_bist_mem0_status */
338 uint64_t icrp1 : 1; /**< icr_pko_bist_mem1_status */
339 uint64_t ibd : 1; /**< ibd_bist_mem0_status */
340 uint64_t icd : 1; /**< icd_ncb_fifo_bist_status */
360 uint64_t reserved_18_63 : 46;
363 struct cvmx_iob_bist_status_cn30xx cn31xx;
364 struct cvmx_iob_bist_status_cn30xx cn38xx;
365 struct cvmx_iob_bist_status_cn30xx cn38xxp2;
366 struct cvmx_iob_bist_status_cn30xx cn50xx;
367 struct cvmx_iob_bist_status_cn30xx cn52xx;
368 struct cvmx_iob_bist_status_cn30xx cn52xxp1;
369 struct cvmx_iob_bist_status_cn30xx cn56xx;
370 struct cvmx_iob_bist_status_cn30xx cn56xxp1;
371 struct cvmx_iob_bist_status_cn30xx cn58xx;
372 struct cvmx_iob_bist_status_cn30xx cn58xxp1;
373 struct cvmx_iob_bist_status_cn61xx {
374 #ifdef __BIG_ENDIAN_BITFIELD
375 uint64_t reserved_23_63 : 41;
376 uint64_t xmdfif : 1; /**< xmdfif_bist_status */
377 uint64_t xmcfif : 1; /**< xmcfif_bist_status */
378 uint64_t iorfif : 1; /**< iorfif_bist_status */
379 uint64_t rsdfif : 1; /**< rsdfif_bist_status */
380 uint64_t iocfif : 1; /**< iocfif_bist_status */
381 uint64_t icnrcb : 1; /**< icnr_cb_reg_fifo_bist_status */
382 uint64_t icr0 : 1; /**< icr_bist_req_fifo0_status */
383 uint64_t icr1 : 1; /**< icr_bist_req_fifo1_status */
384 uint64_t icnr1 : 1; /**< Reserved */
385 uint64_t icnr0 : 1; /**< icnr_reg_mem0_bist_status */
386 uint64_t ibdr0 : 1; /**< ibdr_bist_req_fifo0_status */
387 uint64_t ibdr1 : 1; /**< ibdr_bist_req_fifo1_status */
388 uint64_t ibr0 : 1; /**< ibr_bist_rsp_fifo0_status */
389 uint64_t ibr1 : 1; /**< ibr_bist_rsp_fifo1_status */
390 uint64_t icnrt : 1; /**< icnr_tag_cb_reg_fifo_bist_status */
391 uint64_t ibrq0 : 1; /**< ibrq_bist_req_fifo0_status */
392 uint64_t ibrq1 : 1; /**< ibrq_bist_req_fifo1_status */
393 uint64_t icrn0 : 1; /**< icr_ncb_bist_mem0_status */
394 uint64_t icrn1 : 1; /**< icr_ncb_bist_mem1_status */
395 uint64_t icrp0 : 1; /**< icr_pko_bist_mem0_status */
396 uint64_t icrp1 : 1; /**< icr_pko_bist_mem1_status */
397 uint64_t ibd : 1; /**< ibd_bist_mem0_status */
398 uint64_t icd : 1; /**< icd_ncb_fifo_bist_status */
423 uint64_t reserved_23_63 : 41;
426 struct cvmx_iob_bist_status_cn61xx cn63xx;
427 struct cvmx_iob_bist_status_cn61xx cn63xxp1;
428 struct cvmx_iob_bist_status_cn61xx cn66xx;
429 struct cvmx_iob_bist_status_cn68xx {
430 #ifdef __BIG_ENDIAN_BITFIELD
431 uint64_t reserved_18_63 : 46;
432 uint64_t xmdfif : 1; /**< xmdfif_bist_status */
433 uint64_t xmcfif : 1; /**< xmcfif_bist_status */
434 uint64_t iorfif : 1; /**< iorfif_bist_status */
435 uint64_t rsdfif : 1; /**< rsdfif_bist_status */
436 uint64_t iocfif : 1; /**< iocfif_bist_status */
437 uint64_t icnrcb : 1; /**< icnr_cb_reg_fifo_bist_status */
438 uint64_t icr0 : 1; /**< icr_bist_req_fifo0_status */
439 uint64_t icr1 : 1; /**< icr_bist_req_fifo1_status */
440 uint64_t icnr0 : 1; /**< icnr_reg_mem0_bist_status */
441 uint64_t ibr0 : 1; /**< ibr_bist_rsp_fifo0_status */
442 uint64_t ibr1 : 1; /**< ibr_bist_rsp_fifo1_status */
443 uint64_t icnrt : 1; /**< icnr_tag_cb_reg_fifo_bist_status */
444 uint64_t ibrq0 : 1; /**< ibrq_bist_req_fifo0_status */
445 uint64_t ibrq1 : 1; /**< ibrq_bist_req_fifo1_status */
446 uint64_t icrn0 : 1; /**< icr_ncb_bist_mem0_status */
447 uint64_t icrn1 : 1; /**< icr_ncb_bist_mem1_status */
448 uint64_t ibd : 1; /**< ibd_bist_mem0_status */
449 uint64_t icd : 1; /**< icd_ncb_fifo_bist_status */
469 uint64_t reserved_18_63 : 46;
472 struct cvmx_iob_bist_status_cn68xx cn68xxp1;
473 struct cvmx_iob_bist_status_cn61xx cnf71xx;
475 typedef union cvmx_iob_bist_status cvmx_iob_bist_status_t;
478 * cvmx_iob_ctl_status
480 * IOB Control Status = IOB Control and Status Register
482 * Provides control for IOB functions.
484 union cvmx_iob_ctl_status {
486 struct cvmx_iob_ctl_status_s {
487 #ifdef __BIG_ENDIAN_BITFIELD
488 uint64_t reserved_11_63 : 53;
489 uint64_t fif_dly : 1; /**< Delay async FIFO counts to be used when clock ratio
490 is greater then 3:1. Writes should be followed by an
492 uint64_t xmc_per : 4; /**< IBC XMC PUSH EARLY */
493 uint64_t reserved_5_5 : 1;
494 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
495 matchers. PASS2 FIELD. */
496 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
497 matchers. PASS2 FIELD. */
498 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
499 '0' is for big-endian and '1' is for little-endian. */
500 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
501 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
502 big-endian and '1' is for little-endian. */
504 uint64_t fau_end : 1;
505 uint64_t dwb_enb : 1;
506 uint64_t pko_enb : 1;
507 uint64_t inb_mat : 1;
508 uint64_t outb_mat : 1;
509 uint64_t reserved_5_5 : 1;
510 uint64_t xmc_per : 4;
511 uint64_t fif_dly : 1;
512 uint64_t reserved_11_63 : 53;
515 struct cvmx_iob_ctl_status_cn30xx {
516 #ifdef __BIG_ENDIAN_BITFIELD
517 uint64_t reserved_5_63 : 59;
518 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
520 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
522 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
523 '0' is for big-endian and '1' is for little-endian. */
524 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
525 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
526 big-endian and '1' is for little-endian. */
528 uint64_t fau_end : 1;
529 uint64_t dwb_enb : 1;
530 uint64_t pko_enb : 1;
531 uint64_t inb_mat : 1;
532 uint64_t outb_mat : 1;
533 uint64_t reserved_5_63 : 59;
536 struct cvmx_iob_ctl_status_cn30xx cn31xx;
537 struct cvmx_iob_ctl_status_cn30xx cn38xx;
538 struct cvmx_iob_ctl_status_cn30xx cn38xxp2;
539 struct cvmx_iob_ctl_status_cn30xx cn50xx;
540 struct cvmx_iob_ctl_status_cn52xx {
541 #ifdef __BIG_ENDIAN_BITFIELD
542 uint64_t reserved_6_63 : 58;
543 uint64_t rr_mode : 1; /**< When set to '1' will enable Round-Robin mode of next
544 transaction that could arbitrate for the XMB. */
545 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
546 matchers. PASS2 FIELD. */
547 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
548 matchers. PASS2 FIELD. */
549 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
550 '0' is for big-endian and '1' is for little-endian. */
551 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
552 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
553 big-endian and '1' is for little-endian. */
555 uint64_t fau_end : 1;
556 uint64_t dwb_enb : 1;
557 uint64_t pko_enb : 1;
558 uint64_t inb_mat : 1;
559 uint64_t outb_mat : 1;
560 uint64_t rr_mode : 1;
561 uint64_t reserved_6_63 : 58;
564 struct cvmx_iob_ctl_status_cn30xx cn52xxp1;
565 struct cvmx_iob_ctl_status_cn30xx cn56xx;
566 struct cvmx_iob_ctl_status_cn30xx cn56xxp1;
567 struct cvmx_iob_ctl_status_cn30xx cn58xx;
568 struct cvmx_iob_ctl_status_cn30xx cn58xxp1;
569 struct cvmx_iob_ctl_status_cn61xx {
570 #ifdef __BIG_ENDIAN_BITFIELD
571 uint64_t reserved_11_63 : 53;
572 uint64_t fif_dly : 1; /**< Delay async FIFO counts to be used when clock ratio
573 is greater then 3:1. Writes should be followed by an
575 uint64_t xmc_per : 4; /**< IBC XMC PUSH EARLY */
576 uint64_t rr_mode : 1; /**< When set to '1' will enable Round-Robin mode of next
577 transaction that could arbitrate for the XMB. */
578 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
579 matchers. PASS2 FIELD. */
580 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
581 matchers. PASS2 FIELD. */
582 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
583 '0' is for big-endian and '1' is for little-endian. */
584 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
585 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
586 big-endian and '1' is for little-endian. */
588 uint64_t fau_end : 1;
589 uint64_t dwb_enb : 1;
590 uint64_t pko_enb : 1;
591 uint64_t inb_mat : 1;
592 uint64_t outb_mat : 1;
593 uint64_t rr_mode : 1;
594 uint64_t xmc_per : 4;
595 uint64_t fif_dly : 1;
596 uint64_t reserved_11_63 : 53;
599 struct cvmx_iob_ctl_status_cn63xx {
600 #ifdef __BIG_ENDIAN_BITFIELD
601 uint64_t reserved_10_63 : 54;
602 uint64_t xmc_per : 4; /**< IBC XMC PUSH EARLY */
603 uint64_t rr_mode : 1; /**< When set to '1' will enable Round-Robin mode of next
604 transaction that could arbitrate for the XMB. */
605 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
606 matchers. PASS2 FIELD. */
607 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
608 matchers. PASS2 FIELD. */
609 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
610 '0' is for big-endian and '1' is for little-endian. */
611 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
612 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
613 big-endian and '1' is for little-endian. */
615 uint64_t fau_end : 1;
616 uint64_t dwb_enb : 1;
617 uint64_t pko_enb : 1;
618 uint64_t inb_mat : 1;
619 uint64_t outb_mat : 1;
620 uint64_t rr_mode : 1;
621 uint64_t xmc_per : 4;
622 uint64_t reserved_10_63 : 54;
625 struct cvmx_iob_ctl_status_cn63xx cn63xxp1;
626 struct cvmx_iob_ctl_status_cn61xx cn66xx;
627 struct cvmx_iob_ctl_status_cn68xx {
628 #ifdef __BIG_ENDIAN_BITFIELD
629 uint64_t reserved_11_63 : 53;
630 uint64_t fif_dly : 1; /**< Delay async FIFO counts to be used when clock ratio
631 is greater then 3:1. Writes should be followed by an
633 uint64_t xmc_per : 4; /**< IBC XMC PUSH EARLY */
634 uint64_t rsvr5 : 1; /**< Reserved */
635 uint64_t outb_mat : 1; /**< Was a match on the outbound bus to the inb pattern
637 uint64_t inb_mat : 1; /**< Was a match on the inbound bus to the inb pattern
639 uint64_t pko_enb : 1; /**< Toggles the endian style of the FAU for the PKO.
640 '0' is for big-endian and '1' is for little-endian. */
641 uint64_t dwb_enb : 1; /**< Enables the DWB function of the IOB. */
642 uint64_t fau_end : 1; /**< Toggles the endian style of the FAU. '0' is for
643 big-endian and '1' is for little-endian. */
645 uint64_t fau_end : 1;
646 uint64_t dwb_enb : 1;
647 uint64_t pko_enb : 1;
648 uint64_t inb_mat : 1;
649 uint64_t outb_mat : 1;
651 uint64_t xmc_per : 4;
652 uint64_t fif_dly : 1;
653 uint64_t reserved_11_63 : 53;
656 struct cvmx_iob_ctl_status_cn68xx cn68xxp1;
657 struct cvmx_iob_ctl_status_cn61xx cnf71xx;
659 typedef union cvmx_iob_ctl_status cvmx_iob_ctl_status_t;
662 * cvmx_iob_dwb_pri_cnt
664 * DWB To CMB Priority Counter = Don't Write Back to CMB Priority Counter Enable and Timer Value
666 * Enables and supplies the timeout count for raising the priority of Don't Write Back request to the L2C.
668 union cvmx_iob_dwb_pri_cnt {
670 struct cvmx_iob_dwb_pri_cnt_s {
671 #ifdef __BIG_ENDIAN_BITFIELD
672 uint64_t reserved_16_63 : 48;
673 uint64_t cnt_enb : 1; /**< Enables the raising of CMB access priority
674 when CNT_VAL is reached. */
675 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
676 the priority for access to CMB. */
678 uint64_t cnt_val : 15;
679 uint64_t cnt_enb : 1;
680 uint64_t reserved_16_63 : 48;
683 struct cvmx_iob_dwb_pri_cnt_s cn38xx;
684 struct cvmx_iob_dwb_pri_cnt_s cn38xxp2;
685 struct cvmx_iob_dwb_pri_cnt_s cn52xx;
686 struct cvmx_iob_dwb_pri_cnt_s cn52xxp1;
687 struct cvmx_iob_dwb_pri_cnt_s cn56xx;
688 struct cvmx_iob_dwb_pri_cnt_s cn56xxp1;
689 struct cvmx_iob_dwb_pri_cnt_s cn58xx;
690 struct cvmx_iob_dwb_pri_cnt_s cn58xxp1;
691 struct cvmx_iob_dwb_pri_cnt_s cn61xx;
692 struct cvmx_iob_dwb_pri_cnt_s cn63xx;
693 struct cvmx_iob_dwb_pri_cnt_s cn63xxp1;
694 struct cvmx_iob_dwb_pri_cnt_s cn66xx;
695 struct cvmx_iob_dwb_pri_cnt_s cnf71xx;
697 typedef union cvmx_iob_dwb_pri_cnt cvmx_iob_dwb_pri_cnt_t;
700 * cvmx_iob_fau_timeout
702 * FAU Timeout = Fetch and Add Unit Tag-Switch Timeout
704 * How many clokc ticks the FAU unit will wait for a tag-switch before timeing out.
707 union cvmx_iob_fau_timeout {
709 struct cvmx_iob_fau_timeout_s {
710 #ifdef __BIG_ENDIAN_BITFIELD
711 uint64_t reserved_13_63 : 51;
712 uint64_t tout_enb : 1; /**< The enable for the FAU timeout feature.
713 '1' will enable the timeout, '0' will disable. */
714 uint64_t tout_val : 12; /**< When a tag request arrives from the PP a timer is
715 started associate with that PP. The timer which
716 increments every 256 eclks is compared to TOUT_VAL.
717 When the two are equal the IOB will flag the tag
718 request to complete as a time-out tag operation.
719 The 256 count timer used to increment the PP
720 associated timer is always running so the first
721 increment of the PP associated timer may occur any
722 where within the first 256 eclks. Note that '0'
723 is an illegal value. */
725 uint64_t tout_val : 12;
726 uint64_t tout_enb : 1;
727 uint64_t reserved_13_63 : 51;
730 struct cvmx_iob_fau_timeout_s cn30xx;
731 struct cvmx_iob_fau_timeout_s cn31xx;
732 struct cvmx_iob_fau_timeout_s cn38xx;
733 struct cvmx_iob_fau_timeout_s cn38xxp2;
734 struct cvmx_iob_fau_timeout_s cn50xx;
735 struct cvmx_iob_fau_timeout_s cn52xx;
736 struct cvmx_iob_fau_timeout_s cn52xxp1;
737 struct cvmx_iob_fau_timeout_s cn56xx;
738 struct cvmx_iob_fau_timeout_s cn56xxp1;
739 struct cvmx_iob_fau_timeout_s cn58xx;
740 struct cvmx_iob_fau_timeout_s cn58xxp1;
741 struct cvmx_iob_fau_timeout_s cn61xx;
742 struct cvmx_iob_fau_timeout_s cn63xx;
743 struct cvmx_iob_fau_timeout_s cn63xxp1;
744 struct cvmx_iob_fau_timeout_s cn66xx;
745 struct cvmx_iob_fau_timeout_s cn68xx;
746 struct cvmx_iob_fau_timeout_s cn68xxp1;
747 struct cvmx_iob_fau_timeout_s cnf71xx;
749 typedef union cvmx_iob_fau_timeout cvmx_iob_fau_timeout_t;
752 * cvmx_iob_i2c_pri_cnt
754 * IPD To CMB Store Priority Counter = IPD to CMB Store Priority Counter Enable and Timer Value
756 * Enables and supplies the timeout count for raising the priority of IPD Store access to the CMB.
758 union cvmx_iob_i2c_pri_cnt {
760 struct cvmx_iob_i2c_pri_cnt_s {
761 #ifdef __BIG_ENDIAN_BITFIELD
762 uint64_t reserved_16_63 : 48;
763 uint64_t cnt_enb : 1; /**< Enables the raising of CMB access priority
764 when CNT_VAL is reached. */
765 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
766 the priority for access to CMB. */
768 uint64_t cnt_val : 15;
769 uint64_t cnt_enb : 1;
770 uint64_t reserved_16_63 : 48;
773 struct cvmx_iob_i2c_pri_cnt_s cn38xx;
774 struct cvmx_iob_i2c_pri_cnt_s cn38xxp2;
775 struct cvmx_iob_i2c_pri_cnt_s cn52xx;
776 struct cvmx_iob_i2c_pri_cnt_s cn52xxp1;
777 struct cvmx_iob_i2c_pri_cnt_s cn56xx;
778 struct cvmx_iob_i2c_pri_cnt_s cn56xxp1;
779 struct cvmx_iob_i2c_pri_cnt_s cn58xx;
780 struct cvmx_iob_i2c_pri_cnt_s cn58xxp1;
781 struct cvmx_iob_i2c_pri_cnt_s cn61xx;
782 struct cvmx_iob_i2c_pri_cnt_s cn63xx;
783 struct cvmx_iob_i2c_pri_cnt_s cn63xxp1;
784 struct cvmx_iob_i2c_pri_cnt_s cn66xx;
785 struct cvmx_iob_i2c_pri_cnt_s cnf71xx;
787 typedef union cvmx_iob_i2c_pri_cnt cvmx_iob_i2c_pri_cnt_t;
790 * cvmx_iob_inb_control_match
792 * IOB_INB_CONTROL_MATCH = IOB Inbound Control Match
794 * Match pattern for the inbound control to set the INB_MATCH_BIT. PASS-2 Register
796 union cvmx_iob_inb_control_match {
798 struct cvmx_iob_inb_control_match_s {
799 #ifdef __BIG_ENDIAN_BITFIELD
800 uint64_t reserved_29_63 : 35;
801 uint64_t mask : 8; /**< Pattern to match on the inbound NCB. */
802 uint64_t opc : 4; /**< Pattern to match on the inbound NCB. */
803 uint64_t dst : 9; /**< Pattern to match on the inbound NCB. */
804 uint64_t src : 8; /**< Pattern to match on the inbound NCB. */
810 uint64_t reserved_29_63 : 35;
813 struct cvmx_iob_inb_control_match_s cn30xx;
814 struct cvmx_iob_inb_control_match_s cn31xx;
815 struct cvmx_iob_inb_control_match_s cn38xx;
816 struct cvmx_iob_inb_control_match_s cn38xxp2;
817 struct cvmx_iob_inb_control_match_s cn50xx;
818 struct cvmx_iob_inb_control_match_s cn52xx;
819 struct cvmx_iob_inb_control_match_s cn52xxp1;
820 struct cvmx_iob_inb_control_match_s cn56xx;
821 struct cvmx_iob_inb_control_match_s cn56xxp1;
822 struct cvmx_iob_inb_control_match_s cn58xx;
823 struct cvmx_iob_inb_control_match_s cn58xxp1;
824 struct cvmx_iob_inb_control_match_s cn61xx;
825 struct cvmx_iob_inb_control_match_s cn63xx;
826 struct cvmx_iob_inb_control_match_s cn63xxp1;
827 struct cvmx_iob_inb_control_match_s cn66xx;
828 struct cvmx_iob_inb_control_match_s cn68xx;
829 struct cvmx_iob_inb_control_match_s cn68xxp1;
830 struct cvmx_iob_inb_control_match_s cnf71xx;
832 typedef union cvmx_iob_inb_control_match cvmx_iob_inb_control_match_t;
835 * cvmx_iob_inb_control_match_enb
837 * IOB_INB_CONTROL_MATCH_ENB = IOB Inbound Control Match Enable
839 * Enables the match of the corresponding bit in the IOB_INB_CONTROL_MATCH reister. PASS-2 Register
841 union cvmx_iob_inb_control_match_enb {
843 struct cvmx_iob_inb_control_match_enb_s {
844 #ifdef __BIG_ENDIAN_BITFIELD
845 uint64_t reserved_29_63 : 35;
846 uint64_t mask : 8; /**< Pattern to match on the inbound NCB. */
847 uint64_t opc : 4; /**< Pattern to match on the inbound NCB. */
848 uint64_t dst : 9; /**< Pattern to match on the inbound NCB. */
849 uint64_t src : 8; /**< Pattern to match on the inbound NCB. */
855 uint64_t reserved_29_63 : 35;
858 struct cvmx_iob_inb_control_match_enb_s cn30xx;
859 struct cvmx_iob_inb_control_match_enb_s cn31xx;
860 struct cvmx_iob_inb_control_match_enb_s cn38xx;
861 struct cvmx_iob_inb_control_match_enb_s cn38xxp2;
862 struct cvmx_iob_inb_control_match_enb_s cn50xx;
863 struct cvmx_iob_inb_control_match_enb_s cn52xx;
864 struct cvmx_iob_inb_control_match_enb_s cn52xxp1;
865 struct cvmx_iob_inb_control_match_enb_s cn56xx;
866 struct cvmx_iob_inb_control_match_enb_s cn56xxp1;
867 struct cvmx_iob_inb_control_match_enb_s cn58xx;
868 struct cvmx_iob_inb_control_match_enb_s cn58xxp1;
869 struct cvmx_iob_inb_control_match_enb_s cn61xx;
870 struct cvmx_iob_inb_control_match_enb_s cn63xx;
871 struct cvmx_iob_inb_control_match_enb_s cn63xxp1;
872 struct cvmx_iob_inb_control_match_enb_s cn66xx;
873 struct cvmx_iob_inb_control_match_enb_s cn68xx;
874 struct cvmx_iob_inb_control_match_enb_s cn68xxp1;
875 struct cvmx_iob_inb_control_match_enb_s cnf71xx;
877 typedef union cvmx_iob_inb_control_match_enb cvmx_iob_inb_control_match_enb_t;
880 * cvmx_iob_inb_data_match
882 * IOB_INB_DATA_MATCH = IOB Inbound Data Match
884 * Match pattern for the inbound data to set the INB_MATCH_BIT. PASS-2 Register
886 union cvmx_iob_inb_data_match {
888 struct cvmx_iob_inb_data_match_s {
889 #ifdef __BIG_ENDIAN_BITFIELD
890 uint64_t data : 64; /**< Pattern to match on the inbound NCB. */
895 struct cvmx_iob_inb_data_match_s cn30xx;
896 struct cvmx_iob_inb_data_match_s cn31xx;
897 struct cvmx_iob_inb_data_match_s cn38xx;
898 struct cvmx_iob_inb_data_match_s cn38xxp2;
899 struct cvmx_iob_inb_data_match_s cn50xx;
900 struct cvmx_iob_inb_data_match_s cn52xx;
901 struct cvmx_iob_inb_data_match_s cn52xxp1;
902 struct cvmx_iob_inb_data_match_s cn56xx;
903 struct cvmx_iob_inb_data_match_s cn56xxp1;
904 struct cvmx_iob_inb_data_match_s cn58xx;
905 struct cvmx_iob_inb_data_match_s cn58xxp1;
906 struct cvmx_iob_inb_data_match_s cn61xx;
907 struct cvmx_iob_inb_data_match_s cn63xx;
908 struct cvmx_iob_inb_data_match_s cn63xxp1;
909 struct cvmx_iob_inb_data_match_s cn66xx;
910 struct cvmx_iob_inb_data_match_s cn68xx;
911 struct cvmx_iob_inb_data_match_s cn68xxp1;
912 struct cvmx_iob_inb_data_match_s cnf71xx;
914 typedef union cvmx_iob_inb_data_match cvmx_iob_inb_data_match_t;
917 * cvmx_iob_inb_data_match_enb
919 * IOB_INB_DATA_MATCH_ENB = IOB Inbound Data Match Enable
921 * Enables the match of the corresponding bit in the IOB_INB_DATA_MATCH reister. PASS-2 Register
923 union cvmx_iob_inb_data_match_enb {
925 struct cvmx_iob_inb_data_match_enb_s {
926 #ifdef __BIG_ENDIAN_BITFIELD
927 uint64_t data : 64; /**< Bit to enable match of. */
932 struct cvmx_iob_inb_data_match_enb_s cn30xx;
933 struct cvmx_iob_inb_data_match_enb_s cn31xx;
934 struct cvmx_iob_inb_data_match_enb_s cn38xx;
935 struct cvmx_iob_inb_data_match_enb_s cn38xxp2;
936 struct cvmx_iob_inb_data_match_enb_s cn50xx;
937 struct cvmx_iob_inb_data_match_enb_s cn52xx;
938 struct cvmx_iob_inb_data_match_enb_s cn52xxp1;
939 struct cvmx_iob_inb_data_match_enb_s cn56xx;
940 struct cvmx_iob_inb_data_match_enb_s cn56xxp1;
941 struct cvmx_iob_inb_data_match_enb_s cn58xx;
942 struct cvmx_iob_inb_data_match_enb_s cn58xxp1;
943 struct cvmx_iob_inb_data_match_enb_s cn61xx;
944 struct cvmx_iob_inb_data_match_enb_s cn63xx;
945 struct cvmx_iob_inb_data_match_enb_s cn63xxp1;
946 struct cvmx_iob_inb_data_match_enb_s cn66xx;
947 struct cvmx_iob_inb_data_match_enb_s cn68xx;
948 struct cvmx_iob_inb_data_match_enb_s cn68xxp1;
949 struct cvmx_iob_inb_data_match_enb_s cnf71xx;
951 typedef union cvmx_iob_inb_data_match_enb cvmx_iob_inb_data_match_enb_t;
956 * IOB_INT_ENB = IOB's Interrupt Enable
958 * The IOB's interrupt enable register. This is a PASS-2 register.
960 union cvmx_iob_int_enb {
962 struct cvmx_iob_int_enb_s {
963 #ifdef __BIG_ENDIAN_BITFIELD
964 uint64_t reserved_6_63 : 58;
965 uint64_t p_dat : 1; /**< When set (1) and bit 5 of the IOB_INT_SUM
966 register is asserted the IOB will assert an
968 uint64_t np_dat : 1; /**< When set (1) and bit 4 of the IOB_INT_SUM
969 register is asserted the IOB will assert an
971 uint64_t p_eop : 1; /**< When set (1) and bit 3 of the IOB_INT_SUM
972 register is asserted the IOB will assert an
974 uint64_t p_sop : 1; /**< When set (1) and bit 2 of the IOB_INT_SUM
975 register is asserted the IOB will assert an
977 uint64_t np_eop : 1; /**< When set (1) and bit 1 of the IOB_INT_SUM
978 register is asserted the IOB will assert an
980 uint64_t np_sop : 1; /**< When set (1) and bit 0 of the IOB_INT_SUM
981 register is asserted the IOB will assert an
990 uint64_t reserved_6_63 : 58;
993 struct cvmx_iob_int_enb_cn30xx {
994 #ifdef __BIG_ENDIAN_BITFIELD
995 uint64_t reserved_4_63 : 60;
996 uint64_t p_eop : 1; /**< When set (1) and bit 3 of the IOB_INT_SUM
997 register is asserted the IOB will assert an
999 uint64_t p_sop : 1; /**< When set (1) and bit 2 of the IOB_INT_SUM
1000 register is asserted the IOB will assert an
1002 uint64_t np_eop : 1; /**< When set (1) and bit 1 of the IOB_INT_SUM
1003 register is asserted the IOB will assert an
1005 uint64_t np_sop : 1; /**< When set (1) and bit 0 of the IOB_INT_SUM
1006 register is asserted the IOB will assert an
1009 uint64_t np_sop : 1;
1010 uint64_t np_eop : 1;
1013 uint64_t reserved_4_63 : 60;
1016 struct cvmx_iob_int_enb_cn30xx cn31xx;
1017 struct cvmx_iob_int_enb_cn30xx cn38xx;
1018 struct cvmx_iob_int_enb_cn30xx cn38xxp2;
1019 struct cvmx_iob_int_enb_s cn50xx;
1020 struct cvmx_iob_int_enb_s cn52xx;
1021 struct cvmx_iob_int_enb_s cn52xxp1;
1022 struct cvmx_iob_int_enb_s cn56xx;
1023 struct cvmx_iob_int_enb_s cn56xxp1;
1024 struct cvmx_iob_int_enb_s cn58xx;
1025 struct cvmx_iob_int_enb_s cn58xxp1;
1026 struct cvmx_iob_int_enb_s cn61xx;
1027 struct cvmx_iob_int_enb_s cn63xx;
1028 struct cvmx_iob_int_enb_s cn63xxp1;
1029 struct cvmx_iob_int_enb_s cn66xx;
1030 struct cvmx_iob_int_enb_cn68xx {
1031 #ifdef __BIG_ENDIAN_BITFIELD
1032 uint64_t reserved_0_63 : 64;
1034 uint64_t reserved_0_63 : 64;
1037 struct cvmx_iob_int_enb_cn68xx cn68xxp1;
1038 struct cvmx_iob_int_enb_s cnf71xx;
1040 typedef union cvmx_iob_int_enb cvmx_iob_int_enb_t;
1045 * IOB_INT_SUM = IOB's Interrupt Summary Register
1047 * Contains the diffrent interrupt summary bits of the IOB. This is a PASS-2 register.
1049 union cvmx_iob_int_sum {
1051 struct cvmx_iob_int_sum_s {
1052 #ifdef __BIG_ENDIAN_BITFIELD
1053 uint64_t reserved_6_63 : 58;
1054 uint64_t p_dat : 1; /**< Set when a data arrives before a SOP for the same
1055 port for a passthrough packet.
1056 The first detected error associated with bits [5:0]
1057 of this register will only be set here. A new bit
1058 can be set when the previous reported bit is cleared. */
1059 uint64_t np_dat : 1; /**< Set when a data arrives before a SOP for the same
1060 port for a non-passthrough packet.
1061 The first detected error associated with bits [5:0]
1062 of this register will only be set here. A new bit
1063 can be set when the previous reported bit is cleared. */
1064 uint64_t p_eop : 1; /**< Set when a EOP is followed by an EOP for the same
1065 port for a passthrough packet.
1066 The first detected error associated with bits [5:0]
1067 of this register will only be set here. A new bit
1068 can be set when the previous reported bit is cleared. */
1069 uint64_t p_sop : 1; /**< Set when a SOP is followed by an SOP for the same
1070 port for a passthrough packet.
1071 The first detected error associated with bits [5:0]
1072 of this register will only be set here. A new bit
1073 can be set when the previous reported bit is cleared. */
1074 uint64_t np_eop : 1; /**< Set when a EOP is followed by an EOP for the same
1075 port for a non-passthrough packet.
1076 The first detected error associated with bits [5:0]
1077 of this register will only be set here. A new bit
1078 can be set when the previous reported bit is cleared. */
1079 uint64_t np_sop : 1; /**< Set when a SOP is followed by an SOP for the same
1080 port for a non-passthrough packet.
1081 The first detected error associated with bits [5:0]
1082 of this register will only be set here. A new bit
1083 can be set when the previous reported bit is cleared. */
1085 uint64_t np_sop : 1;
1086 uint64_t np_eop : 1;
1089 uint64_t np_dat : 1;
1091 uint64_t reserved_6_63 : 58;
1094 struct cvmx_iob_int_sum_cn30xx {
1095 #ifdef __BIG_ENDIAN_BITFIELD
1096 uint64_t reserved_4_63 : 60;
1097 uint64_t p_eop : 1; /**< Set when a EOP is followed by an EOP for the same
1098 port for a passthrough packet.
1099 The first detected error associated with bits [3:0]
1100 of this register will only be set here. A new bit
1101 can be set when the previous reported bit is cleared. */
1102 uint64_t p_sop : 1; /**< Set when a SOP is followed by an SOP for the same
1103 port for a passthrough packet.
1104 The first detected error associated with bits [3:0]
1105 of this register will only be set here. A new bit
1106 can be set when the previous reported bit is cleared. */
1107 uint64_t np_eop : 1; /**< Set when a EOP is followed by an EOP for the same
1108 port for a non-passthrough packet.
1109 The first detected error associated with bits [3:0]
1110 of this register will only be set here. A new bit
1111 can be set when the previous reported bit is cleared. */
1112 uint64_t np_sop : 1; /**< Set when a SOP is followed by an SOP for the same
1113 port for a non-passthrough packet.
1114 The first detected error associated with bits [3:0]
1115 of this register will only be set here. A new bit
1116 can be set when the previous reported bit is cleared. */
1118 uint64_t np_sop : 1;
1119 uint64_t np_eop : 1;
1122 uint64_t reserved_4_63 : 60;
1125 struct cvmx_iob_int_sum_cn30xx cn31xx;
1126 struct cvmx_iob_int_sum_cn30xx cn38xx;
1127 struct cvmx_iob_int_sum_cn30xx cn38xxp2;
1128 struct cvmx_iob_int_sum_s cn50xx;
1129 struct cvmx_iob_int_sum_s cn52xx;
1130 struct cvmx_iob_int_sum_s cn52xxp1;
1131 struct cvmx_iob_int_sum_s cn56xx;
1132 struct cvmx_iob_int_sum_s cn56xxp1;
1133 struct cvmx_iob_int_sum_s cn58xx;
1134 struct cvmx_iob_int_sum_s cn58xxp1;
1135 struct cvmx_iob_int_sum_s cn61xx;
1136 struct cvmx_iob_int_sum_s cn63xx;
1137 struct cvmx_iob_int_sum_s cn63xxp1;
1138 struct cvmx_iob_int_sum_s cn66xx;
1139 struct cvmx_iob_int_sum_cn68xx {
1140 #ifdef __BIG_ENDIAN_BITFIELD
1141 uint64_t reserved_0_63 : 64;
1143 uint64_t reserved_0_63 : 64;
1146 struct cvmx_iob_int_sum_cn68xx cn68xxp1;
1147 struct cvmx_iob_int_sum_s cnf71xx;
1149 typedef union cvmx_iob_int_sum cvmx_iob_int_sum_t;
1152 * cvmx_iob_n2c_l2c_pri_cnt
1154 * NCB To CMB L2C Priority Counter = NCB to CMB L2C Priority Counter Enable and Timer Value
1156 * Enables and supplies the timeout count for raising the priority of NCB Store/Load access to the CMB.
1158 union cvmx_iob_n2c_l2c_pri_cnt {
1160 struct cvmx_iob_n2c_l2c_pri_cnt_s {
1161 #ifdef __BIG_ENDIAN_BITFIELD
1162 uint64_t reserved_16_63 : 48;
1163 uint64_t cnt_enb : 1; /**< Enables the raising of CMB access priority
1164 when CNT_VAL is reached. */
1165 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1166 the priority for access to CMB. */
1168 uint64_t cnt_val : 15;
1169 uint64_t cnt_enb : 1;
1170 uint64_t reserved_16_63 : 48;
1173 struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xx;
1174 struct cvmx_iob_n2c_l2c_pri_cnt_s cn38xxp2;
1175 struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xx;
1176 struct cvmx_iob_n2c_l2c_pri_cnt_s cn52xxp1;
1177 struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xx;
1178 struct cvmx_iob_n2c_l2c_pri_cnt_s cn56xxp1;
1179 struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xx;
1180 struct cvmx_iob_n2c_l2c_pri_cnt_s cn58xxp1;
1181 struct cvmx_iob_n2c_l2c_pri_cnt_s cn61xx;
1182 struct cvmx_iob_n2c_l2c_pri_cnt_s cn63xx;
1183 struct cvmx_iob_n2c_l2c_pri_cnt_s cn63xxp1;
1184 struct cvmx_iob_n2c_l2c_pri_cnt_s cn66xx;
1185 struct cvmx_iob_n2c_l2c_pri_cnt_s cnf71xx;
1187 typedef union cvmx_iob_n2c_l2c_pri_cnt cvmx_iob_n2c_l2c_pri_cnt_t;
1190 * cvmx_iob_n2c_rsp_pri_cnt
1192 * NCB To CMB Response Priority Counter = NCB to CMB Response Priority Counter Enable and Timer Value
1194 * Enables and supplies the timeout count for raising the priority of NCB Responses access to the CMB.
1196 union cvmx_iob_n2c_rsp_pri_cnt {
1198 struct cvmx_iob_n2c_rsp_pri_cnt_s {
1199 #ifdef __BIG_ENDIAN_BITFIELD
1200 uint64_t reserved_16_63 : 48;
1201 uint64_t cnt_enb : 1; /**< Enables the raising of CMB access priority
1202 when CNT_VAL is reached. */
1203 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1204 the priority for access to CMB. */
1206 uint64_t cnt_val : 15;
1207 uint64_t cnt_enb : 1;
1208 uint64_t reserved_16_63 : 48;
1211 struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xx;
1212 struct cvmx_iob_n2c_rsp_pri_cnt_s cn38xxp2;
1213 struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xx;
1214 struct cvmx_iob_n2c_rsp_pri_cnt_s cn52xxp1;
1215 struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xx;
1216 struct cvmx_iob_n2c_rsp_pri_cnt_s cn56xxp1;
1217 struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xx;
1218 struct cvmx_iob_n2c_rsp_pri_cnt_s cn58xxp1;
1219 struct cvmx_iob_n2c_rsp_pri_cnt_s cn61xx;
1220 struct cvmx_iob_n2c_rsp_pri_cnt_s cn63xx;
1221 struct cvmx_iob_n2c_rsp_pri_cnt_s cn63xxp1;
1222 struct cvmx_iob_n2c_rsp_pri_cnt_s cn66xx;
1223 struct cvmx_iob_n2c_rsp_pri_cnt_s cnf71xx;
1225 typedef union cvmx_iob_n2c_rsp_pri_cnt cvmx_iob_n2c_rsp_pri_cnt_t;
1228 * cvmx_iob_outb_com_pri_cnt
1230 * Commit To NCB Priority Counter = Commit to NCB Priority Counter Enable and Timer Value
1232 * Enables and supplies the timeout count for raising the priority of Commit request to the Outbound NCB.
1234 union cvmx_iob_outb_com_pri_cnt {
1236 struct cvmx_iob_outb_com_pri_cnt_s {
1237 #ifdef __BIG_ENDIAN_BITFIELD
1238 uint64_t reserved_16_63 : 48;
1239 uint64_t cnt_enb : 1; /**< Enables the raising of NCB access priority
1240 when CNT_VAL is reached. */
1241 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1242 the priority for access to NCB. */
1244 uint64_t cnt_val : 15;
1245 uint64_t cnt_enb : 1;
1246 uint64_t reserved_16_63 : 48;
1249 struct cvmx_iob_outb_com_pri_cnt_s cn38xx;
1250 struct cvmx_iob_outb_com_pri_cnt_s cn38xxp2;
1251 struct cvmx_iob_outb_com_pri_cnt_s cn52xx;
1252 struct cvmx_iob_outb_com_pri_cnt_s cn52xxp1;
1253 struct cvmx_iob_outb_com_pri_cnt_s cn56xx;
1254 struct cvmx_iob_outb_com_pri_cnt_s cn56xxp1;
1255 struct cvmx_iob_outb_com_pri_cnt_s cn58xx;
1256 struct cvmx_iob_outb_com_pri_cnt_s cn58xxp1;
1257 struct cvmx_iob_outb_com_pri_cnt_s cn61xx;
1258 struct cvmx_iob_outb_com_pri_cnt_s cn63xx;
1259 struct cvmx_iob_outb_com_pri_cnt_s cn63xxp1;
1260 struct cvmx_iob_outb_com_pri_cnt_s cn66xx;
1261 struct cvmx_iob_outb_com_pri_cnt_s cn68xx;
1262 struct cvmx_iob_outb_com_pri_cnt_s cn68xxp1;
1263 struct cvmx_iob_outb_com_pri_cnt_s cnf71xx;
1265 typedef union cvmx_iob_outb_com_pri_cnt cvmx_iob_outb_com_pri_cnt_t;
1268 * cvmx_iob_outb_control_match
1270 * IOB_OUTB_CONTROL_MATCH = IOB Outbound Control Match
1272 * Match pattern for the outbound control to set the OUTB_MATCH_BIT. PASS-2 Register
1274 union cvmx_iob_outb_control_match {
1276 struct cvmx_iob_outb_control_match_s {
1277 #ifdef __BIG_ENDIAN_BITFIELD
1278 uint64_t reserved_26_63 : 38;
1279 uint64_t mask : 8; /**< Pattern to match on the outbound NCB. */
1280 uint64_t eot : 1; /**< Pattern to match on the outbound NCB. */
1281 uint64_t dst : 8; /**< Pattern to match on the outbound NCB. */
1282 uint64_t src : 9; /**< Pattern to match on the outbound NCB. */
1288 uint64_t reserved_26_63 : 38;
1291 struct cvmx_iob_outb_control_match_s cn30xx;
1292 struct cvmx_iob_outb_control_match_s cn31xx;
1293 struct cvmx_iob_outb_control_match_s cn38xx;
1294 struct cvmx_iob_outb_control_match_s cn38xxp2;
1295 struct cvmx_iob_outb_control_match_s cn50xx;
1296 struct cvmx_iob_outb_control_match_s cn52xx;
1297 struct cvmx_iob_outb_control_match_s cn52xxp1;
1298 struct cvmx_iob_outb_control_match_s cn56xx;
1299 struct cvmx_iob_outb_control_match_s cn56xxp1;
1300 struct cvmx_iob_outb_control_match_s cn58xx;
1301 struct cvmx_iob_outb_control_match_s cn58xxp1;
1302 struct cvmx_iob_outb_control_match_s cn61xx;
1303 struct cvmx_iob_outb_control_match_s cn63xx;
1304 struct cvmx_iob_outb_control_match_s cn63xxp1;
1305 struct cvmx_iob_outb_control_match_s cn66xx;
1306 struct cvmx_iob_outb_control_match_s cn68xx;
1307 struct cvmx_iob_outb_control_match_s cn68xxp1;
1308 struct cvmx_iob_outb_control_match_s cnf71xx;
1310 typedef union cvmx_iob_outb_control_match cvmx_iob_outb_control_match_t;
1313 * cvmx_iob_outb_control_match_enb
1315 * IOB_OUTB_CONTROL_MATCH_ENB = IOB Outbound Control Match Enable
1317 * Enables the match of the corresponding bit in the IOB_OUTB_CONTROL_MATCH reister. PASS-2 Register
1319 union cvmx_iob_outb_control_match_enb {
1321 struct cvmx_iob_outb_control_match_enb_s {
1322 #ifdef __BIG_ENDIAN_BITFIELD
1323 uint64_t reserved_26_63 : 38;
1324 uint64_t mask : 8; /**< Pattern to match on the outbound NCB. */
1325 uint64_t eot : 1; /**< Pattern to match on the outbound NCB. */
1326 uint64_t dst : 8; /**< Pattern to match on the outbound NCB. */
1327 uint64_t src : 9; /**< Pattern to match on the outbound NCB. */
1333 uint64_t reserved_26_63 : 38;
1336 struct cvmx_iob_outb_control_match_enb_s cn30xx;
1337 struct cvmx_iob_outb_control_match_enb_s cn31xx;
1338 struct cvmx_iob_outb_control_match_enb_s cn38xx;
1339 struct cvmx_iob_outb_control_match_enb_s cn38xxp2;
1340 struct cvmx_iob_outb_control_match_enb_s cn50xx;
1341 struct cvmx_iob_outb_control_match_enb_s cn52xx;
1342 struct cvmx_iob_outb_control_match_enb_s cn52xxp1;
1343 struct cvmx_iob_outb_control_match_enb_s cn56xx;
1344 struct cvmx_iob_outb_control_match_enb_s cn56xxp1;
1345 struct cvmx_iob_outb_control_match_enb_s cn58xx;
1346 struct cvmx_iob_outb_control_match_enb_s cn58xxp1;
1347 struct cvmx_iob_outb_control_match_enb_s cn61xx;
1348 struct cvmx_iob_outb_control_match_enb_s cn63xx;
1349 struct cvmx_iob_outb_control_match_enb_s cn63xxp1;
1350 struct cvmx_iob_outb_control_match_enb_s cn66xx;
1351 struct cvmx_iob_outb_control_match_enb_s cn68xx;
1352 struct cvmx_iob_outb_control_match_enb_s cn68xxp1;
1353 struct cvmx_iob_outb_control_match_enb_s cnf71xx;
1355 typedef union cvmx_iob_outb_control_match_enb cvmx_iob_outb_control_match_enb_t;
1358 * cvmx_iob_outb_data_match
1360 * IOB_OUTB_DATA_MATCH = IOB Outbound Data Match
1362 * Match pattern for the outbound data to set the OUTB_MATCH_BIT. PASS-2 Register
1364 union cvmx_iob_outb_data_match {
1366 struct cvmx_iob_outb_data_match_s {
1367 #ifdef __BIG_ENDIAN_BITFIELD
1368 uint64_t data : 64; /**< Pattern to match on the outbound NCB. */
1373 struct cvmx_iob_outb_data_match_s cn30xx;
1374 struct cvmx_iob_outb_data_match_s cn31xx;
1375 struct cvmx_iob_outb_data_match_s cn38xx;
1376 struct cvmx_iob_outb_data_match_s cn38xxp2;
1377 struct cvmx_iob_outb_data_match_s cn50xx;
1378 struct cvmx_iob_outb_data_match_s cn52xx;
1379 struct cvmx_iob_outb_data_match_s cn52xxp1;
1380 struct cvmx_iob_outb_data_match_s cn56xx;
1381 struct cvmx_iob_outb_data_match_s cn56xxp1;
1382 struct cvmx_iob_outb_data_match_s cn58xx;
1383 struct cvmx_iob_outb_data_match_s cn58xxp1;
1384 struct cvmx_iob_outb_data_match_s cn61xx;
1385 struct cvmx_iob_outb_data_match_s cn63xx;
1386 struct cvmx_iob_outb_data_match_s cn63xxp1;
1387 struct cvmx_iob_outb_data_match_s cn66xx;
1388 struct cvmx_iob_outb_data_match_s cn68xx;
1389 struct cvmx_iob_outb_data_match_s cn68xxp1;
1390 struct cvmx_iob_outb_data_match_s cnf71xx;
1392 typedef union cvmx_iob_outb_data_match cvmx_iob_outb_data_match_t;
1395 * cvmx_iob_outb_data_match_enb
1397 * IOB_OUTB_DATA_MATCH_ENB = IOB Outbound Data Match Enable
1399 * Enables the match of the corresponding bit in the IOB_OUTB_DATA_MATCH reister. PASS-2 Register
1401 union cvmx_iob_outb_data_match_enb {
1403 struct cvmx_iob_outb_data_match_enb_s {
1404 #ifdef __BIG_ENDIAN_BITFIELD
1405 uint64_t data : 64; /**< Bit to enable match of. */
1410 struct cvmx_iob_outb_data_match_enb_s cn30xx;
1411 struct cvmx_iob_outb_data_match_enb_s cn31xx;
1412 struct cvmx_iob_outb_data_match_enb_s cn38xx;
1413 struct cvmx_iob_outb_data_match_enb_s cn38xxp2;
1414 struct cvmx_iob_outb_data_match_enb_s cn50xx;
1415 struct cvmx_iob_outb_data_match_enb_s cn52xx;
1416 struct cvmx_iob_outb_data_match_enb_s cn52xxp1;
1417 struct cvmx_iob_outb_data_match_enb_s cn56xx;
1418 struct cvmx_iob_outb_data_match_enb_s cn56xxp1;
1419 struct cvmx_iob_outb_data_match_enb_s cn58xx;
1420 struct cvmx_iob_outb_data_match_enb_s cn58xxp1;
1421 struct cvmx_iob_outb_data_match_enb_s cn61xx;
1422 struct cvmx_iob_outb_data_match_enb_s cn63xx;
1423 struct cvmx_iob_outb_data_match_enb_s cn63xxp1;
1424 struct cvmx_iob_outb_data_match_enb_s cn66xx;
1425 struct cvmx_iob_outb_data_match_enb_s cn68xx;
1426 struct cvmx_iob_outb_data_match_enb_s cn68xxp1;
1427 struct cvmx_iob_outb_data_match_enb_s cnf71xx;
1429 typedef union cvmx_iob_outb_data_match_enb cvmx_iob_outb_data_match_enb_t;
1432 * cvmx_iob_outb_fpa_pri_cnt
1434 * FPA To NCB Priority Counter = FPA Returns to NCB Priority Counter Enable and Timer Value
1436 * Enables and supplies the timeout count for raising the priority of FPA Rreturn Page request to the Outbound NCB.
1438 union cvmx_iob_outb_fpa_pri_cnt {
1440 struct cvmx_iob_outb_fpa_pri_cnt_s {
1441 #ifdef __BIG_ENDIAN_BITFIELD
1442 uint64_t reserved_16_63 : 48;
1443 uint64_t cnt_enb : 1; /**< Enables the raising of NCB access priority
1444 when CNT_VAL is reached. */
1445 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1446 the priority for access to NCB. */
1448 uint64_t cnt_val : 15;
1449 uint64_t cnt_enb : 1;
1450 uint64_t reserved_16_63 : 48;
1453 struct cvmx_iob_outb_fpa_pri_cnt_s cn38xx;
1454 struct cvmx_iob_outb_fpa_pri_cnt_s cn38xxp2;
1455 struct cvmx_iob_outb_fpa_pri_cnt_s cn52xx;
1456 struct cvmx_iob_outb_fpa_pri_cnt_s cn52xxp1;
1457 struct cvmx_iob_outb_fpa_pri_cnt_s cn56xx;
1458 struct cvmx_iob_outb_fpa_pri_cnt_s cn56xxp1;
1459 struct cvmx_iob_outb_fpa_pri_cnt_s cn58xx;
1460 struct cvmx_iob_outb_fpa_pri_cnt_s cn58xxp1;
1461 struct cvmx_iob_outb_fpa_pri_cnt_s cn61xx;
1462 struct cvmx_iob_outb_fpa_pri_cnt_s cn63xx;
1463 struct cvmx_iob_outb_fpa_pri_cnt_s cn63xxp1;
1464 struct cvmx_iob_outb_fpa_pri_cnt_s cn66xx;
1465 struct cvmx_iob_outb_fpa_pri_cnt_s cn68xx;
1466 struct cvmx_iob_outb_fpa_pri_cnt_s cn68xxp1;
1467 struct cvmx_iob_outb_fpa_pri_cnt_s cnf71xx;
1469 typedef union cvmx_iob_outb_fpa_pri_cnt cvmx_iob_outb_fpa_pri_cnt_t;
1472 * cvmx_iob_outb_req_pri_cnt
1474 * Request To NCB Priority Counter = Request to NCB Priority Counter Enable and Timer Value
1476 * Enables and supplies the timeout count for raising the priority of Request transfers to the Outbound NCB.
1478 union cvmx_iob_outb_req_pri_cnt {
1480 struct cvmx_iob_outb_req_pri_cnt_s {
1481 #ifdef __BIG_ENDIAN_BITFIELD
1482 uint64_t reserved_16_63 : 48;
1483 uint64_t cnt_enb : 1; /**< Enables the raising of NCB access priority
1484 when CNT_VAL is reached. */
1485 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1486 the priority for access to NCB. */
1488 uint64_t cnt_val : 15;
1489 uint64_t cnt_enb : 1;
1490 uint64_t reserved_16_63 : 48;
1493 struct cvmx_iob_outb_req_pri_cnt_s cn38xx;
1494 struct cvmx_iob_outb_req_pri_cnt_s cn38xxp2;
1495 struct cvmx_iob_outb_req_pri_cnt_s cn52xx;
1496 struct cvmx_iob_outb_req_pri_cnt_s cn52xxp1;
1497 struct cvmx_iob_outb_req_pri_cnt_s cn56xx;
1498 struct cvmx_iob_outb_req_pri_cnt_s cn56xxp1;
1499 struct cvmx_iob_outb_req_pri_cnt_s cn58xx;
1500 struct cvmx_iob_outb_req_pri_cnt_s cn58xxp1;
1501 struct cvmx_iob_outb_req_pri_cnt_s cn61xx;
1502 struct cvmx_iob_outb_req_pri_cnt_s cn63xx;
1503 struct cvmx_iob_outb_req_pri_cnt_s cn63xxp1;
1504 struct cvmx_iob_outb_req_pri_cnt_s cn66xx;
1505 struct cvmx_iob_outb_req_pri_cnt_s cn68xx;
1506 struct cvmx_iob_outb_req_pri_cnt_s cn68xxp1;
1507 struct cvmx_iob_outb_req_pri_cnt_s cnf71xx;
1509 typedef union cvmx_iob_outb_req_pri_cnt cvmx_iob_outb_req_pri_cnt_t;
1512 * cvmx_iob_p2c_req_pri_cnt
1514 * PKO To CMB Response Priority Counter = PKO to CMB Response Priority Counter Enable and Timer Value
1516 * Enables and supplies the timeout count for raising the priority of PKO Load access to the CMB.
1518 union cvmx_iob_p2c_req_pri_cnt {
1520 struct cvmx_iob_p2c_req_pri_cnt_s {
1521 #ifdef __BIG_ENDIAN_BITFIELD
1522 uint64_t reserved_16_63 : 48;
1523 uint64_t cnt_enb : 1; /**< Enables the raising of CMB access priority
1524 when CNT_VAL is reached. */
1525 uint64_t cnt_val : 15; /**< Number of core clocks to wait before raising
1526 the priority for access to CMB. */
1528 uint64_t cnt_val : 15;
1529 uint64_t cnt_enb : 1;
1530 uint64_t reserved_16_63 : 48;
1533 struct cvmx_iob_p2c_req_pri_cnt_s cn38xx;
1534 struct cvmx_iob_p2c_req_pri_cnt_s cn38xxp2;
1535 struct cvmx_iob_p2c_req_pri_cnt_s cn52xx;
1536 struct cvmx_iob_p2c_req_pri_cnt_s cn52xxp1;
1537 struct cvmx_iob_p2c_req_pri_cnt_s cn56xx;
1538 struct cvmx_iob_p2c_req_pri_cnt_s cn56xxp1;
1539 struct cvmx_iob_p2c_req_pri_cnt_s cn58xx;
1540 struct cvmx_iob_p2c_req_pri_cnt_s cn58xxp1;
1541 struct cvmx_iob_p2c_req_pri_cnt_s cn61xx;
1542 struct cvmx_iob_p2c_req_pri_cnt_s cn63xx;
1543 struct cvmx_iob_p2c_req_pri_cnt_s cn63xxp1;
1544 struct cvmx_iob_p2c_req_pri_cnt_s cn66xx;
1545 struct cvmx_iob_p2c_req_pri_cnt_s cnf71xx;
1547 typedef union cvmx_iob_p2c_req_pri_cnt cvmx_iob_p2c_req_pri_cnt_t;
1552 * IOB_PKT_ERR = IOB Packet Error Register
1554 * Provides status about the failing packet recevie error. This is a PASS-2 register.
1556 union cvmx_iob_pkt_err {
1558 struct cvmx_iob_pkt_err_s {
1559 #ifdef __BIG_ENDIAN_BITFIELD
1560 uint64_t reserved_12_63 : 52;
1561 uint64_t vport : 6; /**< When IOB_INT_SUM[3:0] bit is set, this field
1562 latches the failing vport associate with the
1563 IOB_INT_SUM[3:0] bit set. */
1564 uint64_t port : 6; /**< When IOB_INT_SUM[3:0] bit is set, this field
1565 latches the failing port associate with the
1566 IOB_INT_SUM[3:0] bit set. */
1570 uint64_t reserved_12_63 : 52;
1573 struct cvmx_iob_pkt_err_cn30xx {
1574 #ifdef __BIG_ENDIAN_BITFIELD
1575 uint64_t reserved_6_63 : 58;
1576 uint64_t port : 6; /**< When IOB_INT_SUM[3:0] bit is set, this field
1577 latches the failing port associate with the
1578 IOB_INT_SUM[3:0] bit set. */
1581 uint64_t reserved_6_63 : 58;
1584 struct cvmx_iob_pkt_err_cn30xx cn31xx;
1585 struct cvmx_iob_pkt_err_cn30xx cn38xx;
1586 struct cvmx_iob_pkt_err_cn30xx cn38xxp2;
1587 struct cvmx_iob_pkt_err_cn30xx cn50xx;
1588 struct cvmx_iob_pkt_err_cn30xx cn52xx;
1589 struct cvmx_iob_pkt_err_cn30xx cn52xxp1;
1590 struct cvmx_iob_pkt_err_cn30xx cn56xx;
1591 struct cvmx_iob_pkt_err_cn30xx cn56xxp1;
1592 struct cvmx_iob_pkt_err_cn30xx cn58xx;
1593 struct cvmx_iob_pkt_err_cn30xx cn58xxp1;
1594 struct cvmx_iob_pkt_err_s cn61xx;
1595 struct cvmx_iob_pkt_err_s cn63xx;
1596 struct cvmx_iob_pkt_err_s cn63xxp1;
1597 struct cvmx_iob_pkt_err_s cn66xx;
1598 struct cvmx_iob_pkt_err_s cnf71xx;
1600 typedef union cvmx_iob_pkt_err cvmx_iob_pkt_err_t;
1603 * cvmx_iob_to_cmb_credits
1605 * IOB_TO_CMB_CREDITS = IOB To CMB Credits
1607 * Controls the number of reads and writes that may be outstanding to the L2C (via the CMB).
1609 union cvmx_iob_to_cmb_credits {
1611 struct cvmx_iob_to_cmb_credits_s {
1612 #ifdef __BIG_ENDIAN_BITFIELD
1613 uint64_t reserved_6_63 : 58;
1614 uint64_t ncb_rd : 3; /**< Number of NCB reads that can be out to L2C where
1616 uint64_t ncb_wr : 3; /**< Number of NCB/PKI writes that can be out to L2C
1617 where 0 == 8-credits. */
1619 uint64_t ncb_wr : 3;
1620 uint64_t ncb_rd : 3;
1621 uint64_t reserved_6_63 : 58;
1624 struct cvmx_iob_to_cmb_credits_cn52xx {
1625 #ifdef __BIG_ENDIAN_BITFIELD
1626 uint64_t reserved_9_63 : 55;
1627 uint64_t pko_rd : 3; /**< Number of PKO reads that can be out to L2C where
1629 uint64_t ncb_rd : 3; /**< Number of NCB reads that can be out to L2C where
1631 uint64_t ncb_wr : 3; /**< Number of NCB/PKI writes that can be out to L2C
1632 where 0 == 8-credits. */
1634 uint64_t ncb_wr : 3;
1635 uint64_t ncb_rd : 3;
1636 uint64_t pko_rd : 3;
1637 uint64_t reserved_9_63 : 55;
1640 struct cvmx_iob_to_cmb_credits_cn52xx cn61xx;
1641 struct cvmx_iob_to_cmb_credits_cn52xx cn63xx;
1642 struct cvmx_iob_to_cmb_credits_cn52xx cn63xxp1;
1643 struct cvmx_iob_to_cmb_credits_cn52xx cn66xx;
1644 struct cvmx_iob_to_cmb_credits_cn68xx {
1645 #ifdef __BIG_ENDIAN_BITFIELD
1646 uint64_t reserved_9_63 : 55;
1647 uint64_t dwb : 3; /**< Number of DWBs that can be out to L2C where
1649 uint64_t ncb_rd : 3; /**< Number of NCB reads that can be out to L2C where
1651 uint64_t ncb_wr : 3; /**< Number of NCB/PKI writes that can be out to L2C
1652 where 0 == 8-credits. */
1654 uint64_t ncb_wr : 3;
1655 uint64_t ncb_rd : 3;
1657 uint64_t reserved_9_63 : 55;
1660 struct cvmx_iob_to_cmb_credits_cn68xx cn68xxp1;
1661 struct cvmx_iob_to_cmb_credits_cn52xx cnf71xx;
1663 typedef union cvmx_iob_to_cmb_credits cvmx_iob_to_cmb_credits_t;
1666 * cvmx_iob_to_ncb_did_00_credits
1668 * IOB_TO_NCB_DID_00_CREDITS = IOB NCB DID 00 Credits
1670 * Number of credits for NCB DID 00.
1672 union cvmx_iob_to_ncb_did_00_credits {
1674 struct cvmx_iob_to_ncb_did_00_credits_s {
1675 #ifdef __BIG_ENDIAN_BITFIELD
1676 uint64_t reserved_7_63 : 57;
1677 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1678 casuse the credits to be set to the value written.
1679 Reading this field will give the number of credits
1680 PRESENTLY available. */
1683 uint64_t reserved_7_63 : 57;
1686 struct cvmx_iob_to_ncb_did_00_credits_s cn68xx;
1687 struct cvmx_iob_to_ncb_did_00_credits_s cn68xxp1;
1689 typedef union cvmx_iob_to_ncb_did_00_credits cvmx_iob_to_ncb_did_00_credits_t;
1692 * cvmx_iob_to_ncb_did_111_credits
1694 * IOB_TO_NCB_DID_111_CREDITS = IOB NCB DID 111 Credits
1696 * Number of credits for NCB DID 111.
1698 union cvmx_iob_to_ncb_did_111_credits {
1700 struct cvmx_iob_to_ncb_did_111_credits_s {
1701 #ifdef __BIG_ENDIAN_BITFIELD
1702 uint64_t reserved_7_63 : 57;
1703 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1704 casuse the credits to be set to the value written.
1705 Reading this field will give the number of credits
1706 PRESENTLY available. */
1709 uint64_t reserved_7_63 : 57;
1712 struct cvmx_iob_to_ncb_did_111_credits_s cn68xx;
1713 struct cvmx_iob_to_ncb_did_111_credits_s cn68xxp1;
1715 typedef union cvmx_iob_to_ncb_did_111_credits cvmx_iob_to_ncb_did_111_credits_t;
1718 * cvmx_iob_to_ncb_did_223_credits
1720 * IOB_TO_NCB_DID_223_CREDITS = IOB NCB DID 223 Credits
1722 * Number of credits for NCB DID 223.
1724 union cvmx_iob_to_ncb_did_223_credits {
1726 struct cvmx_iob_to_ncb_did_223_credits_s {
1727 #ifdef __BIG_ENDIAN_BITFIELD
1728 uint64_t reserved_7_63 : 57;
1729 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1730 casuse the credits to be set to the value written.
1731 Reading this field will give the number of credits
1732 PRESENTLY available. */
1735 uint64_t reserved_7_63 : 57;
1738 struct cvmx_iob_to_ncb_did_223_credits_s cn68xx;
1739 struct cvmx_iob_to_ncb_did_223_credits_s cn68xxp1;
1741 typedef union cvmx_iob_to_ncb_did_223_credits cvmx_iob_to_ncb_did_223_credits_t;
1744 * cvmx_iob_to_ncb_did_24_credits
1746 * IOB_TO_NCB_DID_24_CREDITS = IOB NCB DID 24 Credits
1748 * Number of credits for NCB DID 24.
1750 union cvmx_iob_to_ncb_did_24_credits {
1752 struct cvmx_iob_to_ncb_did_24_credits_s {
1753 #ifdef __BIG_ENDIAN_BITFIELD
1754 uint64_t reserved_7_63 : 57;
1755 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1756 casuse the credits to be set to the value written.
1757 Reading this field will give the number of credits
1758 PRESENTLY available. */
1761 uint64_t reserved_7_63 : 57;
1764 struct cvmx_iob_to_ncb_did_24_credits_s cn68xx;
1765 struct cvmx_iob_to_ncb_did_24_credits_s cn68xxp1;
1767 typedef union cvmx_iob_to_ncb_did_24_credits cvmx_iob_to_ncb_did_24_credits_t;
1770 * cvmx_iob_to_ncb_did_32_credits
1772 * IOB_TO_NCB_DID_32_CREDITS = IOB NCB DID 32 Credits
1774 * Number of credits for NCB DID 32.
1776 union cvmx_iob_to_ncb_did_32_credits {
1778 struct cvmx_iob_to_ncb_did_32_credits_s {
1779 #ifdef __BIG_ENDIAN_BITFIELD
1780 uint64_t reserved_7_63 : 57;
1781 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1782 casuse the credits to be set to the value written.
1783 Reading this field will give the number of credits
1784 PRESENTLY available. */
1787 uint64_t reserved_7_63 : 57;
1790 struct cvmx_iob_to_ncb_did_32_credits_s cn68xx;
1791 struct cvmx_iob_to_ncb_did_32_credits_s cn68xxp1;
1793 typedef union cvmx_iob_to_ncb_did_32_credits cvmx_iob_to_ncb_did_32_credits_t;
1796 * cvmx_iob_to_ncb_did_40_credits
1798 * IOB_TO_NCB_DID_40_CREDITS = IOB NCB DID 40 Credits
1800 * Number of credits for NCB DID 40.
1802 union cvmx_iob_to_ncb_did_40_credits {
1804 struct cvmx_iob_to_ncb_did_40_credits_s {
1805 #ifdef __BIG_ENDIAN_BITFIELD
1806 uint64_t reserved_7_63 : 57;
1807 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1808 casuse the credits to be set to the value written.
1809 Reading this field will give the number of credits
1810 PRESENTLY available. */
1813 uint64_t reserved_7_63 : 57;
1816 struct cvmx_iob_to_ncb_did_40_credits_s cn68xx;
1817 struct cvmx_iob_to_ncb_did_40_credits_s cn68xxp1;
1819 typedef union cvmx_iob_to_ncb_did_40_credits cvmx_iob_to_ncb_did_40_credits_t;
1822 * cvmx_iob_to_ncb_did_55_credits
1824 * IOB_TO_NCB_DID_55_CREDITS = IOB NCB DID 55 Credits
1826 * Number of credits for NCB DID 55.
1828 union cvmx_iob_to_ncb_did_55_credits {
1830 struct cvmx_iob_to_ncb_did_55_credits_s {
1831 #ifdef __BIG_ENDIAN_BITFIELD
1832 uint64_t reserved_7_63 : 57;
1833 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1834 casuse the credits to be set to the value written.
1835 Reading this field will give the number of credits
1836 PRESENTLY available. */
1839 uint64_t reserved_7_63 : 57;
1842 struct cvmx_iob_to_ncb_did_55_credits_s cn68xx;
1843 struct cvmx_iob_to_ncb_did_55_credits_s cn68xxp1;
1845 typedef union cvmx_iob_to_ncb_did_55_credits cvmx_iob_to_ncb_did_55_credits_t;
1848 * cvmx_iob_to_ncb_did_64_credits
1850 * IOB_TO_NCB_DID_64_CREDITS = IOB NCB DID 64 Credits
1852 * Number of credits for NCB DID 64.
1854 union cvmx_iob_to_ncb_did_64_credits {
1856 struct cvmx_iob_to_ncb_did_64_credits_s {
1857 #ifdef __BIG_ENDIAN_BITFIELD
1858 uint64_t reserved_7_63 : 57;
1859 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1860 casuse the credits to be set to the value written.
1861 Reading this field will give the number of credits
1862 PRESENTLY available. */
1865 uint64_t reserved_7_63 : 57;
1868 struct cvmx_iob_to_ncb_did_64_credits_s cn68xx;
1869 struct cvmx_iob_to_ncb_did_64_credits_s cn68xxp1;
1871 typedef union cvmx_iob_to_ncb_did_64_credits cvmx_iob_to_ncb_did_64_credits_t;
1874 * cvmx_iob_to_ncb_did_79_credits
1876 * IOB_TO_NCB_DID_79_CREDITS = IOB NCB DID 79 Credits
1878 * Number of credits for NCB DID 79.
1880 union cvmx_iob_to_ncb_did_79_credits {
1882 struct cvmx_iob_to_ncb_did_79_credits_s {
1883 #ifdef __BIG_ENDIAN_BITFIELD
1884 uint64_t reserved_7_63 : 57;
1885 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1886 casuse the credits to be set to the value written.
1887 Reading this field will give the number of credits
1888 PRESENTLY available. */
1891 uint64_t reserved_7_63 : 57;
1894 struct cvmx_iob_to_ncb_did_79_credits_s cn68xx;
1895 struct cvmx_iob_to_ncb_did_79_credits_s cn68xxp1;
1897 typedef union cvmx_iob_to_ncb_did_79_credits cvmx_iob_to_ncb_did_79_credits_t;
1900 * cvmx_iob_to_ncb_did_96_credits
1902 * IOB_TO_NCB_DID_96_CREDITS = IOB NCB DID 96 Credits
1904 * Number of credits for NCB DID 96.
1906 union cvmx_iob_to_ncb_did_96_credits {
1908 struct cvmx_iob_to_ncb_did_96_credits_s {
1909 #ifdef __BIG_ENDIAN_BITFIELD
1910 uint64_t reserved_7_63 : 57;
1911 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1912 casuse the credits to be set to the value written.
1913 Reading this field will give the number of credits
1914 PRESENTLY available. */
1917 uint64_t reserved_7_63 : 57;
1920 struct cvmx_iob_to_ncb_did_96_credits_s cn68xx;
1921 struct cvmx_iob_to_ncb_did_96_credits_s cn68xxp1;
1923 typedef union cvmx_iob_to_ncb_did_96_credits cvmx_iob_to_ncb_did_96_credits_t;
1926 * cvmx_iob_to_ncb_did_98_credits
1928 * IOB_TO_NCB_DID_98_CREDITS = IOB NCB DID 96 Credits
1930 * Number of credits for NCB DID 98.
1932 union cvmx_iob_to_ncb_did_98_credits {
1934 struct cvmx_iob_to_ncb_did_98_credits_s {
1935 #ifdef __BIG_ENDIAN_BITFIELD
1936 uint64_t reserved_7_63 : 57;
1937 uint64_t crd : 7; /**< Number of credits for DID. Writing this field will
1938 casuse the credits to be set to the value written.
1939 Reading this field will give the number of credits
1940 PRESENTLY available. */
1943 uint64_t reserved_7_63 : 57;
1946 struct cvmx_iob_to_ncb_did_98_credits_s cn68xx;
1947 struct cvmx_iob_to_ncb_did_98_credits_s cn68xxp1;
1949 typedef union cvmx_iob_to_ncb_did_98_credits cvmx_iob_to_ncb_did_98_credits_t;