cvmx-fpa-defs.h revision 232812
1/***********************license start*************** 2 * Copyright (c) 2003-2012 Cavium Inc. (support@cavium.com). All rights 3 * reserved. 4 * 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: 9 * 10 * * Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 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. 17 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 21 * permission. 22 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 26 * countries. 27 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**************************************/ 39 40 41/** 42 * cvmx-fpa-defs.h 43 * 44 * Configuration and status register (CSR) type definitions for 45 * Octeon fpa. 46 * 47 * This file is auto generated. Do not edit. 48 * 49 * <hr>$Revision$<hr> 50 * 51 */ 52#ifndef __CVMX_FPA_DEFS_H__ 53#define __CVMX_FPA_DEFS_H__ 54 55#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 56#define CVMX_FPA_ADDR_RANGE_ERROR CVMX_FPA_ADDR_RANGE_ERROR_FUNC() 57static inline uint64_t CVMX_FPA_ADDR_RANGE_ERROR_FUNC(void) 58{ 59 if (!(OCTEON_IS_MODEL(OCTEON_CN61XX) || OCTEON_IS_MODEL(OCTEON_CN66XX) || OCTEON_IS_MODEL(OCTEON_CN68XX) || OCTEON_IS_MODEL(OCTEON_CNF71XX))) 60 cvmx_warn("CVMX_FPA_ADDR_RANGE_ERROR not supported on this chip\n"); 61 return CVMX_ADD_IO_SEG(0x0001180028000458ull); 62} 63#else 64#define CVMX_FPA_ADDR_RANGE_ERROR (CVMX_ADD_IO_SEG(0x0001180028000458ull)) 65#endif 66#define CVMX_FPA_BIST_STATUS (CVMX_ADD_IO_SEG(0x00011800280000E8ull)) 67#define CVMX_FPA_CTL_STATUS (CVMX_ADD_IO_SEG(0x0001180028000050ull)) 68#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 69#define CVMX_FPA_FPF0_MARKS CVMX_FPA_FPF0_MARKS_FUNC() 70static inline uint64_t CVMX_FPA_FPF0_MARKS_FUNC(void) 71{ 72 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || 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))) 73 cvmx_warn("CVMX_FPA_FPF0_MARKS not supported on this chip\n"); 74 return CVMX_ADD_IO_SEG(0x0001180028000000ull); 75} 76#else 77#define CVMX_FPA_FPF0_MARKS (CVMX_ADD_IO_SEG(0x0001180028000000ull)) 78#endif 79#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 80#define CVMX_FPA_FPF0_SIZE CVMX_FPA_FPF0_SIZE_FUNC() 81static inline uint64_t CVMX_FPA_FPF0_SIZE_FUNC(void) 82{ 83 if (!(OCTEON_IS_MODEL(OCTEON_CN38XX) || 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))) 84 cvmx_warn("CVMX_FPA_FPF0_SIZE not supported on this chip\n"); 85 return CVMX_ADD_IO_SEG(0x0001180028000058ull); 86} 87#else 88#define CVMX_FPA_FPF0_SIZE (CVMX_ADD_IO_SEG(0x0001180028000058ull)) 89#endif 90#define CVMX_FPA_FPF1_MARKS CVMX_FPA_FPFX_MARKS(1) 91#define CVMX_FPA_FPF2_MARKS CVMX_FPA_FPFX_MARKS(2) 92#define CVMX_FPA_FPF3_MARKS CVMX_FPA_FPFX_MARKS(3) 93#define CVMX_FPA_FPF4_MARKS CVMX_FPA_FPFX_MARKS(4) 94#define CVMX_FPA_FPF5_MARKS CVMX_FPA_FPFX_MARKS(5) 95#define CVMX_FPA_FPF6_MARKS CVMX_FPA_FPFX_MARKS(6) 96#define CVMX_FPA_FPF7_MARKS CVMX_FPA_FPFX_MARKS(7) 97#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 98#define CVMX_FPA_FPF8_MARKS CVMX_FPA_FPF8_MARKS_FUNC() 99static inline uint64_t CVMX_FPA_FPF8_MARKS_FUNC(void) 100{ 101 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX))) 102 cvmx_warn("CVMX_FPA_FPF8_MARKS not supported on this chip\n"); 103 return CVMX_ADD_IO_SEG(0x0001180028000240ull); 104} 105#else 106#define CVMX_FPA_FPF8_MARKS (CVMX_ADD_IO_SEG(0x0001180028000240ull)) 107#endif 108#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 109#define CVMX_FPA_FPF8_SIZE CVMX_FPA_FPF8_SIZE_FUNC() 110static inline uint64_t CVMX_FPA_FPF8_SIZE_FUNC(void) 111{ 112 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX))) 113 cvmx_warn("CVMX_FPA_FPF8_SIZE not supported on this chip\n"); 114 return CVMX_ADD_IO_SEG(0x0001180028000248ull); 115} 116#else 117#define CVMX_FPA_FPF8_SIZE (CVMX_ADD_IO_SEG(0x0001180028000248ull)) 118#endif 119#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 120static inline uint64_t CVMX_FPA_FPFX_MARKS(unsigned long offset) 121{ 122 if (!( 123 (OCTEON_IS_MODEL(OCTEON_CN38XX) && (((offset >= 1) && (offset <= 7)))) || 124 (OCTEON_IS_MODEL(OCTEON_CN56XX) && (((offset >= 1) && (offset <= 7)))) || 125 (OCTEON_IS_MODEL(OCTEON_CN58XX) && (((offset >= 1) && (offset <= 7)))) || 126 (OCTEON_IS_MODEL(OCTEON_CN61XX) && (((offset >= 1) && (offset <= 7)))) || 127 (OCTEON_IS_MODEL(OCTEON_CN63XX) && (((offset >= 1) && (offset <= 7)))) || 128 (OCTEON_IS_MODEL(OCTEON_CN66XX) && (((offset >= 1) && (offset <= 7)))) || 129 (OCTEON_IS_MODEL(OCTEON_CN68XX) && (((offset >= 1) && (offset <= 7)))) || 130 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && (((offset >= 1) && (offset <= 7)))))) 131 cvmx_warn("CVMX_FPA_FPFX_MARKS(%lu) is invalid on this chip\n", offset); 132 return CVMX_ADD_IO_SEG(0x0001180028000008ull) + ((offset) & 7) * 8 - 8*1; 133} 134#else 135#define CVMX_FPA_FPFX_MARKS(offset) (CVMX_ADD_IO_SEG(0x0001180028000008ull) + ((offset) & 7) * 8 - 8*1) 136#endif 137#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 138static inline uint64_t CVMX_FPA_FPFX_SIZE(unsigned long offset) 139{ 140 if (!( 141 (OCTEON_IS_MODEL(OCTEON_CN38XX) && (((offset >= 1) && (offset <= 7)))) || 142 (OCTEON_IS_MODEL(OCTEON_CN56XX) && (((offset >= 1) && (offset <= 7)))) || 143 (OCTEON_IS_MODEL(OCTEON_CN58XX) && (((offset >= 1) && (offset <= 7)))) || 144 (OCTEON_IS_MODEL(OCTEON_CN61XX) && (((offset >= 1) && (offset <= 7)))) || 145 (OCTEON_IS_MODEL(OCTEON_CN63XX) && (((offset >= 1) && (offset <= 7)))) || 146 (OCTEON_IS_MODEL(OCTEON_CN66XX) && (((offset >= 1) && (offset <= 7)))) || 147 (OCTEON_IS_MODEL(OCTEON_CN68XX) && (((offset >= 1) && (offset <= 7)))) || 148 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && (((offset >= 1) && (offset <= 7)))))) 149 cvmx_warn("CVMX_FPA_FPFX_SIZE(%lu) is invalid on this chip\n", offset); 150 return CVMX_ADD_IO_SEG(0x0001180028000060ull) + ((offset) & 7) * 8 - 8*1; 151} 152#else 153#define CVMX_FPA_FPFX_SIZE(offset) (CVMX_ADD_IO_SEG(0x0001180028000060ull) + ((offset) & 7) * 8 - 8*1) 154#endif 155#define CVMX_FPA_INT_ENB (CVMX_ADD_IO_SEG(0x0001180028000048ull)) 156#define CVMX_FPA_INT_SUM (CVMX_ADD_IO_SEG(0x0001180028000040ull)) 157#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 158#define CVMX_FPA_PACKET_THRESHOLD CVMX_FPA_PACKET_THRESHOLD_FUNC() 159static inline uint64_t CVMX_FPA_PACKET_THRESHOLD_FUNC(void) 160{ 161 if (!(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))) 162 cvmx_warn("CVMX_FPA_PACKET_THRESHOLD not supported on this chip\n"); 163 return CVMX_ADD_IO_SEG(0x0001180028000460ull); 164} 165#else 166#define CVMX_FPA_PACKET_THRESHOLD (CVMX_ADD_IO_SEG(0x0001180028000460ull)) 167#endif 168#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 169static inline uint64_t CVMX_FPA_POOLX_END_ADDR(unsigned long offset) 170{ 171 if (!( 172 (OCTEON_IS_MODEL(OCTEON_CN61XX) && ((offset <= 7))) || 173 (OCTEON_IS_MODEL(OCTEON_CN66XX) && ((offset <= 7))) || 174 (OCTEON_IS_MODEL(OCTEON_CN68XX) && ((offset <= 8))) || 175 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && ((offset <= 7))))) 176 cvmx_warn("CVMX_FPA_POOLX_END_ADDR(%lu) is invalid on this chip\n", offset); 177 return CVMX_ADD_IO_SEG(0x0001180028000358ull) + ((offset) & 15) * 8; 178} 179#else 180#define CVMX_FPA_POOLX_END_ADDR(offset) (CVMX_ADD_IO_SEG(0x0001180028000358ull) + ((offset) & 15) * 8) 181#endif 182#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 183static inline uint64_t CVMX_FPA_POOLX_START_ADDR(unsigned long offset) 184{ 185 if (!( 186 (OCTEON_IS_MODEL(OCTEON_CN61XX) && ((offset <= 7))) || 187 (OCTEON_IS_MODEL(OCTEON_CN66XX) && ((offset <= 7))) || 188 (OCTEON_IS_MODEL(OCTEON_CN68XX) && ((offset <= 8))) || 189 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && ((offset <= 7))))) 190 cvmx_warn("CVMX_FPA_POOLX_START_ADDR(%lu) is invalid on this chip\n", offset); 191 return CVMX_ADD_IO_SEG(0x0001180028000258ull) + ((offset) & 15) * 8; 192} 193#else 194#define CVMX_FPA_POOLX_START_ADDR(offset) (CVMX_ADD_IO_SEG(0x0001180028000258ull) + ((offset) & 15) * 8) 195#endif 196#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 197static inline uint64_t CVMX_FPA_POOLX_THRESHOLD(unsigned long offset) 198{ 199 if (!( 200 (OCTEON_IS_MODEL(OCTEON_CN61XX) && ((offset <= 7))) || 201 (OCTEON_IS_MODEL(OCTEON_CN63XX) && ((offset <= 7))) || 202 (OCTEON_IS_MODEL(OCTEON_CN66XX) && ((offset <= 7))) || 203 (OCTEON_IS_MODEL(OCTEON_CN68XX) && ((offset <= 8))) || 204 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && ((offset <= 7))))) 205 cvmx_warn("CVMX_FPA_POOLX_THRESHOLD(%lu) is invalid on this chip\n", offset); 206 return CVMX_ADD_IO_SEG(0x0001180028000140ull) + ((offset) & 15) * 8; 207} 208#else 209#define CVMX_FPA_POOLX_THRESHOLD(offset) (CVMX_ADD_IO_SEG(0x0001180028000140ull) + ((offset) & 15) * 8) 210#endif 211#define CVMX_FPA_QUE0_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(0) 212#define CVMX_FPA_QUE1_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(1) 213#define CVMX_FPA_QUE2_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(2) 214#define CVMX_FPA_QUE3_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(3) 215#define CVMX_FPA_QUE4_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(4) 216#define CVMX_FPA_QUE5_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(5) 217#define CVMX_FPA_QUE6_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(6) 218#define CVMX_FPA_QUE7_PAGE_INDEX CVMX_FPA_QUEX_PAGE_INDEX(7) 219#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 220#define CVMX_FPA_QUE8_PAGE_INDEX CVMX_FPA_QUE8_PAGE_INDEX_FUNC() 221static inline uint64_t CVMX_FPA_QUE8_PAGE_INDEX_FUNC(void) 222{ 223 if (!(OCTEON_IS_MODEL(OCTEON_CN68XX))) 224 cvmx_warn("CVMX_FPA_QUE8_PAGE_INDEX not supported on this chip\n"); 225 return CVMX_ADD_IO_SEG(0x0001180028000250ull); 226} 227#else 228#define CVMX_FPA_QUE8_PAGE_INDEX (CVMX_ADD_IO_SEG(0x0001180028000250ull)) 229#endif 230#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 231static inline uint64_t CVMX_FPA_QUEX_AVAILABLE(unsigned long offset) 232{ 233 if (!( 234 (OCTEON_IS_MODEL(OCTEON_CN30XX) && ((offset <= 7))) || 235 (OCTEON_IS_MODEL(OCTEON_CN31XX) && ((offset <= 7))) || 236 (OCTEON_IS_MODEL(OCTEON_CN38XX) && ((offset <= 7))) || 237 (OCTEON_IS_MODEL(OCTEON_CN50XX) && ((offset <= 7))) || 238 (OCTEON_IS_MODEL(OCTEON_CN52XX) && ((offset <= 7))) || 239 (OCTEON_IS_MODEL(OCTEON_CN56XX) && ((offset <= 7))) || 240 (OCTEON_IS_MODEL(OCTEON_CN58XX) && ((offset <= 7))) || 241 (OCTEON_IS_MODEL(OCTEON_CN61XX) && ((offset <= 7))) || 242 (OCTEON_IS_MODEL(OCTEON_CN63XX) && ((offset <= 7))) || 243 (OCTEON_IS_MODEL(OCTEON_CN66XX) && ((offset <= 7))) || 244 (OCTEON_IS_MODEL(OCTEON_CN68XX) && ((offset <= 8))) || 245 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && ((offset <= 7))))) 246 cvmx_warn("CVMX_FPA_QUEX_AVAILABLE(%lu) is invalid on this chip\n", offset); 247 return CVMX_ADD_IO_SEG(0x0001180028000098ull) + ((offset) & 15) * 8; 248} 249#else 250#define CVMX_FPA_QUEX_AVAILABLE(offset) (CVMX_ADD_IO_SEG(0x0001180028000098ull) + ((offset) & 15) * 8) 251#endif 252#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 253static inline uint64_t CVMX_FPA_QUEX_PAGE_INDEX(unsigned long offset) 254{ 255 if (!( 256 (OCTEON_IS_MODEL(OCTEON_CN30XX) && ((offset <= 7))) || 257 (OCTEON_IS_MODEL(OCTEON_CN31XX) && ((offset <= 7))) || 258 (OCTEON_IS_MODEL(OCTEON_CN38XX) && ((offset <= 7))) || 259 (OCTEON_IS_MODEL(OCTEON_CN50XX) && ((offset <= 7))) || 260 (OCTEON_IS_MODEL(OCTEON_CN52XX) && ((offset <= 7))) || 261 (OCTEON_IS_MODEL(OCTEON_CN56XX) && ((offset <= 7))) || 262 (OCTEON_IS_MODEL(OCTEON_CN58XX) && ((offset <= 7))) || 263 (OCTEON_IS_MODEL(OCTEON_CN61XX) && ((offset <= 7))) || 264 (OCTEON_IS_MODEL(OCTEON_CN63XX) && ((offset <= 7))) || 265 (OCTEON_IS_MODEL(OCTEON_CN66XX) && ((offset <= 7))) || 266 (OCTEON_IS_MODEL(OCTEON_CN68XX) && ((offset <= 7))) || 267 (OCTEON_IS_MODEL(OCTEON_CNF71XX) && ((offset <= 7))))) 268 cvmx_warn("CVMX_FPA_QUEX_PAGE_INDEX(%lu) is invalid on this chip\n", offset); 269 return CVMX_ADD_IO_SEG(0x00011800280000F0ull) + ((offset) & 7) * 8; 270} 271#else 272#define CVMX_FPA_QUEX_PAGE_INDEX(offset) (CVMX_ADD_IO_SEG(0x00011800280000F0ull) + ((offset) & 7) * 8) 273#endif 274#define CVMX_FPA_QUE_ACT (CVMX_ADD_IO_SEG(0x0001180028000138ull)) 275#define CVMX_FPA_QUE_EXP (CVMX_ADD_IO_SEG(0x0001180028000130ull)) 276#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 277#define CVMX_FPA_WART_CTL CVMX_FPA_WART_CTL_FUNC() 278static inline uint64_t CVMX_FPA_WART_CTL_FUNC(void) 279{ 280 if (!(OCTEON_IS_MODEL(OCTEON_CN3XXX) || OCTEON_IS_MODEL(OCTEON_CN5XXX))) 281 cvmx_warn("CVMX_FPA_WART_CTL not supported on this chip\n"); 282 return CVMX_ADD_IO_SEG(0x00011800280000D8ull); 283} 284#else 285#define CVMX_FPA_WART_CTL (CVMX_ADD_IO_SEG(0x00011800280000D8ull)) 286#endif 287#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 288#define CVMX_FPA_WART_STATUS CVMX_FPA_WART_STATUS_FUNC() 289static inline uint64_t CVMX_FPA_WART_STATUS_FUNC(void) 290{ 291 if (!(OCTEON_IS_MODEL(OCTEON_CN3XXX) || OCTEON_IS_MODEL(OCTEON_CN5XXX))) 292 cvmx_warn("CVMX_FPA_WART_STATUS not supported on this chip\n"); 293 return CVMX_ADD_IO_SEG(0x00011800280000E0ull); 294} 295#else 296#define CVMX_FPA_WART_STATUS (CVMX_ADD_IO_SEG(0x00011800280000E0ull)) 297#endif 298#if CVMX_ENABLE_CSR_ADDRESS_CHECKING 299#define CVMX_FPA_WQE_THRESHOLD CVMX_FPA_WQE_THRESHOLD_FUNC() 300static inline uint64_t CVMX_FPA_WQE_THRESHOLD_FUNC(void) 301{ 302 if (!(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))) 303 cvmx_warn("CVMX_FPA_WQE_THRESHOLD not supported on this chip\n"); 304 return CVMX_ADD_IO_SEG(0x0001180028000468ull); 305} 306#else 307#define CVMX_FPA_WQE_THRESHOLD (CVMX_ADD_IO_SEG(0x0001180028000468ull)) 308#endif 309 310/** 311 * cvmx_fpa_addr_range_error 312 * 313 * Space here reserved 314 * 315 * FPA_ADDR_RANGE_ERROR = FPA's Pool Address Range Error Information 316 * 317 * When an address is sent to a pool that does not fall in the start and end address spcified by 318 * FPA_POOLX_START_ADDR and FPA_POOLX_END_ADDR the information related to the failure is captured here. 319 * In addition FPA_INT_SUM[PADDR_E] will be set and this register will not be updated again till 320 * FPA_INT_SUM[PADDR_E] is cleared. 321 */ 322union cvmx_fpa_addr_range_error { 323 uint64_t u64; 324 struct cvmx_fpa_addr_range_error_s { 325#ifdef __BIG_ENDIAN_BITFIELD 326 uint64_t reserved_38_63 : 26; 327 uint64_t pool : 5; /**< Pool address sent to. */ 328 uint64_t addr : 33; /**< Failing address. */ 329#else 330 uint64_t addr : 33; 331 uint64_t pool : 5; 332 uint64_t reserved_38_63 : 26; 333#endif 334 } s; 335 struct cvmx_fpa_addr_range_error_s cn61xx; 336 struct cvmx_fpa_addr_range_error_s cn66xx; 337 struct cvmx_fpa_addr_range_error_s cn68xx; 338 struct cvmx_fpa_addr_range_error_s cn68xxp1; 339 struct cvmx_fpa_addr_range_error_s cnf71xx; 340}; 341typedef union cvmx_fpa_addr_range_error cvmx_fpa_addr_range_error_t; 342 343/** 344 * cvmx_fpa_bist_status 345 * 346 * FPA_BIST_STATUS = BIST Status of FPA Memories 347 * 348 * The result of the BIST run on the FPA memories. 349 */ 350union cvmx_fpa_bist_status { 351 uint64_t u64; 352 struct cvmx_fpa_bist_status_s { 353#ifdef __BIG_ENDIAN_BITFIELD 354 uint64_t reserved_5_63 : 59; 355 uint64_t frd : 1; /**< fpa_frd memory bist status. */ 356 uint64_t fpf0 : 1; /**< fpa_fpf0 memory bist status. */ 357 uint64_t fpf1 : 1; /**< fpa_fpf1 memory bist status. */ 358 uint64_t ffr : 1; /**< fpa_ffr memory bist status. */ 359 uint64_t fdr : 1; /**< fpa_fdr memory bist status. */ 360#else 361 uint64_t fdr : 1; 362 uint64_t ffr : 1; 363 uint64_t fpf1 : 1; 364 uint64_t fpf0 : 1; 365 uint64_t frd : 1; 366 uint64_t reserved_5_63 : 59; 367#endif 368 } s; 369 struct cvmx_fpa_bist_status_s cn30xx; 370 struct cvmx_fpa_bist_status_s cn31xx; 371 struct cvmx_fpa_bist_status_s cn38xx; 372 struct cvmx_fpa_bist_status_s cn38xxp2; 373 struct cvmx_fpa_bist_status_s cn50xx; 374 struct cvmx_fpa_bist_status_s cn52xx; 375 struct cvmx_fpa_bist_status_s cn52xxp1; 376 struct cvmx_fpa_bist_status_s cn56xx; 377 struct cvmx_fpa_bist_status_s cn56xxp1; 378 struct cvmx_fpa_bist_status_s cn58xx; 379 struct cvmx_fpa_bist_status_s cn58xxp1; 380 struct cvmx_fpa_bist_status_s cn61xx; 381 struct cvmx_fpa_bist_status_s cn63xx; 382 struct cvmx_fpa_bist_status_s cn63xxp1; 383 struct cvmx_fpa_bist_status_s cn66xx; 384 struct cvmx_fpa_bist_status_s cn68xx; 385 struct cvmx_fpa_bist_status_s cn68xxp1; 386 struct cvmx_fpa_bist_status_s cnf71xx; 387}; 388typedef union cvmx_fpa_bist_status cvmx_fpa_bist_status_t; 389 390/** 391 * cvmx_fpa_ctl_status 392 * 393 * FPA_CTL_STATUS = FPA's Control/Status Register 394 * 395 * The FPA's interrupt enable register. 396 */ 397union cvmx_fpa_ctl_status { 398 uint64_t u64; 399 struct cvmx_fpa_ctl_status_s { 400#ifdef __BIG_ENDIAN_BITFIELD 401 uint64_t reserved_21_63 : 43; 402 uint64_t free_en : 1; /**< Enables the setting of the INT_SUM_[FREE*] bits. */ 403 uint64_t ret_off : 1; /**< When set NCB devices returning pointer will be 404 stalled. */ 405 uint64_t req_off : 1; /**< When set NCB devices requesting pointers will be 406 stalled. */ 407 uint64_t reset : 1; /**< When set causes a reset of the FPA with the */ 408 uint64_t use_ldt : 1; /**< When clear '0' the FPA will use LDT to load 409 pointers from the L2C. This is a PASS-2 field. */ 410 uint64_t use_stt : 1; /**< When clear '0' the FPA will use STT to store 411 pointers to the L2C. This is a PASS-2 field. */ 412 uint64_t enb : 1; /**< Must be set to 1 AFTER writing all config registers 413 and 10 cycles have past. If any of the config 414 register are written after writing this bit the 415 FPA may begin to operate incorrectly. */ 416 uint64_t mem1_err : 7; /**< Causes a flip of the ECC bit associated 38:32 417 respective to bit 6:0 of this field, for FPF 418 FIFO 1. */ 419 uint64_t mem0_err : 7; /**< Causes a flip of the ECC bit associated 38:32 420 respective to bit 6:0 of this field, for FPF 421 FIFO 0. */ 422#else 423 uint64_t mem0_err : 7; 424 uint64_t mem1_err : 7; 425 uint64_t enb : 1; 426 uint64_t use_stt : 1; 427 uint64_t use_ldt : 1; 428 uint64_t reset : 1; 429 uint64_t req_off : 1; 430 uint64_t ret_off : 1; 431 uint64_t free_en : 1; 432 uint64_t reserved_21_63 : 43; 433#endif 434 } s; 435 struct cvmx_fpa_ctl_status_cn30xx { 436#ifdef __BIG_ENDIAN_BITFIELD 437 uint64_t reserved_18_63 : 46; 438 uint64_t reset : 1; /**< When set causes a reset of the FPA with the 439 exception of the RSL. */ 440 uint64_t use_ldt : 1; /**< When clear '0' the FPA will use LDT to load 441 pointers from the L2C. */ 442 uint64_t use_stt : 1; /**< When clear '0' the FPA will use STT to store 443 pointers to the L2C. */ 444 uint64_t enb : 1; /**< Must be set to 1 AFTER writing all config registers 445 and 10 cycles have past. If any of the config 446 register are written after writing this bit the 447 FPA may begin to operate incorrectly. */ 448 uint64_t mem1_err : 7; /**< Causes a flip of the ECC bit associated 38:32 449 respective to bit 6:0 of this field, for FPF 450 FIFO 1. */ 451 uint64_t mem0_err : 7; /**< Causes a flip of the ECC bit associated 38:32 452 respective to bit 6:0 of this field, for FPF 453 FIFO 0. */ 454#else 455 uint64_t mem0_err : 7; 456 uint64_t mem1_err : 7; 457 uint64_t enb : 1; 458 uint64_t use_stt : 1; 459 uint64_t use_ldt : 1; 460 uint64_t reset : 1; 461 uint64_t reserved_18_63 : 46; 462#endif 463 } cn30xx; 464 struct cvmx_fpa_ctl_status_cn30xx cn31xx; 465 struct cvmx_fpa_ctl_status_cn30xx cn38xx; 466 struct cvmx_fpa_ctl_status_cn30xx cn38xxp2; 467 struct cvmx_fpa_ctl_status_cn30xx cn50xx; 468 struct cvmx_fpa_ctl_status_cn30xx cn52xx; 469 struct cvmx_fpa_ctl_status_cn30xx cn52xxp1; 470 struct cvmx_fpa_ctl_status_cn30xx cn56xx; 471 struct cvmx_fpa_ctl_status_cn30xx cn56xxp1; 472 struct cvmx_fpa_ctl_status_cn30xx cn58xx; 473 struct cvmx_fpa_ctl_status_cn30xx cn58xxp1; 474 struct cvmx_fpa_ctl_status_s cn61xx; 475 struct cvmx_fpa_ctl_status_s cn63xx; 476 struct cvmx_fpa_ctl_status_cn30xx cn63xxp1; 477 struct cvmx_fpa_ctl_status_s cn66xx; 478 struct cvmx_fpa_ctl_status_s cn68xx; 479 struct cvmx_fpa_ctl_status_s cn68xxp1; 480 struct cvmx_fpa_ctl_status_s cnf71xx; 481}; 482typedef union cvmx_fpa_ctl_status cvmx_fpa_ctl_status_t; 483 484/** 485 * cvmx_fpa_fpf#_marks 486 * 487 * FPA_FPF1_MARKS = FPA's Queue 1 Free Page FIFO Read Write Marks 488 * 489 * The high and low watermark register that determines when we write and read free pages from L2C 490 * for Queue 1. The value of FPF_RD and FPF_WR should have at least a 33 difference. Recommend value 491 * is FPF_RD == (FPA_FPF#_SIZE[FPF_SIZ] * .25) and FPF_WR == (FPA_FPF#_SIZE[FPF_SIZ] * .75) 492 */ 493union cvmx_fpa_fpfx_marks { 494 uint64_t u64; 495 struct cvmx_fpa_fpfx_marks_s { 496#ifdef __BIG_ENDIAN_BITFIELD 497 uint64_t reserved_22_63 : 42; 498 uint64_t fpf_wr : 11; /**< When the number of free-page-pointers in a 499 queue exceeds this value the FPA will write 500 32-page-pointers of that queue to DRAM. 501 The MAX value for this field should be 502 FPA_FPF1_SIZE[FPF_SIZ]-2. */ 503 uint64_t fpf_rd : 11; /**< When the number of free-page-pointers in a 504 queue drops below this value and there are 505 free-page-pointers in DRAM, the FPA will 506 read one page (32 pointers) from DRAM. 507 This maximum value for this field should be 508 FPA_FPF1_SIZE[FPF_SIZ]-34. The min number 509 for this would be 16. */ 510#else 511 uint64_t fpf_rd : 11; 512 uint64_t fpf_wr : 11; 513 uint64_t reserved_22_63 : 42; 514#endif 515 } s; 516 struct cvmx_fpa_fpfx_marks_s cn38xx; 517 struct cvmx_fpa_fpfx_marks_s cn38xxp2; 518 struct cvmx_fpa_fpfx_marks_s cn56xx; 519 struct cvmx_fpa_fpfx_marks_s cn56xxp1; 520 struct cvmx_fpa_fpfx_marks_s cn58xx; 521 struct cvmx_fpa_fpfx_marks_s cn58xxp1; 522 struct cvmx_fpa_fpfx_marks_s cn61xx; 523 struct cvmx_fpa_fpfx_marks_s cn63xx; 524 struct cvmx_fpa_fpfx_marks_s cn63xxp1; 525 struct cvmx_fpa_fpfx_marks_s cn66xx; 526 struct cvmx_fpa_fpfx_marks_s cn68xx; 527 struct cvmx_fpa_fpfx_marks_s cn68xxp1; 528 struct cvmx_fpa_fpfx_marks_s cnf71xx; 529}; 530typedef union cvmx_fpa_fpfx_marks cvmx_fpa_fpfx_marks_t; 531 532/** 533 * cvmx_fpa_fpf#_size 534 * 535 * FPA_FPFX_SIZE = FPA's Queue 1-7 Free Page FIFO Size 536 * 537 * The number of page pointers that will be kept local to the FPA for this Queue. FPA Queues are 538 * assigned in order from Queue 0 to Queue 7, though only Queue 0 through Queue x can be used. 539 * The sum of the 8 (0-7) FPA_FPF#_SIZE registers must be limited to 2048. 540 */ 541union cvmx_fpa_fpfx_size { 542 uint64_t u64; 543 struct cvmx_fpa_fpfx_size_s { 544#ifdef __BIG_ENDIAN_BITFIELD 545 uint64_t reserved_11_63 : 53; 546 uint64_t fpf_siz : 11; /**< The number of entries assigned in the FPA FIFO 547 (used to hold page-pointers) for this Queue. 548 The value of this register must divisable by 2, 549 and the FPA will ignore bit [0] of this register. 550 The total of the FPF_SIZ field of the 8 (0-7) 551 FPA_FPF#_SIZE registers must not exceed 2048. 552 After writing this field the FPA will need 10 553 core clock cycles to be ready for operation. The 554 assignment of location in the FPA FIFO must 555 start with Queue 0, then 1, 2, etc. 556 The number of useable entries will be FPF_SIZ-2. */ 557#else 558 uint64_t fpf_siz : 11; 559 uint64_t reserved_11_63 : 53; 560#endif 561 } s; 562 struct cvmx_fpa_fpfx_size_s cn38xx; 563 struct cvmx_fpa_fpfx_size_s cn38xxp2; 564 struct cvmx_fpa_fpfx_size_s cn56xx; 565 struct cvmx_fpa_fpfx_size_s cn56xxp1; 566 struct cvmx_fpa_fpfx_size_s cn58xx; 567 struct cvmx_fpa_fpfx_size_s cn58xxp1; 568 struct cvmx_fpa_fpfx_size_s cn61xx; 569 struct cvmx_fpa_fpfx_size_s cn63xx; 570 struct cvmx_fpa_fpfx_size_s cn63xxp1; 571 struct cvmx_fpa_fpfx_size_s cn66xx; 572 struct cvmx_fpa_fpfx_size_s cn68xx; 573 struct cvmx_fpa_fpfx_size_s cn68xxp1; 574 struct cvmx_fpa_fpfx_size_s cnf71xx; 575}; 576typedef union cvmx_fpa_fpfx_size cvmx_fpa_fpfx_size_t; 577 578/** 579 * cvmx_fpa_fpf0_marks 580 * 581 * FPA_FPF0_MARKS = FPA's Queue 0 Free Page FIFO Read Write Marks 582 * 583 * The high and low watermark register that determines when we write and read free pages from L2C 584 * for Queue 0. The value of FPF_RD and FPF_WR should have at least a 33 difference. Recommend value 585 * is FPF_RD == (FPA_FPF#_SIZE[FPF_SIZ] * .25) and FPF_WR == (FPA_FPF#_SIZE[FPF_SIZ] * .75) 586 */ 587union cvmx_fpa_fpf0_marks { 588 uint64_t u64; 589 struct cvmx_fpa_fpf0_marks_s { 590#ifdef __BIG_ENDIAN_BITFIELD 591 uint64_t reserved_24_63 : 40; 592 uint64_t fpf_wr : 12; /**< When the number of free-page-pointers in a 593 queue exceeds this value the FPA will write 594 32-page-pointers of that queue to DRAM. 595 The MAX value for this field should be 596 FPA_FPF0_SIZE[FPF_SIZ]-2. */ 597 uint64_t fpf_rd : 12; /**< When the number of free-page-pointers in a 598 queue drops below this value and there are 599 free-page-pointers in DRAM, the FPA will 600 read one page (32 pointers) from DRAM. 601 This maximum value for this field should be 602 FPA_FPF0_SIZE[FPF_SIZ]-34. The min number 603 for this would be 16. */ 604#else 605 uint64_t fpf_rd : 12; 606 uint64_t fpf_wr : 12; 607 uint64_t reserved_24_63 : 40; 608#endif 609 } s; 610 struct cvmx_fpa_fpf0_marks_s cn38xx; 611 struct cvmx_fpa_fpf0_marks_s cn38xxp2; 612 struct cvmx_fpa_fpf0_marks_s cn56xx; 613 struct cvmx_fpa_fpf0_marks_s cn56xxp1; 614 struct cvmx_fpa_fpf0_marks_s cn58xx; 615 struct cvmx_fpa_fpf0_marks_s cn58xxp1; 616 struct cvmx_fpa_fpf0_marks_s cn61xx; 617 struct cvmx_fpa_fpf0_marks_s cn63xx; 618 struct cvmx_fpa_fpf0_marks_s cn63xxp1; 619 struct cvmx_fpa_fpf0_marks_s cn66xx; 620 struct cvmx_fpa_fpf0_marks_s cn68xx; 621 struct cvmx_fpa_fpf0_marks_s cn68xxp1; 622 struct cvmx_fpa_fpf0_marks_s cnf71xx; 623}; 624typedef union cvmx_fpa_fpf0_marks cvmx_fpa_fpf0_marks_t; 625 626/** 627 * cvmx_fpa_fpf0_size 628 * 629 * FPA_FPF0_SIZE = FPA's Queue 0 Free Page FIFO Size 630 * 631 * The number of page pointers that will be kept local to the FPA for this Queue. FPA Queues are 632 * assigned in order from Queue 0 to Queue 7, though only Queue 0 through Queue x can be used. 633 * The sum of the 8 (0-7) FPA_FPF#_SIZE registers must be limited to 2048. 634 */ 635union cvmx_fpa_fpf0_size { 636 uint64_t u64; 637 struct cvmx_fpa_fpf0_size_s { 638#ifdef __BIG_ENDIAN_BITFIELD 639 uint64_t reserved_12_63 : 52; 640 uint64_t fpf_siz : 12; /**< The number of entries assigned in the FPA FIFO 641 (used to hold page-pointers) for this Queue. 642 The value of this register must divisable by 2, 643 and the FPA will ignore bit [0] of this register. 644 The total of the FPF_SIZ field of the 8 (0-7) 645 FPA_FPF#_SIZE registers must not exceed 2048. 646 After writing this field the FPA will need 10 647 core clock cycles to be ready for operation. The 648 assignment of location in the FPA FIFO must 649 start with Queue 0, then 1, 2, etc. 650 The number of useable entries will be FPF_SIZ-2. */ 651#else 652 uint64_t fpf_siz : 12; 653 uint64_t reserved_12_63 : 52; 654#endif 655 } s; 656 struct cvmx_fpa_fpf0_size_s cn38xx; 657 struct cvmx_fpa_fpf0_size_s cn38xxp2; 658 struct cvmx_fpa_fpf0_size_s cn56xx; 659 struct cvmx_fpa_fpf0_size_s cn56xxp1; 660 struct cvmx_fpa_fpf0_size_s cn58xx; 661 struct cvmx_fpa_fpf0_size_s cn58xxp1; 662 struct cvmx_fpa_fpf0_size_s cn61xx; 663 struct cvmx_fpa_fpf0_size_s cn63xx; 664 struct cvmx_fpa_fpf0_size_s cn63xxp1; 665 struct cvmx_fpa_fpf0_size_s cn66xx; 666 struct cvmx_fpa_fpf0_size_s cn68xx; 667 struct cvmx_fpa_fpf0_size_s cn68xxp1; 668 struct cvmx_fpa_fpf0_size_s cnf71xx; 669}; 670typedef union cvmx_fpa_fpf0_size cvmx_fpa_fpf0_size_t; 671 672/** 673 * cvmx_fpa_fpf8_marks 674 * 675 * Reserved through 0x238 for additional thresholds 676 * 677 * FPA_FPF8_MARKS = FPA's Queue 8 Free Page FIFO Read Write Marks 678 * 679 * The high and low watermark register that determines when we write and read free pages from L2C 680 * for Queue 8. The value of FPF_RD and FPF_WR should have at least a 33 difference. Recommend value 681 * is FPF_RD == (FPA_FPF#_SIZE[FPF_SIZ] * .25) and FPF_WR == (FPA_FPF#_SIZE[FPF_SIZ] * .75) 682 */ 683union cvmx_fpa_fpf8_marks { 684 uint64_t u64; 685 struct cvmx_fpa_fpf8_marks_s { 686#ifdef __BIG_ENDIAN_BITFIELD 687 uint64_t reserved_22_63 : 42; 688 uint64_t fpf_wr : 11; /**< When the number of free-page-pointers in a 689 queue exceeds this value the FPA will write 690 32-page-pointers of that queue to DRAM. 691 The MAX value for this field should be 692 FPA_FPF0_SIZE[FPF_SIZ]-2. */ 693 uint64_t fpf_rd : 11; /**< When the number of free-page-pointers in a 694 queue drops below this value and there are 695 free-page-pointers in DRAM, the FPA will 696 read one page (32 pointers) from DRAM. 697 This maximum value for this field should be 698 FPA_FPF0_SIZE[FPF_SIZ]-34. The min number 699 for this would be 16. */ 700#else 701 uint64_t fpf_rd : 11; 702 uint64_t fpf_wr : 11; 703 uint64_t reserved_22_63 : 42; 704#endif 705 } s; 706 struct cvmx_fpa_fpf8_marks_s cn68xx; 707 struct cvmx_fpa_fpf8_marks_s cn68xxp1; 708}; 709typedef union cvmx_fpa_fpf8_marks cvmx_fpa_fpf8_marks_t; 710 711/** 712 * cvmx_fpa_fpf8_size 713 * 714 * FPA_FPF8_SIZE = FPA's Queue 8 Free Page FIFO Size 715 * 716 * The number of page pointers that will be kept local to the FPA for this Queue. FPA Queues are 717 * assigned in order from Queue 0 to Queue 7, though only Queue 0 through Queue x can be used. 718 * The sum of the 9 (0-8) FPA_FPF#_SIZE registers must be limited to 2048. 719 */ 720union cvmx_fpa_fpf8_size { 721 uint64_t u64; 722 struct cvmx_fpa_fpf8_size_s { 723#ifdef __BIG_ENDIAN_BITFIELD 724 uint64_t reserved_12_63 : 52; 725 uint64_t fpf_siz : 12; /**< The number of entries assigned in the FPA FIFO 726 (used to hold page-pointers) for this Queue. 727 The value of this register must divisable by 2, 728 and the FPA will ignore bit [0] of this register. 729 The total of the FPF_SIZ field of the 8 (0-7) 730 FPA_FPF#_SIZE registers must not exceed 2048. 731 After writing this field the FPA will need 10 732 core clock cycles to be ready for operation. The 733 assignment of location in the FPA FIFO must 734 start with Queue 0, then 1, 2, etc. 735 The number of useable entries will be FPF_SIZ-2. */ 736#else 737 uint64_t fpf_siz : 12; 738 uint64_t reserved_12_63 : 52; 739#endif 740 } s; 741 struct cvmx_fpa_fpf8_size_s cn68xx; 742 struct cvmx_fpa_fpf8_size_s cn68xxp1; 743}; 744typedef union cvmx_fpa_fpf8_size cvmx_fpa_fpf8_size_t; 745 746/** 747 * cvmx_fpa_int_enb 748 * 749 * FPA_INT_ENB = FPA's Interrupt Enable 750 * 751 * The FPA's interrupt enable register. 752 */ 753union cvmx_fpa_int_enb { 754 uint64_t u64; 755 struct cvmx_fpa_int_enb_s { 756#ifdef __BIG_ENDIAN_BITFIELD 757 uint64_t reserved_50_63 : 14; 758 uint64_t paddr_e : 1; /**< When set (1) and bit 49 of the FPA_INT_SUM 759 register is asserted the FPA will assert an 760 interrupt. */ 761 uint64_t reserved_44_48 : 5; 762 uint64_t free7 : 1; /**< When set (1) and bit 43 of the FPA_INT_SUM 763 register is asserted the FPA will assert an 764 interrupt. */ 765 uint64_t free6 : 1; /**< When set (1) and bit 42 of the FPA_INT_SUM 766 register is asserted the FPA will assert an 767 interrupt. */ 768 uint64_t free5 : 1; /**< When set (1) and bit 41 of the FPA_INT_SUM 769 register is asserted the FPA will assert an 770 interrupt. */ 771 uint64_t free4 : 1; /**< When set (1) and bit 40 of the FPA_INT_SUM 772 register is asserted the FPA will assert an 773 interrupt. */ 774 uint64_t free3 : 1; /**< When set (1) and bit 39 of the FPA_INT_SUM 775 register is asserted the FPA will assert an 776 interrupt. */ 777 uint64_t free2 : 1; /**< When set (1) and bit 38 of the FPA_INT_SUM 778 register is asserted the FPA will assert an 779 interrupt. */ 780 uint64_t free1 : 1; /**< When set (1) and bit 37 of the FPA_INT_SUM 781 register is asserted the FPA will assert an 782 interrupt. */ 783 uint64_t free0 : 1; /**< When set (1) and bit 36 of the FPA_INT_SUM 784 register is asserted the FPA will assert an 785 interrupt. */ 786 uint64_t pool7th : 1; /**< When set (1) and bit 35 of the FPA_INT_SUM 787 register is asserted the FPA will assert an 788 interrupt. */ 789 uint64_t pool6th : 1; /**< When set (1) and bit 34 of the FPA_INT_SUM 790 register is asserted the FPA will assert an 791 interrupt. */ 792 uint64_t pool5th : 1; /**< When set (1) and bit 33 of the FPA_INT_SUM 793 register is asserted the FPA will assert an 794 interrupt. */ 795 uint64_t pool4th : 1; /**< When set (1) and bit 32 of the FPA_INT_SUM 796 register is asserted the FPA will assert an 797 interrupt. */ 798 uint64_t pool3th : 1; /**< When set (1) and bit 31 of the FPA_INT_SUM 799 register is asserted the FPA will assert an 800 interrupt. */ 801 uint64_t pool2th : 1; /**< When set (1) and bit 30 of the FPA_INT_SUM 802 register is asserted the FPA will assert an 803 interrupt. */ 804 uint64_t pool1th : 1; /**< When set (1) and bit 29 of the FPA_INT_SUM 805 register is asserted the FPA will assert an 806 interrupt. */ 807 uint64_t pool0th : 1; /**< When set (1) and bit 28 of the FPA_INT_SUM 808 register is asserted the FPA will assert an 809 interrupt. */ 810 uint64_t q7_perr : 1; /**< When set (1) and bit 27 of the FPA_INT_SUM 811 register is asserted the FPA will assert an 812 interrupt. */ 813 uint64_t q7_coff : 1; /**< When set (1) and bit 26 of the FPA_INT_SUM 814 register is asserted the FPA will assert an 815 interrupt. */ 816 uint64_t q7_und : 1; /**< When set (1) and bit 25 of the FPA_INT_SUM 817 register is asserted the FPA will assert an 818 interrupt. */ 819 uint64_t q6_perr : 1; /**< When set (1) and bit 24 of the FPA_INT_SUM 820 register is asserted the FPA will assert an 821 interrupt. */ 822 uint64_t q6_coff : 1; /**< When set (1) and bit 23 of the FPA_INT_SUM 823 register is asserted the FPA will assert an 824 interrupt. */ 825 uint64_t q6_und : 1; /**< When set (1) and bit 22 of the FPA_INT_SUM 826 register is asserted the FPA will assert an 827 interrupt. */ 828 uint64_t q5_perr : 1; /**< When set (1) and bit 21 of the FPA_INT_SUM 829 register is asserted the FPA will assert an 830 interrupt. */ 831 uint64_t q5_coff : 1; /**< When set (1) and bit 20 of the FPA_INT_SUM 832 register is asserted the FPA will assert an 833 interrupt. */ 834 uint64_t q5_und : 1; /**< When set (1) and bit 19 of the FPA_INT_SUM 835 register is asserted the FPA will assert an 836 interrupt. */ 837 uint64_t q4_perr : 1; /**< When set (1) and bit 18 of the FPA_INT_SUM 838 register is asserted the FPA will assert an 839 interrupt. */ 840 uint64_t q4_coff : 1; /**< When set (1) and bit 17 of the FPA_INT_SUM 841 register is asserted the FPA will assert an 842 interrupt. */ 843 uint64_t q4_und : 1; /**< When set (1) and bit 16 of the FPA_INT_SUM 844 register is asserted the FPA will assert an 845 interrupt. */ 846 uint64_t q3_perr : 1; /**< When set (1) and bit 15 of the FPA_INT_SUM 847 register is asserted the FPA will assert an 848 interrupt. */ 849 uint64_t q3_coff : 1; /**< When set (1) and bit 14 of the FPA_INT_SUM 850 register is asserted the FPA will assert an 851 interrupt. */ 852 uint64_t q3_und : 1; /**< When set (1) and bit 13 of the FPA_INT_SUM 853 register is asserted the FPA will assert an 854 interrupt. */ 855 uint64_t q2_perr : 1; /**< When set (1) and bit 12 of the FPA_INT_SUM 856 register is asserted the FPA will assert an 857 interrupt. */ 858 uint64_t q2_coff : 1; /**< When set (1) and bit 11 of the FPA_INT_SUM 859 register is asserted the FPA will assert an 860 interrupt. */ 861 uint64_t q2_und : 1; /**< When set (1) and bit 10 of the FPA_INT_SUM 862 register is asserted the FPA will assert an 863 interrupt. */ 864 uint64_t q1_perr : 1; /**< When set (1) and bit 9 of the FPA_INT_SUM 865 register is asserted the FPA will assert an 866 interrupt. */ 867 uint64_t q1_coff : 1; /**< When set (1) and bit 8 of the FPA_INT_SUM 868 register is asserted the FPA will assert an 869 interrupt. */ 870 uint64_t q1_und : 1; /**< When set (1) and bit 7 of the FPA_INT_SUM 871 register is asserted the FPA will assert an 872 interrupt. */ 873 uint64_t q0_perr : 1; /**< When set (1) and bit 6 of the FPA_INT_SUM 874 register is asserted the FPA will assert an 875 interrupt. */ 876 uint64_t q0_coff : 1; /**< When set (1) and bit 5 of the FPA_INT_SUM 877 register is asserted the FPA will assert an 878 interrupt. */ 879 uint64_t q0_und : 1; /**< When set (1) and bit 4 of the FPA_INT_SUM 880 register is asserted the FPA will assert an 881 interrupt. */ 882 uint64_t fed1_dbe : 1; /**< When set (1) and bit 3 of the FPA_INT_SUM 883 register is asserted the FPA will assert an 884 interrupt. */ 885 uint64_t fed1_sbe : 1; /**< When set (1) and bit 2 of the FPA_INT_SUM 886 register is asserted the FPA will assert an 887 interrupt. */ 888 uint64_t fed0_dbe : 1; /**< When set (1) and bit 1 of the FPA_INT_SUM 889 register is asserted the FPA will assert an 890 interrupt. */ 891 uint64_t fed0_sbe : 1; /**< When set (1) and bit 0 of the FPA_INT_SUM 892 register is asserted the FPA will assert an 893 interrupt. */ 894#else 895 uint64_t fed0_sbe : 1; 896 uint64_t fed0_dbe : 1; 897 uint64_t fed1_sbe : 1; 898 uint64_t fed1_dbe : 1; 899 uint64_t q0_und : 1; 900 uint64_t q0_coff : 1; 901 uint64_t q0_perr : 1; 902 uint64_t q1_und : 1; 903 uint64_t q1_coff : 1; 904 uint64_t q1_perr : 1; 905 uint64_t q2_und : 1; 906 uint64_t q2_coff : 1; 907 uint64_t q2_perr : 1; 908 uint64_t q3_und : 1; 909 uint64_t q3_coff : 1; 910 uint64_t q3_perr : 1; 911 uint64_t q4_und : 1; 912 uint64_t q4_coff : 1; 913 uint64_t q4_perr : 1; 914 uint64_t q5_und : 1; 915 uint64_t q5_coff : 1; 916 uint64_t q5_perr : 1; 917 uint64_t q6_und : 1; 918 uint64_t q6_coff : 1; 919 uint64_t q6_perr : 1; 920 uint64_t q7_und : 1; 921 uint64_t q7_coff : 1; 922 uint64_t q7_perr : 1; 923 uint64_t pool0th : 1; 924 uint64_t pool1th : 1; 925 uint64_t pool2th : 1; 926 uint64_t pool3th : 1; 927 uint64_t pool4th : 1; 928 uint64_t pool5th : 1; 929 uint64_t pool6th : 1; 930 uint64_t pool7th : 1; 931 uint64_t free0 : 1; 932 uint64_t free1 : 1; 933 uint64_t free2 : 1; 934 uint64_t free3 : 1; 935 uint64_t free4 : 1; 936 uint64_t free5 : 1; 937 uint64_t free6 : 1; 938 uint64_t free7 : 1; 939 uint64_t reserved_44_48 : 5; 940 uint64_t paddr_e : 1; 941 uint64_t reserved_50_63 : 14; 942#endif 943 } s; 944 struct cvmx_fpa_int_enb_cn30xx { 945#ifdef __BIG_ENDIAN_BITFIELD 946 uint64_t reserved_28_63 : 36; 947 uint64_t q7_perr : 1; /**< When set (1) and bit 27 of the FPA_INT_SUM 948 register is asserted the FPA will assert an 949 interrupt. */ 950 uint64_t q7_coff : 1; /**< When set (1) and bit 26 of the FPA_INT_SUM 951 register is asserted the FPA will assert an 952 interrupt. */ 953 uint64_t q7_und : 1; /**< When set (1) and bit 25 of the FPA_INT_SUM 954 register is asserted the FPA will assert an 955 interrupt. */ 956 uint64_t q6_perr : 1; /**< When set (1) and bit 24 of the FPA_INT_SUM 957 register is asserted the FPA will assert an 958 interrupt. */ 959 uint64_t q6_coff : 1; /**< When set (1) and bit 23 of the FPA_INT_SUM 960 register is asserted the FPA will assert an 961 interrupt. */ 962 uint64_t q6_und : 1; /**< When set (1) and bit 22 of the FPA_INT_SUM 963 register is asserted the FPA will assert an 964 interrupt. */ 965 uint64_t q5_perr : 1; /**< When set (1) and bit 21 of the FPA_INT_SUM 966 register is asserted the FPA will assert an 967 interrupt. */ 968 uint64_t q5_coff : 1; /**< When set (1) and bit 20 of the FPA_INT_SUM 969 register is asserted the FPA will assert an 970 interrupt. */ 971 uint64_t q5_und : 1; /**< When set (1) and bit 19 of the FPA_INT_SUM 972 register is asserted the FPA will assert an 973 interrupt. */ 974 uint64_t q4_perr : 1; /**< When set (1) and bit 18 of the FPA_INT_SUM 975 register is asserted the FPA will assert an 976 interrupt. */ 977 uint64_t q4_coff : 1; /**< When set (1) and bit 17 of the FPA_INT_SUM 978 register is asserted the FPA will assert an 979 interrupt. */ 980 uint64_t q4_und : 1; /**< When set (1) and bit 16 of the FPA_INT_SUM 981 register is asserted the FPA will assert an 982 interrupt. */ 983 uint64_t q3_perr : 1; /**< When set (1) and bit 15 of the FPA_INT_SUM 984 register is asserted the FPA will assert an 985 interrupt. */ 986 uint64_t q3_coff : 1; /**< When set (1) and bit 14 of the FPA_INT_SUM 987 register is asserted the FPA will assert an 988 interrupt. */ 989 uint64_t q3_und : 1; /**< When set (1) and bit 13 of the FPA_INT_SUM 990 register is asserted the FPA will assert an 991 interrupt. */ 992 uint64_t q2_perr : 1; /**< When set (1) and bit 12 of the FPA_INT_SUM 993 register is asserted the FPA will assert an 994 interrupt. */ 995 uint64_t q2_coff : 1; /**< When set (1) and bit 11 of the FPA_INT_SUM 996 register is asserted the FPA will assert an 997 interrupt. */ 998 uint64_t q2_und : 1; /**< When set (1) and bit 10 of the FPA_INT_SUM 999 register is asserted the FPA will assert an 1000 interrupt. */ 1001 uint64_t q1_perr : 1; /**< When set (1) and bit 9 of the FPA_INT_SUM 1002 register is asserted the FPA will assert an 1003 interrupt. */ 1004 uint64_t q1_coff : 1; /**< When set (1) and bit 8 of the FPA_INT_SUM 1005 register is asserted the FPA will assert an 1006 interrupt. */ 1007 uint64_t q1_und : 1; /**< When set (1) and bit 7 of the FPA_INT_SUM 1008 register is asserted the FPA will assert an 1009 interrupt. */ 1010 uint64_t q0_perr : 1; /**< When set (1) and bit 6 of the FPA_INT_SUM 1011 register is asserted the FPA will assert an 1012 interrupt. */ 1013 uint64_t q0_coff : 1; /**< When set (1) and bit 5 of the FPA_INT_SUM 1014 register is asserted the FPA will assert an 1015 interrupt. */ 1016 uint64_t q0_und : 1; /**< When set (1) and bit 4 of the FPA_INT_SUM 1017 register is asserted the FPA will assert an 1018 interrupt. */ 1019 uint64_t fed1_dbe : 1; /**< When set (1) and bit 3 of the FPA_INT_SUM 1020 register is asserted the FPA will assert an 1021 interrupt. */ 1022 uint64_t fed1_sbe : 1; /**< When set (1) and bit 2 of the FPA_INT_SUM 1023 register is asserted the FPA will assert an 1024 interrupt. */ 1025 uint64_t fed0_dbe : 1; /**< When set (1) and bit 1 of the FPA_INT_SUM 1026 register is asserted the FPA will assert an 1027 interrupt. */ 1028 uint64_t fed0_sbe : 1; /**< When set (1) and bit 0 of the FPA_INT_SUM 1029 register is asserted the FPA will assert an 1030 interrupt. */ 1031#else 1032 uint64_t fed0_sbe : 1; 1033 uint64_t fed0_dbe : 1; 1034 uint64_t fed1_sbe : 1; 1035 uint64_t fed1_dbe : 1; 1036 uint64_t q0_und : 1; 1037 uint64_t q0_coff : 1; 1038 uint64_t q0_perr : 1; 1039 uint64_t q1_und : 1; 1040 uint64_t q1_coff : 1; 1041 uint64_t q1_perr : 1; 1042 uint64_t q2_und : 1; 1043 uint64_t q2_coff : 1; 1044 uint64_t q2_perr : 1; 1045 uint64_t q3_und : 1; 1046 uint64_t q3_coff : 1; 1047 uint64_t q3_perr : 1; 1048 uint64_t q4_und : 1; 1049 uint64_t q4_coff : 1; 1050 uint64_t q4_perr : 1; 1051 uint64_t q5_und : 1; 1052 uint64_t q5_coff : 1; 1053 uint64_t q5_perr : 1; 1054 uint64_t q6_und : 1; 1055 uint64_t q6_coff : 1; 1056 uint64_t q6_perr : 1; 1057 uint64_t q7_und : 1; 1058 uint64_t q7_coff : 1; 1059 uint64_t q7_perr : 1; 1060 uint64_t reserved_28_63 : 36; 1061#endif 1062 } cn30xx; 1063 struct cvmx_fpa_int_enb_cn30xx cn31xx; 1064 struct cvmx_fpa_int_enb_cn30xx cn38xx; 1065 struct cvmx_fpa_int_enb_cn30xx cn38xxp2; 1066 struct cvmx_fpa_int_enb_cn30xx cn50xx; 1067 struct cvmx_fpa_int_enb_cn30xx cn52xx; 1068 struct cvmx_fpa_int_enb_cn30xx cn52xxp1; 1069 struct cvmx_fpa_int_enb_cn30xx cn56xx; 1070 struct cvmx_fpa_int_enb_cn30xx cn56xxp1; 1071 struct cvmx_fpa_int_enb_cn30xx cn58xx; 1072 struct cvmx_fpa_int_enb_cn30xx cn58xxp1; 1073 struct cvmx_fpa_int_enb_cn61xx { 1074#ifdef __BIG_ENDIAN_BITFIELD 1075 uint64_t reserved_50_63 : 14; 1076 uint64_t paddr_e : 1; /**< When set (1) and bit 49 of the FPA_INT_SUM 1077 register is asserted the FPA will assert an 1078 interrupt. */ 1079 uint64_t res_44 : 5; /**< Reserved */ 1080 uint64_t free7 : 1; /**< When set (1) and bit 43 of the FPA_INT_SUM 1081 register is asserted the FPA will assert an 1082 interrupt. */ 1083 uint64_t free6 : 1; /**< When set (1) and bit 42 of the FPA_INT_SUM 1084 register is asserted the FPA will assert an 1085 interrupt. */ 1086 uint64_t free5 : 1; /**< When set (1) and bit 41 of the FPA_INT_SUM 1087 register is asserted the FPA will assert an 1088 interrupt. */ 1089 uint64_t free4 : 1; /**< When set (1) and bit 40 of the FPA_INT_SUM 1090 register is asserted the FPA will assert an 1091 interrupt. */ 1092 uint64_t free3 : 1; /**< When set (1) and bit 39 of the FPA_INT_SUM 1093 register is asserted the FPA will assert an 1094 interrupt. */ 1095 uint64_t free2 : 1; /**< When set (1) and bit 38 of the FPA_INT_SUM 1096 register is asserted the FPA will assert an 1097 interrupt. */ 1098 uint64_t free1 : 1; /**< When set (1) and bit 37 of the FPA_INT_SUM 1099 register is asserted the FPA will assert an 1100 interrupt. */ 1101 uint64_t free0 : 1; /**< When set (1) and bit 36 of the FPA_INT_SUM 1102 register is asserted the FPA will assert an 1103 interrupt. */ 1104 uint64_t pool7th : 1; /**< When set (1) and bit 35 of the FPA_INT_SUM 1105 register is asserted the FPA will assert an 1106 interrupt. */ 1107 uint64_t pool6th : 1; /**< When set (1) and bit 34 of the FPA_INT_SUM 1108 register is asserted the FPA will assert an 1109 interrupt. */ 1110 uint64_t pool5th : 1; /**< When set (1) and bit 33 of the FPA_INT_SUM 1111 register is asserted the FPA will assert an 1112 interrupt. */ 1113 uint64_t pool4th : 1; /**< When set (1) and bit 32 of the FPA_INT_SUM 1114 register is asserted the FPA will assert an 1115 interrupt. */ 1116 uint64_t pool3th : 1; /**< When set (1) and bit 31 of the FPA_INT_SUM 1117 register is asserted the FPA will assert an 1118 interrupt. */ 1119 uint64_t pool2th : 1; /**< When set (1) and bit 30 of the FPA_INT_SUM 1120 register is asserted the FPA will assert an 1121 interrupt. */ 1122 uint64_t pool1th : 1; /**< When set (1) and bit 29 of the FPA_INT_SUM 1123 register is asserted the FPA will assert an 1124 interrupt. */ 1125 uint64_t pool0th : 1; /**< When set (1) and bit 28 of the FPA_INT_SUM 1126 register is asserted the FPA will assert an 1127 interrupt. */ 1128 uint64_t q7_perr : 1; /**< When set (1) and bit 27 of the FPA_INT_SUM 1129 register is asserted the FPA will assert an 1130 interrupt. */ 1131 uint64_t q7_coff : 1; /**< When set (1) and bit 26 of the FPA_INT_SUM 1132 register is asserted the FPA will assert an 1133 interrupt. */ 1134 uint64_t q7_und : 1; /**< When set (1) and bit 25 of the FPA_INT_SUM 1135 register is asserted the FPA will assert an 1136 interrupt. */ 1137 uint64_t q6_perr : 1; /**< When set (1) and bit 24 of the FPA_INT_SUM 1138 register is asserted the FPA will assert an 1139 interrupt. */ 1140 uint64_t q6_coff : 1; /**< When set (1) and bit 23 of the FPA_INT_SUM 1141 register is asserted the FPA will assert an 1142 interrupt. */ 1143 uint64_t q6_und : 1; /**< When set (1) and bit 22 of the FPA_INT_SUM 1144 register is asserted the FPA will assert an 1145 interrupt. */ 1146 uint64_t q5_perr : 1; /**< When set (1) and bit 21 of the FPA_INT_SUM 1147 register is asserted the FPA will assert an 1148 interrupt. */ 1149 uint64_t q5_coff : 1; /**< When set (1) and bit 20 of the FPA_INT_SUM 1150 register is asserted the FPA will assert an 1151 interrupt. */ 1152 uint64_t q5_und : 1; /**< When set (1) and bit 19 of the FPA_INT_SUM 1153 register is asserted the FPA will assert an 1154 interrupt. */ 1155 uint64_t q4_perr : 1; /**< When set (1) and bit 18 of the FPA_INT_SUM 1156 register is asserted the FPA will assert an 1157 interrupt. */ 1158 uint64_t q4_coff : 1; /**< When set (1) and bit 17 of the FPA_INT_SUM 1159 register is asserted the FPA will assert an 1160 interrupt. */ 1161 uint64_t q4_und : 1; /**< When set (1) and bit 16 of the FPA_INT_SUM 1162 register is asserted the FPA will assert an 1163 interrupt. */ 1164 uint64_t q3_perr : 1; /**< When set (1) and bit 15 of the FPA_INT_SUM 1165 register is asserted the FPA will assert an 1166 interrupt. */ 1167 uint64_t q3_coff : 1; /**< When set (1) and bit 14 of the FPA_INT_SUM 1168 register is asserted the FPA will assert an 1169 interrupt. */ 1170 uint64_t q3_und : 1; /**< When set (1) and bit 13 of the FPA_INT_SUM 1171 register is asserted the FPA will assert an 1172 interrupt. */ 1173 uint64_t q2_perr : 1; /**< When set (1) and bit 12 of the FPA_INT_SUM 1174 register is asserted the FPA will assert an 1175 interrupt. */ 1176 uint64_t q2_coff : 1; /**< When set (1) and bit 11 of the FPA_INT_SUM 1177 register is asserted the FPA will assert an 1178 interrupt. */ 1179 uint64_t q2_und : 1; /**< When set (1) and bit 10 of the FPA_INT_SUM 1180 register is asserted the FPA will assert an 1181 interrupt. */ 1182 uint64_t q1_perr : 1; /**< When set (1) and bit 9 of the FPA_INT_SUM 1183 register is asserted the FPA will assert an 1184 interrupt. */ 1185 uint64_t q1_coff : 1; /**< When set (1) and bit 8 of the FPA_INT_SUM 1186 register is asserted the FPA will assert an 1187 interrupt. */ 1188 uint64_t q1_und : 1; /**< When set (1) and bit 7 of the FPA_INT_SUM 1189 register is asserted the FPA will assert an 1190 interrupt. */ 1191 uint64_t q0_perr : 1; /**< When set (1) and bit 6 of the FPA_INT_SUM 1192 register is asserted the FPA will assert an 1193 interrupt. */ 1194 uint64_t q0_coff : 1; /**< When set (1) and bit 5 of the FPA_INT_SUM 1195 register is asserted the FPA will assert an 1196 interrupt. */ 1197 uint64_t q0_und : 1; /**< When set (1) and bit 4 of the FPA_INT_SUM 1198 register is asserted the FPA will assert an 1199 interrupt. */ 1200 uint64_t fed1_dbe : 1; /**< When set (1) and bit 3 of the FPA_INT_SUM 1201 register is asserted the FPA will assert an 1202 interrupt. */ 1203 uint64_t fed1_sbe : 1; /**< When set (1) and bit 2 of the FPA_INT_SUM 1204 register is asserted the FPA will assert an 1205 interrupt. */ 1206 uint64_t fed0_dbe : 1; /**< When set (1) and bit 1 of the FPA_INT_SUM 1207 register is asserted the FPA will assert an 1208 interrupt. */ 1209 uint64_t fed0_sbe : 1; /**< When set (1) and bit 0 of the FPA_INT_SUM 1210 register is asserted the FPA will assert an 1211 interrupt. */ 1212#else 1213 uint64_t fed0_sbe : 1; 1214 uint64_t fed0_dbe : 1; 1215 uint64_t fed1_sbe : 1; 1216 uint64_t fed1_dbe : 1; 1217 uint64_t q0_und : 1; 1218 uint64_t q0_coff : 1; 1219 uint64_t q0_perr : 1; 1220 uint64_t q1_und : 1; 1221 uint64_t q1_coff : 1; 1222 uint64_t q1_perr : 1; 1223 uint64_t q2_und : 1; 1224 uint64_t q2_coff : 1; 1225 uint64_t q2_perr : 1; 1226 uint64_t q3_und : 1; 1227 uint64_t q3_coff : 1; 1228 uint64_t q3_perr : 1; 1229 uint64_t q4_und : 1; 1230 uint64_t q4_coff : 1; 1231 uint64_t q4_perr : 1; 1232 uint64_t q5_und : 1; 1233 uint64_t q5_coff : 1; 1234 uint64_t q5_perr : 1; 1235 uint64_t q6_und : 1; 1236 uint64_t q6_coff : 1; 1237 uint64_t q6_perr : 1; 1238 uint64_t q7_und : 1; 1239 uint64_t q7_coff : 1; 1240 uint64_t q7_perr : 1; 1241 uint64_t pool0th : 1; 1242 uint64_t pool1th : 1; 1243 uint64_t pool2th : 1; 1244 uint64_t pool3th : 1; 1245 uint64_t pool4th : 1; 1246 uint64_t pool5th : 1; 1247 uint64_t pool6th : 1; 1248 uint64_t pool7th : 1; 1249 uint64_t free0 : 1; 1250 uint64_t free1 : 1; 1251 uint64_t free2 : 1; 1252 uint64_t free3 : 1; 1253 uint64_t free4 : 1; 1254 uint64_t free5 : 1; 1255 uint64_t free6 : 1; 1256 uint64_t free7 : 1; 1257 uint64_t res_44 : 5; 1258 uint64_t paddr_e : 1; 1259 uint64_t reserved_50_63 : 14; 1260#endif 1261 } cn61xx; 1262 struct cvmx_fpa_int_enb_cn63xx { 1263#ifdef __BIG_ENDIAN_BITFIELD 1264 uint64_t reserved_44_63 : 20; 1265 uint64_t free7 : 1; /**< When set (1) and bit 43 of the FPA_INT_SUM 1266 register is asserted the FPA will assert an 1267 interrupt. */ 1268 uint64_t free6 : 1; /**< When set (1) and bit 42 of the FPA_INT_SUM 1269 register is asserted the FPA will assert an 1270 interrupt. */ 1271 uint64_t free5 : 1; /**< When set (1) and bit 41 of the FPA_INT_SUM 1272 register is asserted the FPA will assert an 1273 interrupt. */ 1274 uint64_t free4 : 1; /**< When set (1) and bit 40 of the FPA_INT_SUM 1275 register is asserted the FPA will assert an 1276 interrupt. */ 1277 uint64_t free3 : 1; /**< When set (1) and bit 39 of the FPA_INT_SUM 1278 register is asserted the FPA will assert an 1279 interrupt. */ 1280 uint64_t free2 : 1; /**< When set (1) and bit 38 of the FPA_INT_SUM 1281 register is asserted the FPA will assert an 1282 interrupt. */ 1283 uint64_t free1 : 1; /**< When set (1) and bit 37 of the FPA_INT_SUM 1284 register is asserted the FPA will assert an 1285 interrupt. */ 1286 uint64_t free0 : 1; /**< When set (1) and bit 36 of the FPA_INT_SUM 1287 register is asserted the FPA will assert an 1288 interrupt. */ 1289 uint64_t pool7th : 1; /**< When set (1) and bit 35 of the FPA_INT_SUM 1290 register is asserted the FPA will assert an 1291 interrupt. */ 1292 uint64_t pool6th : 1; /**< When set (1) and bit 34 of the FPA_INT_SUM 1293 register is asserted the FPA will assert an 1294 interrupt. */ 1295 uint64_t pool5th : 1; /**< When set (1) and bit 33 of the FPA_INT_SUM 1296 register is asserted the FPA will assert an 1297 interrupt. */ 1298 uint64_t pool4th : 1; /**< When set (1) and bit 32 of the FPA_INT_SUM 1299 register is asserted the FPA will assert an 1300 interrupt. */ 1301 uint64_t pool3th : 1; /**< When set (1) and bit 31 of the FPA_INT_SUM 1302 register is asserted the FPA will assert an 1303 interrupt. */ 1304 uint64_t pool2th : 1; /**< When set (1) and bit 30 of the FPA_INT_SUM 1305 register is asserted the FPA will assert an 1306 interrupt. */ 1307 uint64_t pool1th : 1; /**< When set (1) and bit 29 of the FPA_INT_SUM 1308 register is asserted the FPA will assert an 1309 interrupt. */ 1310 uint64_t pool0th : 1; /**< When set (1) and bit 28 of the FPA_INT_SUM 1311 register is asserted the FPA will assert an 1312 interrupt. */ 1313 uint64_t q7_perr : 1; /**< When set (1) and bit 27 of the FPA_INT_SUM 1314 register is asserted the FPA will assert an 1315 interrupt. */ 1316 uint64_t q7_coff : 1; /**< When set (1) and bit 26 of the FPA_INT_SUM 1317 register is asserted the FPA will assert an 1318 interrupt. */ 1319 uint64_t q7_und : 1; /**< When set (1) and bit 25 of the FPA_INT_SUM 1320 register is asserted the FPA will assert an 1321 interrupt. */ 1322 uint64_t q6_perr : 1; /**< When set (1) and bit 24 of the FPA_INT_SUM 1323 register is asserted the FPA will assert an 1324 interrupt. */ 1325 uint64_t q6_coff : 1; /**< When set (1) and bit 23 of the FPA_INT_SUM 1326 register is asserted the FPA will assert an 1327 interrupt. */ 1328 uint64_t q6_und : 1; /**< When set (1) and bit 22 of the FPA_INT_SUM 1329 register is asserted the FPA will assert an 1330 interrupt. */ 1331 uint64_t q5_perr : 1; /**< When set (1) and bit 21 of the FPA_INT_SUM 1332 register is asserted the FPA will assert an 1333 interrupt. */ 1334 uint64_t q5_coff : 1; /**< When set (1) and bit 20 of the FPA_INT_SUM 1335 register is asserted the FPA will assert an 1336 interrupt. */ 1337 uint64_t q5_und : 1; /**< When set (1) and bit 19 of the FPA_INT_SUM 1338 register is asserted the FPA will assert an 1339 interrupt. */ 1340 uint64_t q4_perr : 1; /**< When set (1) and bit 18 of the FPA_INT_SUM 1341 register is asserted the FPA will assert an 1342 interrupt. */ 1343 uint64_t q4_coff : 1; /**< When set (1) and bit 17 of the FPA_INT_SUM 1344 register is asserted the FPA will assert an 1345 interrupt. */ 1346 uint64_t q4_und : 1; /**< When set (1) and bit 16 of the FPA_INT_SUM 1347 register is asserted the FPA will assert an 1348 interrupt. */ 1349 uint64_t q3_perr : 1; /**< When set (1) and bit 15 of the FPA_INT_SUM 1350 register is asserted the FPA will assert an 1351 interrupt. */ 1352 uint64_t q3_coff : 1; /**< When set (1) and bit 14 of the FPA_INT_SUM 1353 register is asserted the FPA will assert an 1354 interrupt. */ 1355 uint64_t q3_und : 1; /**< When set (1) and bit 13 of the FPA_INT_SUM 1356 register is asserted the FPA will assert an 1357 interrupt. */ 1358 uint64_t q2_perr : 1; /**< When set (1) and bit 12 of the FPA_INT_SUM 1359 register is asserted the FPA will assert an 1360 interrupt. */ 1361 uint64_t q2_coff : 1; /**< When set (1) and bit 11 of the FPA_INT_SUM 1362 register is asserted the FPA will assert an 1363 interrupt. */ 1364 uint64_t q2_und : 1; /**< When set (1) and bit 10 of the FPA_INT_SUM 1365 register is asserted the FPA will assert an 1366 interrupt. */ 1367 uint64_t q1_perr : 1; /**< When set (1) and bit 9 of the FPA_INT_SUM 1368 register is asserted the FPA will assert an 1369 interrupt. */ 1370 uint64_t q1_coff : 1; /**< When set (1) and bit 8 of the FPA_INT_SUM 1371 register is asserted the FPA will assert an 1372 interrupt. */ 1373 uint64_t q1_und : 1; /**< When set (1) and bit 7 of the FPA_INT_SUM 1374 register is asserted the FPA will assert an 1375 interrupt. */ 1376 uint64_t q0_perr : 1; /**< When set (1) and bit 6 of the FPA_INT_SUM 1377 register is asserted the FPA will assert an 1378 interrupt. */ 1379 uint64_t q0_coff : 1; /**< When set (1) and bit 5 of the FPA_INT_SUM 1380 register is asserted the FPA will assert an 1381 interrupt. */ 1382 uint64_t q0_und : 1; /**< When set (1) and bit 4 of the FPA_INT_SUM 1383 register is asserted the FPA will assert an 1384 interrupt. */ 1385 uint64_t fed1_dbe : 1; /**< When set (1) and bit 3 of the FPA_INT_SUM 1386 register is asserted the FPA will assert an 1387 interrupt. */ 1388 uint64_t fed1_sbe : 1; /**< When set (1) and bit 2 of the FPA_INT_SUM 1389 register is asserted the FPA will assert an 1390 interrupt. */ 1391 uint64_t fed0_dbe : 1; /**< When set (1) and bit 1 of the FPA_INT_SUM 1392 register is asserted the FPA will assert an 1393 interrupt. */ 1394 uint64_t fed0_sbe : 1; /**< When set (1) and bit 0 of the FPA_INT_SUM 1395 register is asserted the FPA will assert an 1396 interrupt. */ 1397#else 1398 uint64_t fed0_sbe : 1; 1399 uint64_t fed0_dbe : 1; 1400 uint64_t fed1_sbe : 1; 1401 uint64_t fed1_dbe : 1; 1402 uint64_t q0_und : 1; 1403 uint64_t q0_coff : 1; 1404 uint64_t q0_perr : 1; 1405 uint64_t q1_und : 1; 1406 uint64_t q1_coff : 1; 1407 uint64_t q1_perr : 1; 1408 uint64_t q2_und : 1; 1409 uint64_t q2_coff : 1; 1410 uint64_t q2_perr : 1; 1411 uint64_t q3_und : 1; 1412 uint64_t q3_coff : 1; 1413 uint64_t q3_perr : 1; 1414 uint64_t q4_und : 1; 1415 uint64_t q4_coff : 1; 1416 uint64_t q4_perr : 1; 1417 uint64_t q5_und : 1; 1418 uint64_t q5_coff : 1; 1419 uint64_t q5_perr : 1; 1420 uint64_t q6_und : 1; 1421 uint64_t q6_coff : 1; 1422 uint64_t q6_perr : 1; 1423 uint64_t q7_und : 1; 1424 uint64_t q7_coff : 1; 1425 uint64_t q7_perr : 1; 1426 uint64_t pool0th : 1; 1427 uint64_t pool1th : 1; 1428 uint64_t pool2th : 1; 1429 uint64_t pool3th : 1; 1430 uint64_t pool4th : 1; 1431 uint64_t pool5th : 1; 1432 uint64_t pool6th : 1; 1433 uint64_t pool7th : 1; 1434 uint64_t free0 : 1; 1435 uint64_t free1 : 1; 1436 uint64_t free2 : 1; 1437 uint64_t free3 : 1; 1438 uint64_t free4 : 1; 1439 uint64_t free5 : 1; 1440 uint64_t free6 : 1; 1441 uint64_t free7 : 1; 1442 uint64_t reserved_44_63 : 20; 1443#endif 1444 } cn63xx; 1445 struct cvmx_fpa_int_enb_cn30xx cn63xxp1; 1446 struct cvmx_fpa_int_enb_cn61xx cn66xx; 1447 struct cvmx_fpa_int_enb_cn68xx { 1448#ifdef __BIG_ENDIAN_BITFIELD 1449 uint64_t reserved_50_63 : 14; 1450 uint64_t paddr_e : 1; /**< When set (1) and bit 49 of the FPA_INT_SUM 1451 register is asserted the FPA will assert an 1452 interrupt. */ 1453 uint64_t pool8th : 1; /**< When set (1) and bit 48 of the FPA_INT_SUM 1454 register is asserted the FPA will assert an 1455 interrupt. */ 1456 uint64_t q8_perr : 1; /**< When set (1) and bit 47 of the FPA_INT_SUM 1457 register is asserted the FPA will assert an 1458 interrupt. */ 1459 uint64_t q8_coff : 1; /**< When set (1) and bit 46 of the FPA_INT_SUM 1460 register is asserted the FPA will assert an 1461 interrupt. */ 1462 uint64_t q8_und : 1; /**< When set (1) and bit 45 of the FPA_INT_SUM 1463 register is asserted the FPA will assert an 1464 interrupt. */ 1465 uint64_t free8 : 1; /**< When set (1) and bit 44 of the FPA_INT_SUM 1466 register is asserted the FPA will assert an 1467 interrupt. */ 1468 uint64_t free7 : 1; /**< When set (1) and bit 43 of the FPA_INT_SUM 1469 register is asserted the FPA will assert an 1470 interrupt. */ 1471 uint64_t free6 : 1; /**< When set (1) and bit 42 of the FPA_INT_SUM 1472 register is asserted the FPA will assert an 1473 interrupt. */ 1474 uint64_t free5 : 1; /**< When set (1) and bit 41 of the FPA_INT_SUM 1475 register is asserted the FPA will assert an 1476 interrupt. */ 1477 uint64_t free4 : 1; /**< When set (1) and bit 40 of the FPA_INT_SUM 1478 register is asserted the FPA will assert an 1479 interrupt. */ 1480 uint64_t free3 : 1; /**< When set (1) and bit 39 of the FPA_INT_SUM 1481 register is asserted the FPA will assert an 1482 interrupt. */ 1483 uint64_t free2 : 1; /**< When set (1) and bit 38 of the FPA_INT_SUM 1484 register is asserted the FPA will assert an 1485 interrupt. */ 1486 uint64_t free1 : 1; /**< When set (1) and bit 37 of the FPA_INT_SUM 1487 register is asserted the FPA will assert an 1488 interrupt. */ 1489 uint64_t free0 : 1; /**< When set (1) and bit 36 of the FPA_INT_SUM 1490 register is asserted the FPA will assert an 1491 interrupt. */ 1492 uint64_t pool7th : 1; /**< When set (1) and bit 35 of the FPA_INT_SUM 1493 register is asserted the FPA will assert an 1494 interrupt. */ 1495 uint64_t pool6th : 1; /**< When set (1) and bit 34 of the FPA_INT_SUM 1496 register is asserted the FPA will assert an 1497 interrupt. */ 1498 uint64_t pool5th : 1; /**< When set (1) and bit 33 of the FPA_INT_SUM 1499 register is asserted the FPA will assert an 1500 interrupt. */ 1501 uint64_t pool4th : 1; /**< When set (1) and bit 32 of the FPA_INT_SUM 1502 register is asserted the FPA will assert an 1503 interrupt. */ 1504 uint64_t pool3th : 1; /**< When set (1) and bit 31 of the FPA_INT_SUM 1505 register is asserted the FPA will assert an 1506 interrupt. */ 1507 uint64_t pool2th : 1; /**< When set (1) and bit 30 of the FPA_INT_SUM 1508 register is asserted the FPA will assert an 1509 interrupt. */ 1510 uint64_t pool1th : 1; /**< When set (1) and bit 29 of the FPA_INT_SUM 1511 register is asserted the FPA will assert an 1512 interrupt. */ 1513 uint64_t pool0th : 1; /**< When set (1) and bit 28 of the FPA_INT_SUM 1514 register is asserted the FPA will assert an 1515 interrupt. */ 1516 uint64_t q7_perr : 1; /**< When set (1) and bit 27 of the FPA_INT_SUM 1517 register is asserted the FPA will assert an 1518 interrupt. */ 1519 uint64_t q7_coff : 1; /**< When set (1) and bit 26 of the FPA_INT_SUM 1520 register is asserted the FPA will assert an 1521 interrupt. */ 1522 uint64_t q7_und : 1; /**< When set (1) and bit 25 of the FPA_INT_SUM 1523 register is asserted the FPA will assert an 1524 interrupt. */ 1525 uint64_t q6_perr : 1; /**< When set (1) and bit 24 of the FPA_INT_SUM 1526 register is asserted the FPA will assert an 1527 interrupt. */ 1528 uint64_t q6_coff : 1; /**< When set (1) and bit 23 of the FPA_INT_SUM 1529 register is asserted the FPA will assert an 1530 interrupt. */ 1531 uint64_t q6_und : 1; /**< When set (1) and bit 22 of the FPA_INT_SUM 1532 register is asserted the FPA will assert an 1533 interrupt. */ 1534 uint64_t q5_perr : 1; /**< When set (1) and bit 21 of the FPA_INT_SUM 1535 register is asserted the FPA will assert an 1536 interrupt. */ 1537 uint64_t q5_coff : 1; /**< When set (1) and bit 20 of the FPA_INT_SUM 1538 register is asserted the FPA will assert an 1539 interrupt. */ 1540 uint64_t q5_und : 1; /**< When set (1) and bit 19 of the FPA_INT_SUM 1541 register is asserted the FPA will assert an 1542 interrupt. */ 1543 uint64_t q4_perr : 1; /**< When set (1) and bit 18 of the FPA_INT_SUM 1544 register is asserted the FPA will assert an 1545 interrupt. */ 1546 uint64_t q4_coff : 1; /**< When set (1) and bit 17 of the FPA_INT_SUM 1547 register is asserted the FPA will assert an 1548 interrupt. */ 1549 uint64_t q4_und : 1; /**< When set (1) and bit 16 of the FPA_INT_SUM 1550 register is asserted the FPA will assert an 1551 interrupt. */ 1552 uint64_t q3_perr : 1; /**< When set (1) and bit 15 of the FPA_INT_SUM 1553 register is asserted the FPA will assert an 1554 interrupt. */ 1555 uint64_t q3_coff : 1; /**< When set (1) and bit 14 of the FPA_INT_SUM 1556 register is asserted the FPA will assert an 1557 interrupt. */ 1558 uint64_t q3_und : 1; /**< When set (1) and bit 13 of the FPA_INT_SUM 1559 register is asserted the FPA will assert an 1560 interrupt. */ 1561 uint64_t q2_perr : 1; /**< When set (1) and bit 12 of the FPA_INT_SUM 1562 register is asserted the FPA will assert an 1563 interrupt. */ 1564 uint64_t q2_coff : 1; /**< When set (1) and bit 11 of the FPA_INT_SUM 1565 register is asserted the FPA will assert an 1566 interrupt. */ 1567 uint64_t q2_und : 1; /**< When set (1) and bit 10 of the FPA_INT_SUM 1568 register is asserted the FPA will assert an 1569 interrupt. */ 1570 uint64_t q1_perr : 1; /**< When set (1) and bit 9 of the FPA_INT_SUM 1571 register is asserted the FPA will assert an 1572 interrupt. */ 1573 uint64_t q1_coff : 1; /**< When set (1) and bit 8 of the FPA_INT_SUM 1574 register is asserted the FPA will assert an 1575 interrupt. */ 1576 uint64_t q1_und : 1; /**< When set (1) and bit 7 of the FPA_INT_SUM 1577 register is asserted the FPA will assert an 1578 interrupt. */ 1579 uint64_t q0_perr : 1; /**< When set (1) and bit 6 of the FPA_INT_SUM 1580 register is asserted the FPA will assert an 1581 interrupt. */ 1582 uint64_t q0_coff : 1; /**< When set (1) and bit 5 of the FPA_INT_SUM 1583 register is asserted the FPA will assert an 1584 interrupt. */ 1585 uint64_t q0_und : 1; /**< When set (1) and bit 4 of the FPA_INT_SUM 1586 register is asserted the FPA will assert an 1587 interrupt. */ 1588 uint64_t fed1_dbe : 1; /**< When set (1) and bit 3 of the FPA_INT_SUM 1589 register is asserted the FPA will assert an 1590 interrupt. */ 1591 uint64_t fed1_sbe : 1; /**< When set (1) and bit 2 of the FPA_INT_SUM 1592 register is asserted the FPA will assert an 1593 interrupt. */ 1594 uint64_t fed0_dbe : 1; /**< When set (1) and bit 1 of the FPA_INT_SUM 1595 register is asserted the FPA will assert an 1596 interrupt. */ 1597 uint64_t fed0_sbe : 1; /**< When set (1) and bit 0 of the FPA_INT_SUM 1598 register is asserted the FPA will assert an 1599 interrupt. */ 1600#else 1601 uint64_t fed0_sbe : 1; 1602 uint64_t fed0_dbe : 1; 1603 uint64_t fed1_sbe : 1; 1604 uint64_t fed1_dbe : 1; 1605 uint64_t q0_und : 1; 1606 uint64_t q0_coff : 1; 1607 uint64_t q0_perr : 1; 1608 uint64_t q1_und : 1; 1609 uint64_t q1_coff : 1; 1610 uint64_t q1_perr : 1; 1611 uint64_t q2_und : 1; 1612 uint64_t q2_coff : 1; 1613 uint64_t q2_perr : 1; 1614 uint64_t q3_und : 1; 1615 uint64_t q3_coff : 1; 1616 uint64_t q3_perr : 1; 1617 uint64_t q4_und : 1; 1618 uint64_t q4_coff : 1; 1619 uint64_t q4_perr : 1; 1620 uint64_t q5_und : 1; 1621 uint64_t q5_coff : 1; 1622 uint64_t q5_perr : 1; 1623 uint64_t q6_und : 1; 1624 uint64_t q6_coff : 1; 1625 uint64_t q6_perr : 1; 1626 uint64_t q7_und : 1; 1627 uint64_t q7_coff : 1; 1628 uint64_t q7_perr : 1; 1629 uint64_t pool0th : 1; 1630 uint64_t pool1th : 1; 1631 uint64_t pool2th : 1; 1632 uint64_t pool3th : 1; 1633 uint64_t pool4th : 1; 1634 uint64_t pool5th : 1; 1635 uint64_t pool6th : 1; 1636 uint64_t pool7th : 1; 1637 uint64_t free0 : 1; 1638 uint64_t free1 : 1; 1639 uint64_t free2 : 1; 1640 uint64_t free3 : 1; 1641 uint64_t free4 : 1; 1642 uint64_t free5 : 1; 1643 uint64_t free6 : 1; 1644 uint64_t free7 : 1; 1645 uint64_t free8 : 1; 1646 uint64_t q8_und : 1; 1647 uint64_t q8_coff : 1; 1648 uint64_t q8_perr : 1; 1649 uint64_t pool8th : 1; 1650 uint64_t paddr_e : 1; 1651 uint64_t reserved_50_63 : 14; 1652#endif 1653 } cn68xx; 1654 struct cvmx_fpa_int_enb_cn68xx cn68xxp1; 1655 struct cvmx_fpa_int_enb_cn61xx cnf71xx; 1656}; 1657typedef union cvmx_fpa_int_enb cvmx_fpa_int_enb_t; 1658 1659/** 1660 * cvmx_fpa_int_sum 1661 * 1662 * FPA_INT_SUM = FPA's Interrupt Summary Register 1663 * 1664 * Contains the different interrupt summary bits of the FPA. 1665 */ 1666union cvmx_fpa_int_sum { 1667 uint64_t u64; 1668 struct cvmx_fpa_int_sum_s { 1669#ifdef __BIG_ENDIAN_BITFIELD 1670 uint64_t reserved_50_63 : 14; 1671 uint64_t paddr_e : 1; /**< Set when a pointer address does not fall in the 1672 address range for a pool specified by 1673 FPA_POOLX_START_ADDR and FPA_POOLX_END_ADDR. */ 1674 uint64_t pool8th : 1; /**< Set when FPA_QUE8_AVAILABLE is equal to 1675 FPA_POOL8_THRESHOLD[THRESH] and a pointer is 1676 allocated or de-allocated. */ 1677 uint64_t q8_perr : 1; /**< Set when a Queue8 pointer read from the stack in 1678 the L2C does not have the FPA owner ship bit set. */ 1679 uint64_t q8_coff : 1; /**< Set when a Queue8 stack end tag is present and 1680 the count available is greater than than pointers 1681 present in the FPA. */ 1682 uint64_t q8_und : 1; /**< Set when a Queue8 page count available goes 1683 negative. */ 1684 uint64_t free8 : 1; /**< When a pointer for POOL8 is freed bit is set. */ 1685 uint64_t free7 : 1; /**< When a pointer for POOL7 is freed bit is set. */ 1686 uint64_t free6 : 1; /**< When a pointer for POOL6 is freed bit is set. */ 1687 uint64_t free5 : 1; /**< When a pointer for POOL5 is freed bit is set. */ 1688 uint64_t free4 : 1; /**< When a pointer for POOL4 is freed bit is set. */ 1689 uint64_t free3 : 1; /**< When a pointer for POOL3 is freed bit is set. */ 1690 uint64_t free2 : 1; /**< When a pointer for POOL2 is freed bit is set. */ 1691 uint64_t free1 : 1; /**< When a pointer for POOL1 is freed bit is set. */ 1692 uint64_t free0 : 1; /**< When a pointer for POOL0 is freed bit is set. */ 1693 uint64_t pool7th : 1; /**< Set when FPA_QUE7_AVAILABLE is equal to 1694 FPA_POOL7_THRESHOLD[THRESH] and a pointer is 1695 allocated or de-allocated. */ 1696 uint64_t pool6th : 1; /**< Set when FPA_QUE6_AVAILABLE is equal to 1697 FPA_POOL6_THRESHOLD[THRESH] and a pointer is 1698 allocated or de-allocated. */ 1699 uint64_t pool5th : 1; /**< Set when FPA_QUE5_AVAILABLE is equal to 1700 FPA_POOL5_THRESHOLD[THRESH] and a pointer is 1701 allocated or de-allocated. */ 1702 uint64_t pool4th : 1; /**< Set when FPA_QUE4_AVAILABLE is equal to 1703 FPA_POOL4_THRESHOLD[THRESH] and a pointer is 1704 allocated or de-allocated. */ 1705 uint64_t pool3th : 1; /**< Set when FPA_QUE3_AVAILABLE is equal to 1706 FPA_POOL3_THRESHOLD[THRESH] and a pointer is 1707 allocated or de-allocated. */ 1708 uint64_t pool2th : 1; /**< Set when FPA_QUE2_AVAILABLE is equal to 1709 FPA_POOL2_THRESHOLD[THRESH] and a pointer is 1710 allocated or de-allocated. */ 1711 uint64_t pool1th : 1; /**< Set when FPA_QUE1_AVAILABLE is equal to 1712 FPA_POOL1_THRESHOLD[THRESH] and a pointer is 1713 allocated or de-allocated. */ 1714 uint64_t pool0th : 1; /**< Set when FPA_QUE0_AVAILABLE is equal to 1715 FPA_POOL`_THRESHOLD[THRESH] and a pointer is 1716 allocated or de-allocated. */ 1717 uint64_t q7_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1718 the L2C does not have the FPA owner ship bit set. */ 1719 uint64_t q7_coff : 1; /**< Set when a Queue0 stack end tag is present and 1720 the count available is greater than than pointers 1721 present in the FPA. */ 1722 uint64_t q7_und : 1; /**< Set when a Queue0 page count available goes 1723 negative. */ 1724 uint64_t q6_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1725 the L2C does not have the FPA owner ship bit set. */ 1726 uint64_t q6_coff : 1; /**< Set when a Queue0 stack end tag is present and 1727 the count available is greater than than pointers 1728 present in the FPA. */ 1729 uint64_t q6_und : 1; /**< Set when a Queue0 page count available goes 1730 negative. */ 1731 uint64_t q5_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1732 the L2C does not have the FPA owner ship bit set. */ 1733 uint64_t q5_coff : 1; /**< Set when a Queue0 stack end tag is present and 1734 the count available is greater than than pointers 1735 present in the FPA. */ 1736 uint64_t q5_und : 1; /**< Set when a Queue0 page count available goes 1737 negative. */ 1738 uint64_t q4_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1739 the L2C does not have the FPA owner ship bit set. */ 1740 uint64_t q4_coff : 1; /**< Set when a Queue0 stack end tag is present and 1741 the count available is greater than than pointers 1742 present in the FPA. */ 1743 uint64_t q4_und : 1; /**< Set when a Queue0 page count available goes 1744 negative. */ 1745 uint64_t q3_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1746 the L2C does not have the FPA owner ship bit set. */ 1747 uint64_t q3_coff : 1; /**< Set when a Queue0 stack end tag is present and 1748 the count available is greater than than pointers 1749 present in the FPA. */ 1750 uint64_t q3_und : 1; /**< Set when a Queue0 page count available goes 1751 negative. */ 1752 uint64_t q2_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1753 the L2C does not have the FPA owner ship bit set. */ 1754 uint64_t q2_coff : 1; /**< Set when a Queue0 stack end tag is present and 1755 the count available is greater than than pointers 1756 present in the FPA. */ 1757 uint64_t q2_und : 1; /**< Set when a Queue0 page count available goes 1758 negative. */ 1759 uint64_t q1_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1760 the L2C does not have the FPA owner ship bit set. */ 1761 uint64_t q1_coff : 1; /**< Set when a Queue0 stack end tag is present and 1762 the count available is greater than pointers 1763 present in the FPA. */ 1764 uint64_t q1_und : 1; /**< Set when a Queue0 page count available goes 1765 negative. */ 1766 uint64_t q0_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1767 the L2C does not have the FPA owner ship bit set. */ 1768 uint64_t q0_coff : 1; /**< Set when a Queue0 stack end tag is present and 1769 the count available is greater than pointers 1770 present in the FPA. */ 1771 uint64_t q0_und : 1; /**< Set when a Queue0 page count available goes 1772 negative. */ 1773 uint64_t fed1_dbe : 1; /**< Set when a Double Bit Error is detected in FPF1. */ 1774 uint64_t fed1_sbe : 1; /**< Set when a Single Bit Error is detected in FPF1. */ 1775 uint64_t fed0_dbe : 1; /**< Set when a Double Bit Error is detected in FPF0. */ 1776 uint64_t fed0_sbe : 1; /**< Set when a Single Bit Error is detected in FPF0. */ 1777#else 1778 uint64_t fed0_sbe : 1; 1779 uint64_t fed0_dbe : 1; 1780 uint64_t fed1_sbe : 1; 1781 uint64_t fed1_dbe : 1; 1782 uint64_t q0_und : 1; 1783 uint64_t q0_coff : 1; 1784 uint64_t q0_perr : 1; 1785 uint64_t q1_und : 1; 1786 uint64_t q1_coff : 1; 1787 uint64_t q1_perr : 1; 1788 uint64_t q2_und : 1; 1789 uint64_t q2_coff : 1; 1790 uint64_t q2_perr : 1; 1791 uint64_t q3_und : 1; 1792 uint64_t q3_coff : 1; 1793 uint64_t q3_perr : 1; 1794 uint64_t q4_und : 1; 1795 uint64_t q4_coff : 1; 1796 uint64_t q4_perr : 1; 1797 uint64_t q5_und : 1; 1798 uint64_t q5_coff : 1; 1799 uint64_t q5_perr : 1; 1800 uint64_t q6_und : 1; 1801 uint64_t q6_coff : 1; 1802 uint64_t q6_perr : 1; 1803 uint64_t q7_und : 1; 1804 uint64_t q7_coff : 1; 1805 uint64_t q7_perr : 1; 1806 uint64_t pool0th : 1; 1807 uint64_t pool1th : 1; 1808 uint64_t pool2th : 1; 1809 uint64_t pool3th : 1; 1810 uint64_t pool4th : 1; 1811 uint64_t pool5th : 1; 1812 uint64_t pool6th : 1; 1813 uint64_t pool7th : 1; 1814 uint64_t free0 : 1; 1815 uint64_t free1 : 1; 1816 uint64_t free2 : 1; 1817 uint64_t free3 : 1; 1818 uint64_t free4 : 1; 1819 uint64_t free5 : 1; 1820 uint64_t free6 : 1; 1821 uint64_t free7 : 1; 1822 uint64_t free8 : 1; 1823 uint64_t q8_und : 1; 1824 uint64_t q8_coff : 1; 1825 uint64_t q8_perr : 1; 1826 uint64_t pool8th : 1; 1827 uint64_t paddr_e : 1; 1828 uint64_t reserved_50_63 : 14; 1829#endif 1830 } s; 1831 struct cvmx_fpa_int_sum_cn30xx { 1832#ifdef __BIG_ENDIAN_BITFIELD 1833 uint64_t reserved_28_63 : 36; 1834 uint64_t q7_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1835 the L2C does not have the FPA owner ship bit set. */ 1836 uint64_t q7_coff : 1; /**< Set when a Queue0 stack end tag is present and 1837 the count available is greater than than pointers 1838 present in the FPA. */ 1839 uint64_t q7_und : 1; /**< Set when a Queue0 page count available goes 1840 negative. */ 1841 uint64_t q6_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1842 the L2C does not have the FPA owner ship bit set. */ 1843 uint64_t q6_coff : 1; /**< Set when a Queue0 stack end tag is present and 1844 the count available is greater than than pointers 1845 present in the FPA. */ 1846 uint64_t q6_und : 1; /**< Set when a Queue0 page count available goes 1847 negative. */ 1848 uint64_t q5_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1849 the L2C does not have the FPA owner ship bit set. */ 1850 uint64_t q5_coff : 1; /**< Set when a Queue0 stack end tag is present and 1851 the count available is greater than than pointers 1852 present in the FPA. */ 1853 uint64_t q5_und : 1; /**< Set when a Queue0 page count available goes 1854 negative. */ 1855 uint64_t q4_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1856 the L2C does not have the FPA owner ship bit set. */ 1857 uint64_t q4_coff : 1; /**< Set when a Queue0 stack end tag is present and 1858 the count available is greater than than pointers 1859 present in the FPA. */ 1860 uint64_t q4_und : 1; /**< Set when a Queue0 page count available goes 1861 negative. */ 1862 uint64_t q3_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1863 the L2C does not have the FPA owner ship bit set. */ 1864 uint64_t q3_coff : 1; /**< Set when a Queue0 stack end tag is present and 1865 the count available is greater than than pointers 1866 present in the FPA. */ 1867 uint64_t q3_und : 1; /**< Set when a Queue0 page count available goes 1868 negative. */ 1869 uint64_t q2_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1870 the L2C does not have the FPA owner ship bit set. */ 1871 uint64_t q2_coff : 1; /**< Set when a Queue0 stack end tag is present and 1872 the count available is greater than than pointers 1873 present in the FPA. */ 1874 uint64_t q2_und : 1; /**< Set when a Queue0 page count available goes 1875 negative. */ 1876 uint64_t q1_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1877 the L2C does not have the FPA owner ship bit set. */ 1878 uint64_t q1_coff : 1; /**< Set when a Queue0 stack end tag is present and 1879 the count available is greater than pointers 1880 present in the FPA. */ 1881 uint64_t q1_und : 1; /**< Set when a Queue0 page count available goes 1882 negative. */ 1883 uint64_t q0_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1884 the L2C does not have the FPA owner ship bit set. */ 1885 uint64_t q0_coff : 1; /**< Set when a Queue0 stack end tag is present and 1886 the count available is greater than pointers 1887 present in the FPA. */ 1888 uint64_t q0_und : 1; /**< Set when a Queue0 page count available goes 1889 negative. */ 1890 uint64_t fed1_dbe : 1; /**< Set when a Double Bit Error is detected in FPF1. */ 1891 uint64_t fed1_sbe : 1; /**< Set when a Single Bit Error is detected in FPF1. */ 1892 uint64_t fed0_dbe : 1; /**< Set when a Double Bit Error is detected in FPF0. */ 1893 uint64_t fed0_sbe : 1; /**< Set when a Single Bit Error is detected in FPF0. */ 1894#else 1895 uint64_t fed0_sbe : 1; 1896 uint64_t fed0_dbe : 1; 1897 uint64_t fed1_sbe : 1; 1898 uint64_t fed1_dbe : 1; 1899 uint64_t q0_und : 1; 1900 uint64_t q0_coff : 1; 1901 uint64_t q0_perr : 1; 1902 uint64_t q1_und : 1; 1903 uint64_t q1_coff : 1; 1904 uint64_t q1_perr : 1; 1905 uint64_t q2_und : 1; 1906 uint64_t q2_coff : 1; 1907 uint64_t q2_perr : 1; 1908 uint64_t q3_und : 1; 1909 uint64_t q3_coff : 1; 1910 uint64_t q3_perr : 1; 1911 uint64_t q4_und : 1; 1912 uint64_t q4_coff : 1; 1913 uint64_t q4_perr : 1; 1914 uint64_t q5_und : 1; 1915 uint64_t q5_coff : 1; 1916 uint64_t q5_perr : 1; 1917 uint64_t q6_und : 1; 1918 uint64_t q6_coff : 1; 1919 uint64_t q6_perr : 1; 1920 uint64_t q7_und : 1; 1921 uint64_t q7_coff : 1; 1922 uint64_t q7_perr : 1; 1923 uint64_t reserved_28_63 : 36; 1924#endif 1925 } cn30xx; 1926 struct cvmx_fpa_int_sum_cn30xx cn31xx; 1927 struct cvmx_fpa_int_sum_cn30xx cn38xx; 1928 struct cvmx_fpa_int_sum_cn30xx cn38xxp2; 1929 struct cvmx_fpa_int_sum_cn30xx cn50xx; 1930 struct cvmx_fpa_int_sum_cn30xx cn52xx; 1931 struct cvmx_fpa_int_sum_cn30xx cn52xxp1; 1932 struct cvmx_fpa_int_sum_cn30xx cn56xx; 1933 struct cvmx_fpa_int_sum_cn30xx cn56xxp1; 1934 struct cvmx_fpa_int_sum_cn30xx cn58xx; 1935 struct cvmx_fpa_int_sum_cn30xx cn58xxp1; 1936 struct cvmx_fpa_int_sum_cn61xx { 1937#ifdef __BIG_ENDIAN_BITFIELD 1938 uint64_t reserved_50_63 : 14; 1939 uint64_t paddr_e : 1; /**< Set when a pointer address does not fall in the 1940 address range for a pool specified by 1941 FPA_POOLX_START_ADDR and FPA_POOLX_END_ADDR. */ 1942 uint64_t reserved_44_48 : 5; 1943 uint64_t free7 : 1; /**< When a pointer for POOL7 is freed bit is set. */ 1944 uint64_t free6 : 1; /**< When a pointer for POOL6 is freed bit is set. */ 1945 uint64_t free5 : 1; /**< When a pointer for POOL5 is freed bit is set. */ 1946 uint64_t free4 : 1; /**< When a pointer for POOL4 is freed bit is set. */ 1947 uint64_t free3 : 1; /**< When a pointer for POOL3 is freed bit is set. */ 1948 uint64_t free2 : 1; /**< When a pointer for POOL2 is freed bit is set. */ 1949 uint64_t free1 : 1; /**< When a pointer for POOL1 is freed bit is set. */ 1950 uint64_t free0 : 1; /**< When a pointer for POOL0 is freed bit is set. */ 1951 uint64_t pool7th : 1; /**< Set when FPA_QUE7_AVAILABLE is equal to 1952 FPA_POOL7_THRESHOLD[THRESH] and a pointer is 1953 allocated or de-allocated. */ 1954 uint64_t pool6th : 1; /**< Set when FPA_QUE6_AVAILABLE is equal to 1955 FPA_POOL6_THRESHOLD[THRESH] and a pointer is 1956 allocated or de-allocated. */ 1957 uint64_t pool5th : 1; /**< Set when FPA_QUE5_AVAILABLE is equal to 1958 FPA_POOL5_THRESHOLD[THRESH] and a pointer is 1959 allocated or de-allocated. */ 1960 uint64_t pool4th : 1; /**< Set when FPA_QUE4_AVAILABLE is equal to 1961 FPA_POOL4_THRESHOLD[THRESH] and a pointer is 1962 allocated or de-allocated. */ 1963 uint64_t pool3th : 1; /**< Set when FPA_QUE3_AVAILABLE is equal to 1964 FPA_POOL3_THRESHOLD[THRESH] and a pointer is 1965 allocated or de-allocated. */ 1966 uint64_t pool2th : 1; /**< Set when FPA_QUE2_AVAILABLE is equal to 1967 FPA_POOL2_THRESHOLD[THRESH] and a pointer is 1968 allocated or de-allocated. */ 1969 uint64_t pool1th : 1; /**< Set when FPA_QUE1_AVAILABLE is equal to 1970 FPA_POOL1_THRESHOLD[THRESH] and a pointer is 1971 allocated or de-allocated. */ 1972 uint64_t pool0th : 1; /**< Set when FPA_QUE0_AVAILABLE is equal to 1973 FPA_POOL`_THRESHOLD[THRESH] and a pointer is 1974 allocated or de-allocated. */ 1975 uint64_t q7_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1976 the L2C does not have the FPA owner ship bit set. */ 1977 uint64_t q7_coff : 1; /**< Set when a Queue0 stack end tag is present and 1978 the count available is greater than than pointers 1979 present in the FPA. */ 1980 uint64_t q7_und : 1; /**< Set when a Queue0 page count available goes 1981 negative. */ 1982 uint64_t q6_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1983 the L2C does not have the FPA owner ship bit set. */ 1984 uint64_t q6_coff : 1; /**< Set when a Queue0 stack end tag is present and 1985 the count available is greater than than pointers 1986 present in the FPA. */ 1987 uint64_t q6_und : 1; /**< Set when a Queue0 page count available goes 1988 negative. */ 1989 uint64_t q5_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1990 the L2C does not have the FPA owner ship bit set. */ 1991 uint64_t q5_coff : 1; /**< Set when a Queue0 stack end tag is present and 1992 the count available is greater than than pointers 1993 present in the FPA. */ 1994 uint64_t q5_und : 1; /**< Set when a Queue0 page count available goes 1995 negative. */ 1996 uint64_t q4_perr : 1; /**< Set when a Queue0 pointer read from the stack in 1997 the L2C does not have the FPA owner ship bit set. */ 1998 uint64_t q4_coff : 1; /**< Set when a Queue0 stack end tag is present and 1999 the count available is greater than than pointers 2000 present in the FPA. */ 2001 uint64_t q4_und : 1; /**< Set when a Queue0 page count available goes 2002 negative. */ 2003 uint64_t q3_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2004 the L2C does not have the FPA owner ship bit set. */ 2005 uint64_t q3_coff : 1; /**< Set when a Queue0 stack end tag is present and 2006 the count available is greater than than pointers 2007 present in the FPA. */ 2008 uint64_t q3_und : 1; /**< Set when a Queue0 page count available goes 2009 negative. */ 2010 uint64_t q2_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2011 the L2C does not have the FPA owner ship bit set. */ 2012 uint64_t q2_coff : 1; /**< Set when a Queue0 stack end tag is present and 2013 the count available is greater than than pointers 2014 present in the FPA. */ 2015 uint64_t q2_und : 1; /**< Set when a Queue0 page count available goes 2016 negative. */ 2017 uint64_t q1_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2018 the L2C does not have the FPA owner ship bit set. */ 2019 uint64_t q1_coff : 1; /**< Set when a Queue0 stack end tag is present and 2020 the count available is greater than pointers 2021 present in the FPA. */ 2022 uint64_t q1_und : 1; /**< Set when a Queue0 page count available goes 2023 negative. */ 2024 uint64_t q0_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2025 the L2C does not have the FPA owner ship bit set. */ 2026 uint64_t q0_coff : 1; /**< Set when a Queue0 stack end tag is present and 2027 the count available is greater than pointers 2028 present in the FPA. */ 2029 uint64_t q0_und : 1; /**< Set when a Queue0 page count available goes 2030 negative. */ 2031 uint64_t fed1_dbe : 1; /**< Set when a Double Bit Error is detected in FPF1. */ 2032 uint64_t fed1_sbe : 1; /**< Set when a Single Bit Error is detected in FPF1. */ 2033 uint64_t fed0_dbe : 1; /**< Set when a Double Bit Error is detected in FPF0. */ 2034 uint64_t fed0_sbe : 1; /**< Set when a Single Bit Error is detected in FPF0. */ 2035#else 2036 uint64_t fed0_sbe : 1; 2037 uint64_t fed0_dbe : 1; 2038 uint64_t fed1_sbe : 1; 2039 uint64_t fed1_dbe : 1; 2040 uint64_t q0_und : 1; 2041 uint64_t q0_coff : 1; 2042 uint64_t q0_perr : 1; 2043 uint64_t q1_und : 1; 2044 uint64_t q1_coff : 1; 2045 uint64_t q1_perr : 1; 2046 uint64_t q2_und : 1; 2047 uint64_t q2_coff : 1; 2048 uint64_t q2_perr : 1; 2049 uint64_t q3_und : 1; 2050 uint64_t q3_coff : 1; 2051 uint64_t q3_perr : 1; 2052 uint64_t q4_und : 1; 2053 uint64_t q4_coff : 1; 2054 uint64_t q4_perr : 1; 2055 uint64_t q5_und : 1; 2056 uint64_t q5_coff : 1; 2057 uint64_t q5_perr : 1; 2058 uint64_t q6_und : 1; 2059 uint64_t q6_coff : 1; 2060 uint64_t q6_perr : 1; 2061 uint64_t q7_und : 1; 2062 uint64_t q7_coff : 1; 2063 uint64_t q7_perr : 1; 2064 uint64_t pool0th : 1; 2065 uint64_t pool1th : 1; 2066 uint64_t pool2th : 1; 2067 uint64_t pool3th : 1; 2068 uint64_t pool4th : 1; 2069 uint64_t pool5th : 1; 2070 uint64_t pool6th : 1; 2071 uint64_t pool7th : 1; 2072 uint64_t free0 : 1; 2073 uint64_t free1 : 1; 2074 uint64_t free2 : 1; 2075 uint64_t free3 : 1; 2076 uint64_t free4 : 1; 2077 uint64_t free5 : 1; 2078 uint64_t free6 : 1; 2079 uint64_t free7 : 1; 2080 uint64_t reserved_44_48 : 5; 2081 uint64_t paddr_e : 1; 2082 uint64_t reserved_50_63 : 14; 2083#endif 2084 } cn61xx; 2085 struct cvmx_fpa_int_sum_cn63xx { 2086#ifdef __BIG_ENDIAN_BITFIELD 2087 uint64_t reserved_44_63 : 20; 2088 uint64_t free7 : 1; /**< When a pointer for POOL7 is freed bit is set. */ 2089 uint64_t free6 : 1; /**< When a pointer for POOL6 is freed bit is set. */ 2090 uint64_t free5 : 1; /**< When a pointer for POOL5 is freed bit is set. */ 2091 uint64_t free4 : 1; /**< When a pointer for POOL4 is freed bit is set. */ 2092 uint64_t free3 : 1; /**< When a pointer for POOL3 is freed bit is set. */ 2093 uint64_t free2 : 1; /**< When a pointer for POOL2 is freed bit is set. */ 2094 uint64_t free1 : 1; /**< When a pointer for POOL1 is freed bit is set. */ 2095 uint64_t free0 : 1; /**< When a pointer for POOL0 is freed bit is set. */ 2096 uint64_t pool7th : 1; /**< Set when FPA_QUE7_AVAILABLE is equal to 2097 FPA_POOL7_THRESHOLD[THRESH] and a pointer is 2098 allocated or de-allocated. */ 2099 uint64_t pool6th : 1; /**< Set when FPA_QUE6_AVAILABLE is equal to 2100 FPA_POOL6_THRESHOLD[THRESH] and a pointer is 2101 allocated or de-allocated. */ 2102 uint64_t pool5th : 1; /**< Set when FPA_QUE5_AVAILABLE is equal to 2103 FPA_POOL5_THRESHOLD[THRESH] and a pointer is 2104 allocated or de-allocated. */ 2105 uint64_t pool4th : 1; /**< Set when FPA_QUE4_AVAILABLE is equal to 2106 FPA_POOL4_THRESHOLD[THRESH] and a pointer is 2107 allocated or de-allocated. */ 2108 uint64_t pool3th : 1; /**< Set when FPA_QUE3_AVAILABLE is equal to 2109 FPA_POOL3_THRESHOLD[THRESH] and a pointer is 2110 allocated or de-allocated. */ 2111 uint64_t pool2th : 1; /**< Set when FPA_QUE2_AVAILABLE is equal to 2112 FPA_POOL2_THRESHOLD[THRESH] and a pointer is 2113 allocated or de-allocated. */ 2114 uint64_t pool1th : 1; /**< Set when FPA_QUE1_AVAILABLE is equal to 2115 FPA_POOL1_THRESHOLD[THRESH] and a pointer is 2116 allocated or de-allocated. */ 2117 uint64_t pool0th : 1; /**< Set when FPA_QUE0_AVAILABLE is equal to 2118 FPA_POOL`_THRESHOLD[THRESH] and a pointer is 2119 allocated or de-allocated. */ 2120 uint64_t q7_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2121 the L2C does not have the FPA owner ship bit set. */ 2122 uint64_t q7_coff : 1; /**< Set when a Queue0 stack end tag is present and 2123 the count available is greater than than pointers 2124 present in the FPA. */ 2125 uint64_t q7_und : 1; /**< Set when a Queue0 page count available goes 2126 negative. */ 2127 uint64_t q6_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2128 the L2C does not have the FPA owner ship bit set. */ 2129 uint64_t q6_coff : 1; /**< Set when a Queue0 stack end tag is present and 2130 the count available is greater than than pointers 2131 present in the FPA. */ 2132 uint64_t q6_und : 1; /**< Set when a Queue0 page count available goes 2133 negative. */ 2134 uint64_t q5_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2135 the L2C does not have the FPA owner ship bit set. */ 2136 uint64_t q5_coff : 1; /**< Set when a Queue0 stack end tag is present and 2137 the count available is greater than than pointers 2138 present in the FPA. */ 2139 uint64_t q5_und : 1; /**< Set when a Queue0 page count available goes 2140 negative. */ 2141 uint64_t q4_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2142 the L2C does not have the FPA owner ship bit set. */ 2143 uint64_t q4_coff : 1; /**< Set when a Queue0 stack end tag is present and 2144 the count available is greater than than pointers 2145 present in the FPA. */ 2146 uint64_t q4_und : 1; /**< Set when a Queue0 page count available goes 2147 negative. */ 2148 uint64_t q3_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2149 the L2C does not have the FPA owner ship bit set. */ 2150 uint64_t q3_coff : 1; /**< Set when a Queue0 stack end tag is present and 2151 the count available is greater than than pointers 2152 present in the FPA. */ 2153 uint64_t q3_und : 1; /**< Set when a Queue0 page count available goes 2154 negative. */ 2155 uint64_t q2_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2156 the L2C does not have the FPA owner ship bit set. */ 2157 uint64_t q2_coff : 1; /**< Set when a Queue0 stack end tag is present and 2158 the count available is greater than than pointers 2159 present in the FPA. */ 2160 uint64_t q2_und : 1; /**< Set when a Queue0 page count available goes 2161 negative. */ 2162 uint64_t q1_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2163 the L2C does not have the FPA owner ship bit set. */ 2164 uint64_t q1_coff : 1; /**< Set when a Queue0 stack end tag is present and 2165 the count available is greater than pointers 2166 present in the FPA. */ 2167 uint64_t q1_und : 1; /**< Set when a Queue0 page count available goes 2168 negative. */ 2169 uint64_t q0_perr : 1; /**< Set when a Queue0 pointer read from the stack in 2170 the L2C does not have the FPA owner ship bit set. */ 2171 uint64_t q0_coff : 1; /**< Set when a Queue0 stack end tag is present and 2172 the count available is greater than pointers 2173 present in the FPA. */ 2174 uint64_t q0_und : 1; /**< Set when a Queue0 page count available goes 2175 negative. */ 2176 uint64_t fed1_dbe : 1; /**< Set when a Double Bit Error is detected in FPF1. */ 2177 uint64_t fed1_sbe : 1; /**< Set when a Single Bit Error is detected in FPF1. */ 2178 uint64_t fed0_dbe : 1; /**< Set when a Double Bit Error is detected in FPF0. */ 2179 uint64_t fed0_sbe : 1; /**< Set when a Single Bit Error is detected in FPF0. */ 2180#else 2181 uint64_t fed0_sbe : 1; 2182 uint64_t fed0_dbe : 1; 2183 uint64_t fed1_sbe : 1; 2184 uint64_t fed1_dbe : 1; 2185 uint64_t q0_und : 1; 2186 uint64_t q0_coff : 1; 2187 uint64_t q0_perr : 1; 2188 uint64_t q1_und : 1; 2189 uint64_t q1_coff : 1; 2190 uint64_t q1_perr : 1; 2191 uint64_t q2_und : 1; 2192 uint64_t q2_coff : 1; 2193 uint64_t q2_perr : 1; 2194 uint64_t q3_und : 1; 2195 uint64_t q3_coff : 1; 2196 uint64_t q3_perr : 1; 2197 uint64_t q4_und : 1; 2198 uint64_t q4_coff : 1; 2199 uint64_t q4_perr : 1; 2200 uint64_t q5_und : 1; 2201 uint64_t q5_coff : 1; 2202 uint64_t q5_perr : 1; 2203 uint64_t q6_und : 1; 2204 uint64_t q6_coff : 1; 2205 uint64_t q6_perr : 1; 2206 uint64_t q7_und : 1; 2207 uint64_t q7_coff : 1; 2208 uint64_t q7_perr : 1; 2209 uint64_t pool0th : 1; 2210 uint64_t pool1th : 1; 2211 uint64_t pool2th : 1; 2212 uint64_t pool3th : 1; 2213 uint64_t pool4th : 1; 2214 uint64_t pool5th : 1; 2215 uint64_t pool6th : 1; 2216 uint64_t pool7th : 1; 2217 uint64_t free0 : 1; 2218 uint64_t free1 : 1; 2219 uint64_t free2 : 1; 2220 uint64_t free3 : 1; 2221 uint64_t free4 : 1; 2222 uint64_t free5 : 1; 2223 uint64_t free6 : 1; 2224 uint64_t free7 : 1; 2225 uint64_t reserved_44_63 : 20; 2226#endif 2227 } cn63xx; 2228 struct cvmx_fpa_int_sum_cn30xx cn63xxp1; 2229 struct cvmx_fpa_int_sum_cn61xx cn66xx; 2230 struct cvmx_fpa_int_sum_s cn68xx; 2231 struct cvmx_fpa_int_sum_s cn68xxp1; 2232 struct cvmx_fpa_int_sum_cn61xx cnf71xx; 2233}; 2234typedef union cvmx_fpa_int_sum cvmx_fpa_int_sum_t; 2235 2236/** 2237 * cvmx_fpa_packet_threshold 2238 * 2239 * FPA_PACKET_THRESHOLD = FPA's Packet Threshold 2240 * 2241 * When the value of FPA_QUE0_AVAILABLE[QUE_SIZ] is Less than the value of this register a low pool count signal is sent to the 2242 * PCIe packet instruction engine (to make it stop reading instructions) and to the Packet-Arbiter informing it to not give grants 2243 * to packets MAC with the exception of the PCIe MAC. 2244 */ 2245union cvmx_fpa_packet_threshold { 2246 uint64_t u64; 2247 struct cvmx_fpa_packet_threshold_s { 2248#ifdef __BIG_ENDIAN_BITFIELD 2249 uint64_t reserved_32_63 : 32; 2250 uint64_t thresh : 32; /**< Packet Threshold. */ 2251#else 2252 uint64_t thresh : 32; 2253 uint64_t reserved_32_63 : 32; 2254#endif 2255 } s; 2256 struct cvmx_fpa_packet_threshold_s cn61xx; 2257 struct cvmx_fpa_packet_threshold_s cn63xx; 2258 struct cvmx_fpa_packet_threshold_s cn66xx; 2259 struct cvmx_fpa_packet_threshold_s cn68xx; 2260 struct cvmx_fpa_packet_threshold_s cn68xxp1; 2261 struct cvmx_fpa_packet_threshold_s cnf71xx; 2262}; 2263typedef union cvmx_fpa_packet_threshold cvmx_fpa_packet_threshold_t; 2264 2265/** 2266 * cvmx_fpa_pool#_end_addr 2267 * 2268 * Space here reserved 2269 * 2270 * FPA_POOLX_END_ADDR = FPA's Pool-X Ending Addres 2271 * 2272 * Pointers sent to this pool must be equal to or less than this address. 2273 */ 2274union cvmx_fpa_poolx_end_addr { 2275 uint64_t u64; 2276 struct cvmx_fpa_poolx_end_addr_s { 2277#ifdef __BIG_ENDIAN_BITFIELD 2278 uint64_t reserved_33_63 : 31; 2279 uint64_t addr : 33; /**< Address. */ 2280#else 2281 uint64_t addr : 33; 2282 uint64_t reserved_33_63 : 31; 2283#endif 2284 } s; 2285 struct cvmx_fpa_poolx_end_addr_s cn61xx; 2286 struct cvmx_fpa_poolx_end_addr_s cn66xx; 2287 struct cvmx_fpa_poolx_end_addr_s cn68xx; 2288 struct cvmx_fpa_poolx_end_addr_s cn68xxp1; 2289 struct cvmx_fpa_poolx_end_addr_s cnf71xx; 2290}; 2291typedef union cvmx_fpa_poolx_end_addr cvmx_fpa_poolx_end_addr_t; 2292 2293/** 2294 * cvmx_fpa_pool#_start_addr 2295 * 2296 * FPA_POOLX_START_ADDR = FPA's Pool-X Starting Addres 2297 * 2298 * Pointers sent to this pool must be equal to or greater than this address. 2299 */ 2300union cvmx_fpa_poolx_start_addr { 2301 uint64_t u64; 2302 struct cvmx_fpa_poolx_start_addr_s { 2303#ifdef __BIG_ENDIAN_BITFIELD 2304 uint64_t reserved_33_63 : 31; 2305 uint64_t addr : 33; /**< Address. */ 2306#else 2307 uint64_t addr : 33; 2308 uint64_t reserved_33_63 : 31; 2309#endif 2310 } s; 2311 struct cvmx_fpa_poolx_start_addr_s cn61xx; 2312 struct cvmx_fpa_poolx_start_addr_s cn66xx; 2313 struct cvmx_fpa_poolx_start_addr_s cn68xx; 2314 struct cvmx_fpa_poolx_start_addr_s cn68xxp1; 2315 struct cvmx_fpa_poolx_start_addr_s cnf71xx; 2316}; 2317typedef union cvmx_fpa_poolx_start_addr cvmx_fpa_poolx_start_addr_t; 2318 2319/** 2320 * cvmx_fpa_pool#_threshold 2321 * 2322 * FPA_POOLX_THRESHOLD = FPA's Pool 0-7 Threshold 2323 * 2324 * When the value of FPA_QUEX_AVAILABLE is equal to FPA_POOLX_THRESHOLD[THRESH] when a pointer is allocated 2325 * or deallocated, set interrupt FPA_INT_SUM[POOLXTH]. 2326 */ 2327union cvmx_fpa_poolx_threshold { 2328 uint64_t u64; 2329 struct cvmx_fpa_poolx_threshold_s { 2330#ifdef __BIG_ENDIAN_BITFIELD 2331 uint64_t reserved_32_63 : 32; 2332 uint64_t thresh : 32; /**< The Threshold. */ 2333#else 2334 uint64_t thresh : 32; 2335 uint64_t reserved_32_63 : 32; 2336#endif 2337 } s; 2338 struct cvmx_fpa_poolx_threshold_cn61xx { 2339#ifdef __BIG_ENDIAN_BITFIELD 2340 uint64_t reserved_29_63 : 35; 2341 uint64_t thresh : 29; /**< The Threshold. */ 2342#else 2343 uint64_t thresh : 29; 2344 uint64_t reserved_29_63 : 35; 2345#endif 2346 } cn61xx; 2347 struct cvmx_fpa_poolx_threshold_cn61xx cn63xx; 2348 struct cvmx_fpa_poolx_threshold_cn61xx cn66xx; 2349 struct cvmx_fpa_poolx_threshold_s cn68xx; 2350 struct cvmx_fpa_poolx_threshold_s cn68xxp1; 2351 struct cvmx_fpa_poolx_threshold_cn61xx cnf71xx; 2352}; 2353typedef union cvmx_fpa_poolx_threshold cvmx_fpa_poolx_threshold_t; 2354 2355/** 2356 * cvmx_fpa_que#_available 2357 * 2358 * FPA_QUEX_PAGES_AVAILABLE = FPA's Queue 0-7 Free Page Available Register 2359 * 2360 * The number of page pointers that are available in the FPA and local DRAM. 2361 */ 2362union cvmx_fpa_quex_available { 2363 uint64_t u64; 2364 struct cvmx_fpa_quex_available_s { 2365#ifdef __BIG_ENDIAN_BITFIELD 2366 uint64_t reserved_32_63 : 32; 2367 uint64_t que_siz : 32; /**< The number of free pages available in this Queue. 2368 In PASS-1 this field was [25:0]. */ 2369#else 2370 uint64_t que_siz : 32; 2371 uint64_t reserved_32_63 : 32; 2372#endif 2373 } s; 2374 struct cvmx_fpa_quex_available_cn30xx { 2375#ifdef __BIG_ENDIAN_BITFIELD 2376 uint64_t reserved_29_63 : 35; 2377 uint64_t que_siz : 29; /**< The number of free pages available in this Queue. */ 2378#else 2379 uint64_t que_siz : 29; 2380 uint64_t reserved_29_63 : 35; 2381#endif 2382 } cn30xx; 2383 struct cvmx_fpa_quex_available_cn30xx cn31xx; 2384 struct cvmx_fpa_quex_available_cn30xx cn38xx; 2385 struct cvmx_fpa_quex_available_cn30xx cn38xxp2; 2386 struct cvmx_fpa_quex_available_cn30xx cn50xx; 2387 struct cvmx_fpa_quex_available_cn30xx cn52xx; 2388 struct cvmx_fpa_quex_available_cn30xx cn52xxp1; 2389 struct cvmx_fpa_quex_available_cn30xx cn56xx; 2390 struct cvmx_fpa_quex_available_cn30xx cn56xxp1; 2391 struct cvmx_fpa_quex_available_cn30xx cn58xx; 2392 struct cvmx_fpa_quex_available_cn30xx cn58xxp1; 2393 struct cvmx_fpa_quex_available_cn30xx cn61xx; 2394 struct cvmx_fpa_quex_available_cn30xx cn63xx; 2395 struct cvmx_fpa_quex_available_cn30xx cn63xxp1; 2396 struct cvmx_fpa_quex_available_cn30xx cn66xx; 2397 struct cvmx_fpa_quex_available_s cn68xx; 2398 struct cvmx_fpa_quex_available_s cn68xxp1; 2399 struct cvmx_fpa_quex_available_cn30xx cnf71xx; 2400}; 2401typedef union cvmx_fpa_quex_available cvmx_fpa_quex_available_t; 2402 2403/** 2404 * cvmx_fpa_que#_page_index 2405 * 2406 * FPA_QUE0_PAGE_INDEX = FPA's Queue0 Page Index 2407 * 2408 * The present index page for queue 0 of the FPA, this is a PASS-2 register. 2409 * This number reflects the number of pages of pointers that have been written to memory 2410 * for this queue. 2411 */ 2412union cvmx_fpa_quex_page_index { 2413 uint64_t u64; 2414 struct cvmx_fpa_quex_page_index_s { 2415#ifdef __BIG_ENDIAN_BITFIELD 2416 uint64_t reserved_25_63 : 39; 2417 uint64_t pg_num : 25; /**< Page number. */ 2418#else 2419 uint64_t pg_num : 25; 2420 uint64_t reserved_25_63 : 39; 2421#endif 2422 } s; 2423 struct cvmx_fpa_quex_page_index_s cn30xx; 2424 struct cvmx_fpa_quex_page_index_s cn31xx; 2425 struct cvmx_fpa_quex_page_index_s cn38xx; 2426 struct cvmx_fpa_quex_page_index_s cn38xxp2; 2427 struct cvmx_fpa_quex_page_index_s cn50xx; 2428 struct cvmx_fpa_quex_page_index_s cn52xx; 2429 struct cvmx_fpa_quex_page_index_s cn52xxp1; 2430 struct cvmx_fpa_quex_page_index_s cn56xx; 2431 struct cvmx_fpa_quex_page_index_s cn56xxp1; 2432 struct cvmx_fpa_quex_page_index_s cn58xx; 2433 struct cvmx_fpa_quex_page_index_s cn58xxp1; 2434 struct cvmx_fpa_quex_page_index_s cn61xx; 2435 struct cvmx_fpa_quex_page_index_s cn63xx; 2436 struct cvmx_fpa_quex_page_index_s cn63xxp1; 2437 struct cvmx_fpa_quex_page_index_s cn66xx; 2438 struct cvmx_fpa_quex_page_index_s cn68xx; 2439 struct cvmx_fpa_quex_page_index_s cn68xxp1; 2440 struct cvmx_fpa_quex_page_index_s cnf71xx; 2441}; 2442typedef union cvmx_fpa_quex_page_index cvmx_fpa_quex_page_index_t; 2443 2444/** 2445 * cvmx_fpa_que8_page_index 2446 * 2447 * FPA_QUE8_PAGE_INDEX = FPA's Queue7 Page Index 2448 * 2449 * The present index page for queue 7 of the FPA. 2450 * This number reflects the number of pages of pointers that have been written to memory 2451 * for this queue. 2452 * Because the address space is 38-bits the number of 128 byte pages could cause this register value to wrap. 2453 */ 2454union cvmx_fpa_que8_page_index { 2455 uint64_t u64; 2456 struct cvmx_fpa_que8_page_index_s { 2457#ifdef __BIG_ENDIAN_BITFIELD 2458 uint64_t reserved_25_63 : 39; 2459 uint64_t pg_num : 25; /**< Page number. */ 2460#else 2461 uint64_t pg_num : 25; 2462 uint64_t reserved_25_63 : 39; 2463#endif 2464 } s; 2465 struct cvmx_fpa_que8_page_index_s cn68xx; 2466 struct cvmx_fpa_que8_page_index_s cn68xxp1; 2467}; 2468typedef union cvmx_fpa_que8_page_index cvmx_fpa_que8_page_index_t; 2469 2470/** 2471 * cvmx_fpa_que_act 2472 * 2473 * FPA_QUE_ACT = FPA's Queue# Actual Page Index 2474 * 2475 * When a INT_SUM[PERR#] occurs this will be latched with the value read from L2C. PASS-2 register. 2476 * This is latched on the first error and will not latch again unitl all errors are cleared. 2477 */ 2478union cvmx_fpa_que_act { 2479 uint64_t u64; 2480 struct cvmx_fpa_que_act_s { 2481#ifdef __BIG_ENDIAN_BITFIELD 2482 uint64_t reserved_29_63 : 35; 2483 uint64_t act_que : 3; /**< FPA-queue-number read from memory. */ 2484 uint64_t act_indx : 26; /**< Page number read from memory. */ 2485#else 2486 uint64_t act_indx : 26; 2487 uint64_t act_que : 3; 2488 uint64_t reserved_29_63 : 35; 2489#endif 2490 } s; 2491 struct cvmx_fpa_que_act_s cn30xx; 2492 struct cvmx_fpa_que_act_s cn31xx; 2493 struct cvmx_fpa_que_act_s cn38xx; 2494 struct cvmx_fpa_que_act_s cn38xxp2; 2495 struct cvmx_fpa_que_act_s cn50xx; 2496 struct cvmx_fpa_que_act_s cn52xx; 2497 struct cvmx_fpa_que_act_s cn52xxp1; 2498 struct cvmx_fpa_que_act_s cn56xx; 2499 struct cvmx_fpa_que_act_s cn56xxp1; 2500 struct cvmx_fpa_que_act_s cn58xx; 2501 struct cvmx_fpa_que_act_s cn58xxp1; 2502 struct cvmx_fpa_que_act_s cn61xx; 2503 struct cvmx_fpa_que_act_s cn63xx; 2504 struct cvmx_fpa_que_act_s cn63xxp1; 2505 struct cvmx_fpa_que_act_s cn66xx; 2506 struct cvmx_fpa_que_act_s cn68xx; 2507 struct cvmx_fpa_que_act_s cn68xxp1; 2508 struct cvmx_fpa_que_act_s cnf71xx; 2509}; 2510typedef union cvmx_fpa_que_act cvmx_fpa_que_act_t; 2511 2512/** 2513 * cvmx_fpa_que_exp 2514 * 2515 * FPA_QUE_EXP = FPA's Queue# Expected Page Index 2516 * 2517 * When a INT_SUM[PERR#] occurs this will be latched with the expected value. PASS-2 register. 2518 * This is latched on the first error and will not latch again unitl all errors are cleared. 2519 */ 2520union cvmx_fpa_que_exp { 2521 uint64_t u64; 2522 struct cvmx_fpa_que_exp_s { 2523#ifdef __BIG_ENDIAN_BITFIELD 2524 uint64_t reserved_29_63 : 35; 2525 uint64_t exp_que : 3; /**< Expected fpa-queue-number read from memory. */ 2526 uint64_t exp_indx : 26; /**< Expected page number read from memory. */ 2527#else 2528 uint64_t exp_indx : 26; 2529 uint64_t exp_que : 3; 2530 uint64_t reserved_29_63 : 35; 2531#endif 2532 } s; 2533 struct cvmx_fpa_que_exp_s cn30xx; 2534 struct cvmx_fpa_que_exp_s cn31xx; 2535 struct cvmx_fpa_que_exp_s cn38xx; 2536 struct cvmx_fpa_que_exp_s cn38xxp2; 2537 struct cvmx_fpa_que_exp_s cn50xx; 2538 struct cvmx_fpa_que_exp_s cn52xx; 2539 struct cvmx_fpa_que_exp_s cn52xxp1; 2540 struct cvmx_fpa_que_exp_s cn56xx; 2541 struct cvmx_fpa_que_exp_s cn56xxp1; 2542 struct cvmx_fpa_que_exp_s cn58xx; 2543 struct cvmx_fpa_que_exp_s cn58xxp1; 2544 struct cvmx_fpa_que_exp_s cn61xx; 2545 struct cvmx_fpa_que_exp_s cn63xx; 2546 struct cvmx_fpa_que_exp_s cn63xxp1; 2547 struct cvmx_fpa_que_exp_s cn66xx; 2548 struct cvmx_fpa_que_exp_s cn68xx; 2549 struct cvmx_fpa_que_exp_s cn68xxp1; 2550 struct cvmx_fpa_que_exp_s cnf71xx; 2551}; 2552typedef union cvmx_fpa_que_exp cvmx_fpa_que_exp_t; 2553 2554/** 2555 * cvmx_fpa_wart_ctl 2556 * 2557 * FPA_WART_CTL = FPA's WART Control 2558 * 2559 * Control and status for the WART block. 2560 */ 2561union cvmx_fpa_wart_ctl { 2562 uint64_t u64; 2563 struct cvmx_fpa_wart_ctl_s { 2564#ifdef __BIG_ENDIAN_BITFIELD 2565 uint64_t reserved_16_63 : 48; 2566 uint64_t ctl : 16; /**< Control information. */ 2567#else 2568 uint64_t ctl : 16; 2569 uint64_t reserved_16_63 : 48; 2570#endif 2571 } s; 2572 struct cvmx_fpa_wart_ctl_s cn30xx; 2573 struct cvmx_fpa_wart_ctl_s cn31xx; 2574 struct cvmx_fpa_wart_ctl_s cn38xx; 2575 struct cvmx_fpa_wart_ctl_s cn38xxp2; 2576 struct cvmx_fpa_wart_ctl_s cn50xx; 2577 struct cvmx_fpa_wart_ctl_s cn52xx; 2578 struct cvmx_fpa_wart_ctl_s cn52xxp1; 2579 struct cvmx_fpa_wart_ctl_s cn56xx; 2580 struct cvmx_fpa_wart_ctl_s cn56xxp1; 2581 struct cvmx_fpa_wart_ctl_s cn58xx; 2582 struct cvmx_fpa_wart_ctl_s cn58xxp1; 2583}; 2584typedef union cvmx_fpa_wart_ctl cvmx_fpa_wart_ctl_t; 2585 2586/** 2587 * cvmx_fpa_wart_status 2588 * 2589 * FPA_WART_STATUS = FPA's WART Status 2590 * 2591 * Control and status for the WART block. 2592 */ 2593union cvmx_fpa_wart_status { 2594 uint64_t u64; 2595 struct cvmx_fpa_wart_status_s { 2596#ifdef __BIG_ENDIAN_BITFIELD 2597 uint64_t reserved_32_63 : 32; 2598 uint64_t status : 32; /**< Status information. */ 2599#else 2600 uint64_t status : 32; 2601 uint64_t reserved_32_63 : 32; 2602#endif 2603 } s; 2604 struct cvmx_fpa_wart_status_s cn30xx; 2605 struct cvmx_fpa_wart_status_s cn31xx; 2606 struct cvmx_fpa_wart_status_s cn38xx; 2607 struct cvmx_fpa_wart_status_s cn38xxp2; 2608 struct cvmx_fpa_wart_status_s cn50xx; 2609 struct cvmx_fpa_wart_status_s cn52xx; 2610 struct cvmx_fpa_wart_status_s cn52xxp1; 2611 struct cvmx_fpa_wart_status_s cn56xx; 2612 struct cvmx_fpa_wart_status_s cn56xxp1; 2613 struct cvmx_fpa_wart_status_s cn58xx; 2614 struct cvmx_fpa_wart_status_s cn58xxp1; 2615}; 2616typedef union cvmx_fpa_wart_status cvmx_fpa_wart_status_t; 2617 2618/** 2619 * cvmx_fpa_wqe_threshold 2620 * 2621 * FPA_WQE_THRESHOLD = FPA's WQE Threshold 2622 * 2623 * When the value of FPA_QUE#_AVAILABLE[QUE_SIZ] (\# is determined by the value of IPD_WQE_FPA_QUEUE) is Less than the value of this 2624 * register a low pool count signal is sent to the PCIe packet instruction engine (to make it stop reading instructions) and to the 2625 * Packet-Arbiter informing it to not give grants to packets MAC with the exception of the PCIe MAC. 2626 */ 2627union cvmx_fpa_wqe_threshold { 2628 uint64_t u64; 2629 struct cvmx_fpa_wqe_threshold_s { 2630#ifdef __BIG_ENDIAN_BITFIELD 2631 uint64_t reserved_32_63 : 32; 2632 uint64_t thresh : 32; /**< WQE Threshold. */ 2633#else 2634 uint64_t thresh : 32; 2635 uint64_t reserved_32_63 : 32; 2636#endif 2637 } s; 2638 struct cvmx_fpa_wqe_threshold_s cn61xx; 2639 struct cvmx_fpa_wqe_threshold_s cn63xx; 2640 struct cvmx_fpa_wqe_threshold_s cn66xx; 2641 struct cvmx_fpa_wqe_threshold_s cn68xx; 2642 struct cvmx_fpa_wqe_threshold_s cn68xxp1; 2643 struct cvmx_fpa_wqe_threshold_s cnf71xx; 2644}; 2645typedef union cvmx_fpa_wqe_threshold cvmx_fpa_wqe_threshold_t; 2646 2647#endif 2648