162306a36Sopenharmony_ci/***********************license start*************** 262306a36Sopenharmony_ci * Author: Cavium Networks 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * Contact: support@caviumnetworks.com 562306a36Sopenharmony_ci * This file is part of the OCTEON SDK 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * Copyright (c) 2003-2012 Cavium Networks 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci * This file is free software; you can redistribute it and/or modify 1062306a36Sopenharmony_ci * it under the terms of the GNU General Public License, Version 2, as 1162306a36Sopenharmony_ci * published by the Free Software Foundation. 1262306a36Sopenharmony_ci * 1362306a36Sopenharmony_ci * This file is distributed in the hope that it will be useful, but 1462306a36Sopenharmony_ci * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 1562306a36Sopenharmony_ci * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 1662306a36Sopenharmony_ci * NONINFRINGEMENT. See the GNU General Public License for more 1762306a36Sopenharmony_ci * details. 1862306a36Sopenharmony_ci * 1962306a36Sopenharmony_ci * You should have received a copy of the GNU General Public License 2062306a36Sopenharmony_ci * along with this file; if not, write to the Free Software 2162306a36Sopenharmony_ci * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 2262306a36Sopenharmony_ci * or visit http://www.gnu.org/licenses/. 2362306a36Sopenharmony_ci * 2462306a36Sopenharmony_ci * This file may also be available under a different license from Cavium. 2562306a36Sopenharmony_ci * Contact Cavium Networks for more information 2662306a36Sopenharmony_ci ***********************license end**************************************/ 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci#ifndef __CVMX_IPD_DEFS_H__ 2962306a36Sopenharmony_ci#define __CVMX_IPD_DEFS_H__ 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#define CVMX_IPD_1ST_MBUFF_SKIP (CVMX_ADD_IO_SEG(0x00014F0000000000ull)) 3262306a36Sopenharmony_ci#define CVMX_IPD_1st_NEXT_PTR_BACK (CVMX_ADD_IO_SEG(0x00014F0000000150ull)) 3362306a36Sopenharmony_ci#define CVMX_IPD_2nd_NEXT_PTR_BACK (CVMX_ADD_IO_SEG(0x00014F0000000158ull)) 3462306a36Sopenharmony_ci#define CVMX_IPD_BIST_STATUS (CVMX_ADD_IO_SEG(0x00014F00000007F8ull)) 3562306a36Sopenharmony_ci#define CVMX_IPD_BPIDX_MBUF_TH(offset) (CVMX_ADD_IO_SEG(0x00014F0000002000ull) + ((offset) & 63) * 8) 3662306a36Sopenharmony_ci#define CVMX_IPD_BPID_BP_COUNTERX(offset) (CVMX_ADD_IO_SEG(0x00014F0000003000ull) + ((offset) & 63) * 8) 3762306a36Sopenharmony_ci#define CVMX_IPD_BP_PRT_RED_END (CVMX_ADD_IO_SEG(0x00014F0000000328ull)) 3862306a36Sopenharmony_ci#define CVMX_IPD_CLK_COUNT (CVMX_ADD_IO_SEG(0x00014F0000000338ull)) 3962306a36Sopenharmony_ci#define CVMX_IPD_CREDITS (CVMX_ADD_IO_SEG(0x00014F0000004410ull)) 4062306a36Sopenharmony_ci#define CVMX_IPD_CTL_STATUS (CVMX_ADD_IO_SEG(0x00014F0000000018ull)) 4162306a36Sopenharmony_ci#define CVMX_IPD_ECC_CTL (CVMX_ADD_IO_SEG(0x00014F0000004408ull)) 4262306a36Sopenharmony_ci#define CVMX_IPD_FREE_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000780ull)) 4362306a36Sopenharmony_ci#define CVMX_IPD_FREE_PTR_VALUE (CVMX_ADD_IO_SEG(0x00014F0000000788ull)) 4462306a36Sopenharmony_ci#define CVMX_IPD_HOLD_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000790ull)) 4562306a36Sopenharmony_ci#define CVMX_IPD_INT_ENB (CVMX_ADD_IO_SEG(0x00014F0000000160ull)) 4662306a36Sopenharmony_ci#define CVMX_IPD_INT_SUM (CVMX_ADD_IO_SEG(0x00014F0000000168ull)) 4762306a36Sopenharmony_ci#define CVMX_IPD_NEXT_PKT_PTR (CVMX_ADD_IO_SEG(0x00014F00000007A0ull)) 4862306a36Sopenharmony_ci#define CVMX_IPD_NEXT_WQE_PTR (CVMX_ADD_IO_SEG(0x00014F00000007A8ull)) 4962306a36Sopenharmony_ci#define CVMX_IPD_NOT_1ST_MBUFF_SKIP (CVMX_ADD_IO_SEG(0x00014F0000000008ull)) 5062306a36Sopenharmony_ci#define CVMX_IPD_ON_BP_DROP_PKTX(block_id) (CVMX_ADD_IO_SEG(0x00014F0000004100ull)) 5162306a36Sopenharmony_ci#define CVMX_IPD_PACKET_MBUFF_SIZE (CVMX_ADD_IO_SEG(0x00014F0000000010ull)) 5262306a36Sopenharmony_ci#define CVMX_IPD_PKT_ERR (CVMX_ADD_IO_SEG(0x00014F00000003F0ull)) 5362306a36Sopenharmony_ci#define CVMX_IPD_PKT_PTR_VALID (CVMX_ADD_IO_SEG(0x00014F0000000358ull)) 5462306a36Sopenharmony_ci#define CVMX_IPD_PORTX_BP_PAGE_CNT(offset) (CVMX_ADD_IO_SEG(0x00014F0000000028ull) + ((offset) & 63) * 8) 5562306a36Sopenharmony_ci#define CVMX_IPD_PORTX_BP_PAGE_CNT2(offset) (CVMX_ADD_IO_SEG(0x00014F0000000368ull) + ((offset) & 63) * 8 - 8*36) 5662306a36Sopenharmony_ci#define CVMX_IPD_PORTX_BP_PAGE_CNT3(offset) (CVMX_ADD_IO_SEG(0x00014F00000003D0ull) + ((offset) & 63) * 8 - 8*40) 5762306a36Sopenharmony_ci#define CVMX_IPD_PORT_BP_COUNTERS2_PAIRX(offset) (CVMX_ADD_IO_SEG(0x00014F0000000388ull) + ((offset) & 63) * 8 - 8*36) 5862306a36Sopenharmony_ci#define CVMX_IPD_PORT_BP_COUNTERS3_PAIRX(offset) (CVMX_ADD_IO_SEG(0x00014F00000003B0ull) + ((offset) & 63) * 8 - 8*40) 5962306a36Sopenharmony_ci#define CVMX_IPD_PORT_BP_COUNTERS4_PAIRX(offset) (CVMX_ADD_IO_SEG(0x00014F0000000410ull) + ((offset) & 63) * 8 - 8*44) 6062306a36Sopenharmony_ci#define CVMX_IPD_PORT_BP_COUNTERS_PAIRX(offset) (CVMX_ADD_IO_SEG(0x00014F00000001B8ull) + ((offset) & 63) * 8) 6162306a36Sopenharmony_ci#define CVMX_IPD_PORT_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000798ull)) 6262306a36Sopenharmony_ci#define CVMX_IPD_PORT_QOS_INTX(offset) (CVMX_ADD_IO_SEG(0x00014F0000000808ull) + ((offset) & 7) * 8) 6362306a36Sopenharmony_ci#define CVMX_IPD_PORT_QOS_INT_ENBX(offset) (CVMX_ADD_IO_SEG(0x00014F0000000848ull) + ((offset) & 7) * 8) 6462306a36Sopenharmony_ci#define CVMX_IPD_PORT_QOS_X_CNT(offset) (CVMX_ADD_IO_SEG(0x00014F0000000888ull) + ((offset) & 511) * 8) 6562306a36Sopenharmony_ci#define CVMX_IPD_PORT_SOPX(block_id) (CVMX_ADD_IO_SEG(0x00014F0000004400ull)) 6662306a36Sopenharmony_ci#define CVMX_IPD_PRC_HOLD_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000348ull)) 6762306a36Sopenharmony_ci#define CVMX_IPD_PRC_PORT_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000350ull)) 6862306a36Sopenharmony_ci#define CVMX_IPD_PTR_COUNT (CVMX_ADD_IO_SEG(0x00014F0000000320ull)) 6962306a36Sopenharmony_ci#define CVMX_IPD_PWP_PTR_FIFO_CTL (CVMX_ADD_IO_SEG(0x00014F0000000340ull)) 7062306a36Sopenharmony_ci#define CVMX_IPD_QOS0_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(0) 7162306a36Sopenharmony_ci#define CVMX_IPD_QOS1_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(1) 7262306a36Sopenharmony_ci#define CVMX_IPD_QOS2_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(2) 7362306a36Sopenharmony_ci#define CVMX_IPD_QOS3_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(3) 7462306a36Sopenharmony_ci#define CVMX_IPD_QOS4_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(4) 7562306a36Sopenharmony_ci#define CVMX_IPD_QOS5_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(5) 7662306a36Sopenharmony_ci#define CVMX_IPD_QOS6_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(6) 7762306a36Sopenharmony_ci#define CVMX_IPD_QOS7_RED_MARKS CVMX_IPD_QOSX_RED_MARKS(7) 7862306a36Sopenharmony_ci#define CVMX_IPD_QOSX_RED_MARKS(offset) (CVMX_ADD_IO_SEG(0x00014F0000000178ull) + ((offset) & 7) * 8) 7962306a36Sopenharmony_ci#define CVMX_IPD_QUE0_FREE_PAGE_CNT (CVMX_ADD_IO_SEG(0x00014F0000000330ull)) 8062306a36Sopenharmony_ci#define CVMX_IPD_RED_BPID_ENABLEX(block_id) (CVMX_ADD_IO_SEG(0x00014F0000004200ull)) 8162306a36Sopenharmony_ci#define CVMX_IPD_RED_DELAY (CVMX_ADD_IO_SEG(0x00014F0000004300ull)) 8262306a36Sopenharmony_ci#define CVMX_IPD_RED_PORT_ENABLE (CVMX_ADD_IO_SEG(0x00014F00000002D8ull)) 8362306a36Sopenharmony_ci#define CVMX_IPD_RED_PORT_ENABLE2 (CVMX_ADD_IO_SEG(0x00014F00000003A8ull)) 8462306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE0_PARAM CVMX_IPD_RED_QUEX_PARAM(0) 8562306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE1_PARAM CVMX_IPD_RED_QUEX_PARAM(1) 8662306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE2_PARAM CVMX_IPD_RED_QUEX_PARAM(2) 8762306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE3_PARAM CVMX_IPD_RED_QUEX_PARAM(3) 8862306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE4_PARAM CVMX_IPD_RED_QUEX_PARAM(4) 8962306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE5_PARAM CVMX_IPD_RED_QUEX_PARAM(5) 9062306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE6_PARAM CVMX_IPD_RED_QUEX_PARAM(6) 9162306a36Sopenharmony_ci#define CVMX_IPD_RED_QUE7_PARAM CVMX_IPD_RED_QUEX_PARAM(7) 9262306a36Sopenharmony_ci#define CVMX_IPD_RED_QUEX_PARAM(offset) (CVMX_ADD_IO_SEG(0x00014F00000002E0ull) + ((offset) & 7) * 8) 9362306a36Sopenharmony_ci#define CVMX_IPD_REQ_WGT (CVMX_ADD_IO_SEG(0x00014F0000004418ull)) 9462306a36Sopenharmony_ci#define CVMX_IPD_SUB_PORT_BP_PAGE_CNT (CVMX_ADD_IO_SEG(0x00014F0000000148ull)) 9562306a36Sopenharmony_ci#define CVMX_IPD_SUB_PORT_FCS (CVMX_ADD_IO_SEG(0x00014F0000000170ull)) 9662306a36Sopenharmony_ci#define CVMX_IPD_SUB_PORT_QOS_CNT (CVMX_ADD_IO_SEG(0x00014F0000000800ull)) 9762306a36Sopenharmony_ci#define CVMX_IPD_WQE_FPA_QUEUE (CVMX_ADD_IO_SEG(0x00014F0000000020ull)) 9862306a36Sopenharmony_ci#define CVMX_IPD_WQE_PTR_VALID (CVMX_ADD_IO_SEG(0x00014F0000000360ull)) 9962306a36Sopenharmony_ci 10062306a36Sopenharmony_ciunion cvmx_ipd_1st_mbuff_skip { 10162306a36Sopenharmony_ci uint64_t u64; 10262306a36Sopenharmony_ci struct cvmx_ipd_1st_mbuff_skip_s { 10362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 10462306a36Sopenharmony_ci uint64_t reserved_6_63:58; 10562306a36Sopenharmony_ci uint64_t skip_sz:6; 10662306a36Sopenharmony_ci#else 10762306a36Sopenharmony_ci uint64_t skip_sz:6; 10862306a36Sopenharmony_ci uint64_t reserved_6_63:58; 10962306a36Sopenharmony_ci#endif 11062306a36Sopenharmony_ci } s; 11162306a36Sopenharmony_ci}; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ciunion cvmx_ipd_1st_next_ptr_back { 11462306a36Sopenharmony_ci uint64_t u64; 11562306a36Sopenharmony_ci struct cvmx_ipd_1st_next_ptr_back_s { 11662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 11762306a36Sopenharmony_ci uint64_t reserved_4_63:60; 11862306a36Sopenharmony_ci uint64_t back:4; 11962306a36Sopenharmony_ci#else 12062306a36Sopenharmony_ci uint64_t back:4; 12162306a36Sopenharmony_ci uint64_t reserved_4_63:60; 12262306a36Sopenharmony_ci#endif 12362306a36Sopenharmony_ci } s; 12462306a36Sopenharmony_ci}; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ciunion cvmx_ipd_2nd_next_ptr_back { 12762306a36Sopenharmony_ci uint64_t u64; 12862306a36Sopenharmony_ci struct cvmx_ipd_2nd_next_ptr_back_s { 12962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 13062306a36Sopenharmony_ci uint64_t reserved_4_63:60; 13162306a36Sopenharmony_ci uint64_t back:4; 13262306a36Sopenharmony_ci#else 13362306a36Sopenharmony_ci uint64_t back:4; 13462306a36Sopenharmony_ci uint64_t reserved_4_63:60; 13562306a36Sopenharmony_ci#endif 13662306a36Sopenharmony_ci } s; 13762306a36Sopenharmony_ci}; 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_ciunion cvmx_ipd_bist_status { 14062306a36Sopenharmony_ci uint64_t u64; 14162306a36Sopenharmony_ci struct cvmx_ipd_bist_status_s { 14262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 14362306a36Sopenharmony_ci uint64_t reserved_23_63:41; 14462306a36Sopenharmony_ci uint64_t iiwo1:1; 14562306a36Sopenharmony_ci uint64_t iiwo0:1; 14662306a36Sopenharmony_ci uint64_t iio1:1; 14762306a36Sopenharmony_ci uint64_t iio0:1; 14862306a36Sopenharmony_ci uint64_t pbm4:1; 14962306a36Sopenharmony_ci uint64_t csr_mem:1; 15062306a36Sopenharmony_ci uint64_t csr_ncmd:1; 15162306a36Sopenharmony_ci uint64_t pwq_wqed:1; 15262306a36Sopenharmony_ci uint64_t pwq_wp1:1; 15362306a36Sopenharmony_ci uint64_t pwq_pow:1; 15462306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 15562306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 15662306a36Sopenharmony_ci uint64_t pbm3:1; 15762306a36Sopenharmony_ci uint64_t pbm2:1; 15862306a36Sopenharmony_ci uint64_t pbm1:1; 15962306a36Sopenharmony_ci uint64_t pbm0:1; 16062306a36Sopenharmony_ci uint64_t pbm_word:1; 16162306a36Sopenharmony_ci uint64_t pwq1:1; 16262306a36Sopenharmony_ci uint64_t pwq0:1; 16362306a36Sopenharmony_ci uint64_t prc_off:1; 16462306a36Sopenharmony_ci uint64_t ipd_old:1; 16562306a36Sopenharmony_ci uint64_t ipd_new:1; 16662306a36Sopenharmony_ci uint64_t pwp:1; 16762306a36Sopenharmony_ci#else 16862306a36Sopenharmony_ci uint64_t pwp:1; 16962306a36Sopenharmony_ci uint64_t ipd_new:1; 17062306a36Sopenharmony_ci uint64_t ipd_old:1; 17162306a36Sopenharmony_ci uint64_t prc_off:1; 17262306a36Sopenharmony_ci uint64_t pwq0:1; 17362306a36Sopenharmony_ci uint64_t pwq1:1; 17462306a36Sopenharmony_ci uint64_t pbm_word:1; 17562306a36Sopenharmony_ci uint64_t pbm0:1; 17662306a36Sopenharmony_ci uint64_t pbm1:1; 17762306a36Sopenharmony_ci uint64_t pbm2:1; 17862306a36Sopenharmony_ci uint64_t pbm3:1; 17962306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 18062306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 18162306a36Sopenharmony_ci uint64_t pwq_pow:1; 18262306a36Sopenharmony_ci uint64_t pwq_wp1:1; 18362306a36Sopenharmony_ci uint64_t pwq_wqed:1; 18462306a36Sopenharmony_ci uint64_t csr_ncmd:1; 18562306a36Sopenharmony_ci uint64_t csr_mem:1; 18662306a36Sopenharmony_ci uint64_t pbm4:1; 18762306a36Sopenharmony_ci uint64_t iio0:1; 18862306a36Sopenharmony_ci uint64_t iio1:1; 18962306a36Sopenharmony_ci uint64_t iiwo0:1; 19062306a36Sopenharmony_ci uint64_t iiwo1:1; 19162306a36Sopenharmony_ci uint64_t reserved_23_63:41; 19262306a36Sopenharmony_ci#endif 19362306a36Sopenharmony_ci } s; 19462306a36Sopenharmony_ci struct cvmx_ipd_bist_status_cn30xx { 19562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 19662306a36Sopenharmony_ci uint64_t reserved_16_63:48; 19762306a36Sopenharmony_ci uint64_t pwq_wqed:1; 19862306a36Sopenharmony_ci uint64_t pwq_wp1:1; 19962306a36Sopenharmony_ci uint64_t pwq_pow:1; 20062306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 20162306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 20262306a36Sopenharmony_ci uint64_t pbm3:1; 20362306a36Sopenharmony_ci uint64_t pbm2:1; 20462306a36Sopenharmony_ci uint64_t pbm1:1; 20562306a36Sopenharmony_ci uint64_t pbm0:1; 20662306a36Sopenharmony_ci uint64_t pbm_word:1; 20762306a36Sopenharmony_ci uint64_t pwq1:1; 20862306a36Sopenharmony_ci uint64_t pwq0:1; 20962306a36Sopenharmony_ci uint64_t prc_off:1; 21062306a36Sopenharmony_ci uint64_t ipd_old:1; 21162306a36Sopenharmony_ci uint64_t ipd_new:1; 21262306a36Sopenharmony_ci uint64_t pwp:1; 21362306a36Sopenharmony_ci#else 21462306a36Sopenharmony_ci uint64_t pwp:1; 21562306a36Sopenharmony_ci uint64_t ipd_new:1; 21662306a36Sopenharmony_ci uint64_t ipd_old:1; 21762306a36Sopenharmony_ci uint64_t prc_off:1; 21862306a36Sopenharmony_ci uint64_t pwq0:1; 21962306a36Sopenharmony_ci uint64_t pwq1:1; 22062306a36Sopenharmony_ci uint64_t pbm_word:1; 22162306a36Sopenharmony_ci uint64_t pbm0:1; 22262306a36Sopenharmony_ci uint64_t pbm1:1; 22362306a36Sopenharmony_ci uint64_t pbm2:1; 22462306a36Sopenharmony_ci uint64_t pbm3:1; 22562306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 22662306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 22762306a36Sopenharmony_ci uint64_t pwq_pow:1; 22862306a36Sopenharmony_ci uint64_t pwq_wp1:1; 22962306a36Sopenharmony_ci uint64_t pwq_wqed:1; 23062306a36Sopenharmony_ci uint64_t reserved_16_63:48; 23162306a36Sopenharmony_ci#endif 23262306a36Sopenharmony_ci } cn30xx; 23362306a36Sopenharmony_ci struct cvmx_ipd_bist_status_cn52xx { 23462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 23562306a36Sopenharmony_ci uint64_t reserved_18_63:46; 23662306a36Sopenharmony_ci uint64_t csr_mem:1; 23762306a36Sopenharmony_ci uint64_t csr_ncmd:1; 23862306a36Sopenharmony_ci uint64_t pwq_wqed:1; 23962306a36Sopenharmony_ci uint64_t pwq_wp1:1; 24062306a36Sopenharmony_ci uint64_t pwq_pow:1; 24162306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 24262306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 24362306a36Sopenharmony_ci uint64_t pbm3:1; 24462306a36Sopenharmony_ci uint64_t pbm2:1; 24562306a36Sopenharmony_ci uint64_t pbm1:1; 24662306a36Sopenharmony_ci uint64_t pbm0:1; 24762306a36Sopenharmony_ci uint64_t pbm_word:1; 24862306a36Sopenharmony_ci uint64_t pwq1:1; 24962306a36Sopenharmony_ci uint64_t pwq0:1; 25062306a36Sopenharmony_ci uint64_t prc_off:1; 25162306a36Sopenharmony_ci uint64_t ipd_old:1; 25262306a36Sopenharmony_ci uint64_t ipd_new:1; 25362306a36Sopenharmony_ci uint64_t pwp:1; 25462306a36Sopenharmony_ci#else 25562306a36Sopenharmony_ci uint64_t pwp:1; 25662306a36Sopenharmony_ci uint64_t ipd_new:1; 25762306a36Sopenharmony_ci uint64_t ipd_old:1; 25862306a36Sopenharmony_ci uint64_t prc_off:1; 25962306a36Sopenharmony_ci uint64_t pwq0:1; 26062306a36Sopenharmony_ci uint64_t pwq1:1; 26162306a36Sopenharmony_ci uint64_t pbm_word:1; 26262306a36Sopenharmony_ci uint64_t pbm0:1; 26362306a36Sopenharmony_ci uint64_t pbm1:1; 26462306a36Sopenharmony_ci uint64_t pbm2:1; 26562306a36Sopenharmony_ci uint64_t pbm3:1; 26662306a36Sopenharmony_ci uint64_t ipq_pbe0:1; 26762306a36Sopenharmony_ci uint64_t ipq_pbe1:1; 26862306a36Sopenharmony_ci uint64_t pwq_pow:1; 26962306a36Sopenharmony_ci uint64_t pwq_wp1:1; 27062306a36Sopenharmony_ci uint64_t pwq_wqed:1; 27162306a36Sopenharmony_ci uint64_t csr_ncmd:1; 27262306a36Sopenharmony_ci uint64_t csr_mem:1; 27362306a36Sopenharmony_ci uint64_t reserved_18_63:46; 27462306a36Sopenharmony_ci#endif 27562306a36Sopenharmony_ci } cn52xx; 27662306a36Sopenharmony_ci}; 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_ciunion cvmx_ipd_bp_prt_red_end { 27962306a36Sopenharmony_ci uint64_t u64; 28062306a36Sopenharmony_ci struct cvmx_ipd_bp_prt_red_end_s { 28162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 28262306a36Sopenharmony_ci uint64_t reserved_48_63:16; 28362306a36Sopenharmony_ci uint64_t prt_enb:48; 28462306a36Sopenharmony_ci#else 28562306a36Sopenharmony_ci uint64_t prt_enb:48; 28662306a36Sopenharmony_ci uint64_t reserved_48_63:16; 28762306a36Sopenharmony_ci#endif 28862306a36Sopenharmony_ci } s; 28962306a36Sopenharmony_ci struct cvmx_ipd_bp_prt_red_end_cn30xx { 29062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 29162306a36Sopenharmony_ci uint64_t reserved_36_63:28; 29262306a36Sopenharmony_ci uint64_t prt_enb:36; 29362306a36Sopenharmony_ci#else 29462306a36Sopenharmony_ci uint64_t prt_enb:36; 29562306a36Sopenharmony_ci uint64_t reserved_36_63:28; 29662306a36Sopenharmony_ci#endif 29762306a36Sopenharmony_ci } cn30xx; 29862306a36Sopenharmony_ci struct cvmx_ipd_bp_prt_red_end_cn52xx { 29962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 30062306a36Sopenharmony_ci uint64_t reserved_40_63:24; 30162306a36Sopenharmony_ci uint64_t prt_enb:40; 30262306a36Sopenharmony_ci#else 30362306a36Sopenharmony_ci uint64_t prt_enb:40; 30462306a36Sopenharmony_ci uint64_t reserved_40_63:24; 30562306a36Sopenharmony_ci#endif 30662306a36Sopenharmony_ci } cn52xx; 30762306a36Sopenharmony_ci struct cvmx_ipd_bp_prt_red_end_cn63xx { 30862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 30962306a36Sopenharmony_ci uint64_t reserved_44_63:20; 31062306a36Sopenharmony_ci uint64_t prt_enb:44; 31162306a36Sopenharmony_ci#else 31262306a36Sopenharmony_ci uint64_t prt_enb:44; 31362306a36Sopenharmony_ci uint64_t reserved_44_63:20; 31462306a36Sopenharmony_ci#endif 31562306a36Sopenharmony_ci } cn63xx; 31662306a36Sopenharmony_ci}; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ciunion cvmx_ipd_bpidx_mbuf_th { 31962306a36Sopenharmony_ci uint64_t u64; 32062306a36Sopenharmony_ci struct cvmx_ipd_bpidx_mbuf_th_s { 32162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 32262306a36Sopenharmony_ci uint64_t reserved_18_63:46; 32362306a36Sopenharmony_ci uint64_t bp_enb:1; 32462306a36Sopenharmony_ci uint64_t page_cnt:17; 32562306a36Sopenharmony_ci#else 32662306a36Sopenharmony_ci uint64_t page_cnt:17; 32762306a36Sopenharmony_ci uint64_t bp_enb:1; 32862306a36Sopenharmony_ci uint64_t reserved_18_63:46; 32962306a36Sopenharmony_ci#endif 33062306a36Sopenharmony_ci } s; 33162306a36Sopenharmony_ci}; 33262306a36Sopenharmony_ci 33362306a36Sopenharmony_ciunion cvmx_ipd_bpid_bp_counterx { 33462306a36Sopenharmony_ci uint64_t u64; 33562306a36Sopenharmony_ci struct cvmx_ipd_bpid_bp_counterx_s { 33662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 33762306a36Sopenharmony_ci uint64_t reserved_25_63:39; 33862306a36Sopenharmony_ci uint64_t cnt_val:25; 33962306a36Sopenharmony_ci#else 34062306a36Sopenharmony_ci uint64_t cnt_val:25; 34162306a36Sopenharmony_ci uint64_t reserved_25_63:39; 34262306a36Sopenharmony_ci#endif 34362306a36Sopenharmony_ci } s; 34462306a36Sopenharmony_ci}; 34562306a36Sopenharmony_ci 34662306a36Sopenharmony_ciunion cvmx_ipd_clk_count { 34762306a36Sopenharmony_ci uint64_t u64; 34862306a36Sopenharmony_ci struct cvmx_ipd_clk_count_s { 34962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 35062306a36Sopenharmony_ci uint64_t clk_cnt:64; 35162306a36Sopenharmony_ci#else 35262306a36Sopenharmony_ci uint64_t clk_cnt:64; 35362306a36Sopenharmony_ci#endif 35462306a36Sopenharmony_ci } s; 35562306a36Sopenharmony_ci}; 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ciunion cvmx_ipd_credits { 35862306a36Sopenharmony_ci uint64_t u64; 35962306a36Sopenharmony_ci struct cvmx_ipd_credits_s { 36062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 36162306a36Sopenharmony_ci uint64_t reserved_16_63:48; 36262306a36Sopenharmony_ci uint64_t iob_wrc:8; 36362306a36Sopenharmony_ci uint64_t iob_wr:8; 36462306a36Sopenharmony_ci#else 36562306a36Sopenharmony_ci uint64_t iob_wr:8; 36662306a36Sopenharmony_ci uint64_t iob_wrc:8; 36762306a36Sopenharmony_ci uint64_t reserved_16_63:48; 36862306a36Sopenharmony_ci#endif 36962306a36Sopenharmony_ci } s; 37062306a36Sopenharmony_ci}; 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ciunion cvmx_ipd_ctl_status { 37362306a36Sopenharmony_ci uint64_t u64; 37462306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_s { 37562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 37662306a36Sopenharmony_ci uint64_t reserved_18_63:46; 37762306a36Sopenharmony_ci uint64_t use_sop:1; 37862306a36Sopenharmony_ci uint64_t rst_done:1; 37962306a36Sopenharmony_ci uint64_t clken:1; 38062306a36Sopenharmony_ci uint64_t no_wptr:1; 38162306a36Sopenharmony_ci uint64_t pq_apkt:1; 38262306a36Sopenharmony_ci uint64_t pq_nabuf:1; 38362306a36Sopenharmony_ci uint64_t ipd_full:1; 38462306a36Sopenharmony_ci uint64_t pkt_off:1; 38562306a36Sopenharmony_ci uint64_t len_m8:1; 38662306a36Sopenharmony_ci uint64_t reset:1; 38762306a36Sopenharmony_ci uint64_t addpkt:1; 38862306a36Sopenharmony_ci uint64_t naddbuf:1; 38962306a36Sopenharmony_ci uint64_t pkt_lend:1; 39062306a36Sopenharmony_ci uint64_t wqe_lend:1; 39162306a36Sopenharmony_ci uint64_t pbp_en:1; 39262306a36Sopenharmony_ci uint64_t opc_mode:2; 39362306a36Sopenharmony_ci uint64_t ipd_en:1; 39462306a36Sopenharmony_ci#else 39562306a36Sopenharmony_ci uint64_t ipd_en:1; 39662306a36Sopenharmony_ci uint64_t opc_mode:2; 39762306a36Sopenharmony_ci uint64_t pbp_en:1; 39862306a36Sopenharmony_ci uint64_t wqe_lend:1; 39962306a36Sopenharmony_ci uint64_t pkt_lend:1; 40062306a36Sopenharmony_ci uint64_t naddbuf:1; 40162306a36Sopenharmony_ci uint64_t addpkt:1; 40262306a36Sopenharmony_ci uint64_t reset:1; 40362306a36Sopenharmony_ci uint64_t len_m8:1; 40462306a36Sopenharmony_ci uint64_t pkt_off:1; 40562306a36Sopenharmony_ci uint64_t ipd_full:1; 40662306a36Sopenharmony_ci uint64_t pq_nabuf:1; 40762306a36Sopenharmony_ci uint64_t pq_apkt:1; 40862306a36Sopenharmony_ci uint64_t no_wptr:1; 40962306a36Sopenharmony_ci uint64_t clken:1; 41062306a36Sopenharmony_ci uint64_t rst_done:1; 41162306a36Sopenharmony_ci uint64_t use_sop:1; 41262306a36Sopenharmony_ci uint64_t reserved_18_63:46; 41362306a36Sopenharmony_ci#endif 41462306a36Sopenharmony_ci } s; 41562306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_cn30xx { 41662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 41762306a36Sopenharmony_ci uint64_t reserved_10_63:54; 41862306a36Sopenharmony_ci uint64_t len_m8:1; 41962306a36Sopenharmony_ci uint64_t reset:1; 42062306a36Sopenharmony_ci uint64_t addpkt:1; 42162306a36Sopenharmony_ci uint64_t naddbuf:1; 42262306a36Sopenharmony_ci uint64_t pkt_lend:1; 42362306a36Sopenharmony_ci uint64_t wqe_lend:1; 42462306a36Sopenharmony_ci uint64_t pbp_en:1; 42562306a36Sopenharmony_ci uint64_t opc_mode:2; 42662306a36Sopenharmony_ci uint64_t ipd_en:1; 42762306a36Sopenharmony_ci#else 42862306a36Sopenharmony_ci uint64_t ipd_en:1; 42962306a36Sopenharmony_ci uint64_t opc_mode:2; 43062306a36Sopenharmony_ci uint64_t pbp_en:1; 43162306a36Sopenharmony_ci uint64_t wqe_lend:1; 43262306a36Sopenharmony_ci uint64_t pkt_lend:1; 43362306a36Sopenharmony_ci uint64_t naddbuf:1; 43462306a36Sopenharmony_ci uint64_t addpkt:1; 43562306a36Sopenharmony_ci uint64_t reset:1; 43662306a36Sopenharmony_ci uint64_t len_m8:1; 43762306a36Sopenharmony_ci uint64_t reserved_10_63:54; 43862306a36Sopenharmony_ci#endif 43962306a36Sopenharmony_ci } cn30xx; 44062306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_cn38xxp2 { 44162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 44262306a36Sopenharmony_ci uint64_t reserved_9_63:55; 44362306a36Sopenharmony_ci uint64_t reset:1; 44462306a36Sopenharmony_ci uint64_t addpkt:1; 44562306a36Sopenharmony_ci uint64_t naddbuf:1; 44662306a36Sopenharmony_ci uint64_t pkt_lend:1; 44762306a36Sopenharmony_ci uint64_t wqe_lend:1; 44862306a36Sopenharmony_ci uint64_t pbp_en:1; 44962306a36Sopenharmony_ci uint64_t opc_mode:2; 45062306a36Sopenharmony_ci uint64_t ipd_en:1; 45162306a36Sopenharmony_ci#else 45262306a36Sopenharmony_ci uint64_t ipd_en:1; 45362306a36Sopenharmony_ci uint64_t opc_mode:2; 45462306a36Sopenharmony_ci uint64_t pbp_en:1; 45562306a36Sopenharmony_ci uint64_t wqe_lend:1; 45662306a36Sopenharmony_ci uint64_t pkt_lend:1; 45762306a36Sopenharmony_ci uint64_t naddbuf:1; 45862306a36Sopenharmony_ci uint64_t addpkt:1; 45962306a36Sopenharmony_ci uint64_t reset:1; 46062306a36Sopenharmony_ci uint64_t reserved_9_63:55; 46162306a36Sopenharmony_ci#endif 46262306a36Sopenharmony_ci } cn38xxp2; 46362306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_cn50xx { 46462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 46562306a36Sopenharmony_ci uint64_t reserved_15_63:49; 46662306a36Sopenharmony_ci uint64_t no_wptr:1; 46762306a36Sopenharmony_ci uint64_t pq_apkt:1; 46862306a36Sopenharmony_ci uint64_t pq_nabuf:1; 46962306a36Sopenharmony_ci uint64_t ipd_full:1; 47062306a36Sopenharmony_ci uint64_t pkt_off:1; 47162306a36Sopenharmony_ci uint64_t len_m8:1; 47262306a36Sopenharmony_ci uint64_t reset:1; 47362306a36Sopenharmony_ci uint64_t addpkt:1; 47462306a36Sopenharmony_ci uint64_t naddbuf:1; 47562306a36Sopenharmony_ci uint64_t pkt_lend:1; 47662306a36Sopenharmony_ci uint64_t wqe_lend:1; 47762306a36Sopenharmony_ci uint64_t pbp_en:1; 47862306a36Sopenharmony_ci uint64_t opc_mode:2; 47962306a36Sopenharmony_ci uint64_t ipd_en:1; 48062306a36Sopenharmony_ci#else 48162306a36Sopenharmony_ci uint64_t ipd_en:1; 48262306a36Sopenharmony_ci uint64_t opc_mode:2; 48362306a36Sopenharmony_ci uint64_t pbp_en:1; 48462306a36Sopenharmony_ci uint64_t wqe_lend:1; 48562306a36Sopenharmony_ci uint64_t pkt_lend:1; 48662306a36Sopenharmony_ci uint64_t naddbuf:1; 48762306a36Sopenharmony_ci uint64_t addpkt:1; 48862306a36Sopenharmony_ci uint64_t reset:1; 48962306a36Sopenharmony_ci uint64_t len_m8:1; 49062306a36Sopenharmony_ci uint64_t pkt_off:1; 49162306a36Sopenharmony_ci uint64_t ipd_full:1; 49262306a36Sopenharmony_ci uint64_t pq_nabuf:1; 49362306a36Sopenharmony_ci uint64_t pq_apkt:1; 49462306a36Sopenharmony_ci uint64_t no_wptr:1; 49562306a36Sopenharmony_ci uint64_t reserved_15_63:49; 49662306a36Sopenharmony_ci#endif 49762306a36Sopenharmony_ci } cn50xx; 49862306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_cn58xx { 49962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 50062306a36Sopenharmony_ci uint64_t reserved_12_63:52; 50162306a36Sopenharmony_ci uint64_t ipd_full:1; 50262306a36Sopenharmony_ci uint64_t pkt_off:1; 50362306a36Sopenharmony_ci uint64_t len_m8:1; 50462306a36Sopenharmony_ci uint64_t reset:1; 50562306a36Sopenharmony_ci uint64_t addpkt:1; 50662306a36Sopenharmony_ci uint64_t naddbuf:1; 50762306a36Sopenharmony_ci uint64_t pkt_lend:1; 50862306a36Sopenharmony_ci uint64_t wqe_lend:1; 50962306a36Sopenharmony_ci uint64_t pbp_en:1; 51062306a36Sopenharmony_ci uint64_t opc_mode:2; 51162306a36Sopenharmony_ci uint64_t ipd_en:1; 51262306a36Sopenharmony_ci#else 51362306a36Sopenharmony_ci uint64_t ipd_en:1; 51462306a36Sopenharmony_ci uint64_t opc_mode:2; 51562306a36Sopenharmony_ci uint64_t pbp_en:1; 51662306a36Sopenharmony_ci uint64_t wqe_lend:1; 51762306a36Sopenharmony_ci uint64_t pkt_lend:1; 51862306a36Sopenharmony_ci uint64_t naddbuf:1; 51962306a36Sopenharmony_ci uint64_t addpkt:1; 52062306a36Sopenharmony_ci uint64_t reset:1; 52162306a36Sopenharmony_ci uint64_t len_m8:1; 52262306a36Sopenharmony_ci uint64_t pkt_off:1; 52362306a36Sopenharmony_ci uint64_t ipd_full:1; 52462306a36Sopenharmony_ci uint64_t reserved_12_63:52; 52562306a36Sopenharmony_ci#endif 52662306a36Sopenharmony_ci } cn58xx; 52762306a36Sopenharmony_ci struct cvmx_ipd_ctl_status_cn63xxp1 { 52862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 52962306a36Sopenharmony_ci uint64_t reserved_16_63:48; 53062306a36Sopenharmony_ci uint64_t clken:1; 53162306a36Sopenharmony_ci uint64_t no_wptr:1; 53262306a36Sopenharmony_ci uint64_t pq_apkt:1; 53362306a36Sopenharmony_ci uint64_t pq_nabuf:1; 53462306a36Sopenharmony_ci uint64_t ipd_full:1; 53562306a36Sopenharmony_ci uint64_t pkt_off:1; 53662306a36Sopenharmony_ci uint64_t len_m8:1; 53762306a36Sopenharmony_ci uint64_t reset:1; 53862306a36Sopenharmony_ci uint64_t addpkt:1; 53962306a36Sopenharmony_ci uint64_t naddbuf:1; 54062306a36Sopenharmony_ci uint64_t pkt_lend:1; 54162306a36Sopenharmony_ci uint64_t wqe_lend:1; 54262306a36Sopenharmony_ci uint64_t pbp_en:1; 54362306a36Sopenharmony_ci uint64_t opc_mode:2; 54462306a36Sopenharmony_ci uint64_t ipd_en:1; 54562306a36Sopenharmony_ci#else 54662306a36Sopenharmony_ci uint64_t ipd_en:1; 54762306a36Sopenharmony_ci uint64_t opc_mode:2; 54862306a36Sopenharmony_ci uint64_t pbp_en:1; 54962306a36Sopenharmony_ci uint64_t wqe_lend:1; 55062306a36Sopenharmony_ci uint64_t pkt_lend:1; 55162306a36Sopenharmony_ci uint64_t naddbuf:1; 55262306a36Sopenharmony_ci uint64_t addpkt:1; 55362306a36Sopenharmony_ci uint64_t reset:1; 55462306a36Sopenharmony_ci uint64_t len_m8:1; 55562306a36Sopenharmony_ci uint64_t pkt_off:1; 55662306a36Sopenharmony_ci uint64_t ipd_full:1; 55762306a36Sopenharmony_ci uint64_t pq_nabuf:1; 55862306a36Sopenharmony_ci uint64_t pq_apkt:1; 55962306a36Sopenharmony_ci uint64_t no_wptr:1; 56062306a36Sopenharmony_ci uint64_t clken:1; 56162306a36Sopenharmony_ci uint64_t reserved_16_63:48; 56262306a36Sopenharmony_ci#endif 56362306a36Sopenharmony_ci } cn63xxp1; 56462306a36Sopenharmony_ci}; 56562306a36Sopenharmony_ci 56662306a36Sopenharmony_ciunion cvmx_ipd_ecc_ctl { 56762306a36Sopenharmony_ci uint64_t u64; 56862306a36Sopenharmony_ci struct cvmx_ipd_ecc_ctl_s { 56962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 57062306a36Sopenharmony_ci uint64_t reserved_8_63:56; 57162306a36Sopenharmony_ci uint64_t pm3_syn:2; 57262306a36Sopenharmony_ci uint64_t pm2_syn:2; 57362306a36Sopenharmony_ci uint64_t pm1_syn:2; 57462306a36Sopenharmony_ci uint64_t pm0_syn:2; 57562306a36Sopenharmony_ci#else 57662306a36Sopenharmony_ci uint64_t pm0_syn:2; 57762306a36Sopenharmony_ci uint64_t pm1_syn:2; 57862306a36Sopenharmony_ci uint64_t pm2_syn:2; 57962306a36Sopenharmony_ci uint64_t pm3_syn:2; 58062306a36Sopenharmony_ci uint64_t reserved_8_63:56; 58162306a36Sopenharmony_ci#endif 58262306a36Sopenharmony_ci } s; 58362306a36Sopenharmony_ci}; 58462306a36Sopenharmony_ci 58562306a36Sopenharmony_ciunion cvmx_ipd_free_ptr_fifo_ctl { 58662306a36Sopenharmony_ci uint64_t u64; 58762306a36Sopenharmony_ci struct cvmx_ipd_free_ptr_fifo_ctl_s { 58862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 58962306a36Sopenharmony_ci uint64_t reserved_32_63:32; 59062306a36Sopenharmony_ci uint64_t max_cnts:7; 59162306a36Sopenharmony_ci uint64_t wraddr:8; 59262306a36Sopenharmony_ci uint64_t praddr:8; 59362306a36Sopenharmony_ci uint64_t cena:1; 59462306a36Sopenharmony_ci uint64_t raddr:8; 59562306a36Sopenharmony_ci#else 59662306a36Sopenharmony_ci uint64_t raddr:8; 59762306a36Sopenharmony_ci uint64_t cena:1; 59862306a36Sopenharmony_ci uint64_t praddr:8; 59962306a36Sopenharmony_ci uint64_t wraddr:8; 60062306a36Sopenharmony_ci uint64_t max_cnts:7; 60162306a36Sopenharmony_ci uint64_t reserved_32_63:32; 60262306a36Sopenharmony_ci#endif 60362306a36Sopenharmony_ci } s; 60462306a36Sopenharmony_ci}; 60562306a36Sopenharmony_ci 60662306a36Sopenharmony_ciunion cvmx_ipd_free_ptr_value { 60762306a36Sopenharmony_ci uint64_t u64; 60862306a36Sopenharmony_ci struct cvmx_ipd_free_ptr_value_s { 60962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 61062306a36Sopenharmony_ci uint64_t reserved_33_63:31; 61162306a36Sopenharmony_ci uint64_t ptr:33; 61262306a36Sopenharmony_ci#else 61362306a36Sopenharmony_ci uint64_t ptr:33; 61462306a36Sopenharmony_ci uint64_t reserved_33_63:31; 61562306a36Sopenharmony_ci#endif 61662306a36Sopenharmony_ci } s; 61762306a36Sopenharmony_ci}; 61862306a36Sopenharmony_ci 61962306a36Sopenharmony_ciunion cvmx_ipd_hold_ptr_fifo_ctl { 62062306a36Sopenharmony_ci uint64_t u64; 62162306a36Sopenharmony_ci struct cvmx_ipd_hold_ptr_fifo_ctl_s { 62262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 62362306a36Sopenharmony_ci uint64_t reserved_43_63:21; 62462306a36Sopenharmony_ci uint64_t ptr:33; 62562306a36Sopenharmony_ci uint64_t max_pkt:3; 62662306a36Sopenharmony_ci uint64_t praddr:3; 62762306a36Sopenharmony_ci uint64_t cena:1; 62862306a36Sopenharmony_ci uint64_t raddr:3; 62962306a36Sopenharmony_ci#else 63062306a36Sopenharmony_ci uint64_t raddr:3; 63162306a36Sopenharmony_ci uint64_t cena:1; 63262306a36Sopenharmony_ci uint64_t praddr:3; 63362306a36Sopenharmony_ci uint64_t max_pkt:3; 63462306a36Sopenharmony_ci uint64_t ptr:33; 63562306a36Sopenharmony_ci uint64_t reserved_43_63:21; 63662306a36Sopenharmony_ci#endif 63762306a36Sopenharmony_ci } s; 63862306a36Sopenharmony_ci}; 63962306a36Sopenharmony_ci 64062306a36Sopenharmony_ciunion cvmx_ipd_int_enb { 64162306a36Sopenharmony_ci uint64_t u64; 64262306a36Sopenharmony_ci struct cvmx_ipd_int_enb_s { 64362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 64462306a36Sopenharmony_ci uint64_t reserved_23_63:41; 64562306a36Sopenharmony_ci uint64_t pw3_dbe:1; 64662306a36Sopenharmony_ci uint64_t pw3_sbe:1; 64762306a36Sopenharmony_ci uint64_t pw2_dbe:1; 64862306a36Sopenharmony_ci uint64_t pw2_sbe:1; 64962306a36Sopenharmony_ci uint64_t pw1_dbe:1; 65062306a36Sopenharmony_ci uint64_t pw1_sbe:1; 65162306a36Sopenharmony_ci uint64_t pw0_dbe:1; 65262306a36Sopenharmony_ci uint64_t pw0_sbe:1; 65362306a36Sopenharmony_ci uint64_t dat:1; 65462306a36Sopenharmony_ci uint64_t eop:1; 65562306a36Sopenharmony_ci uint64_t sop:1; 65662306a36Sopenharmony_ci uint64_t pq_sub:1; 65762306a36Sopenharmony_ci uint64_t pq_add:1; 65862306a36Sopenharmony_ci uint64_t bc_ovr:1; 65962306a36Sopenharmony_ci uint64_t d_coll:1; 66062306a36Sopenharmony_ci uint64_t c_coll:1; 66162306a36Sopenharmony_ci uint64_t cc_ovr:1; 66262306a36Sopenharmony_ci uint64_t dc_ovr:1; 66362306a36Sopenharmony_ci uint64_t bp_sub:1; 66462306a36Sopenharmony_ci uint64_t prc_par3:1; 66562306a36Sopenharmony_ci uint64_t prc_par2:1; 66662306a36Sopenharmony_ci uint64_t prc_par1:1; 66762306a36Sopenharmony_ci uint64_t prc_par0:1; 66862306a36Sopenharmony_ci#else 66962306a36Sopenharmony_ci uint64_t prc_par0:1; 67062306a36Sopenharmony_ci uint64_t prc_par1:1; 67162306a36Sopenharmony_ci uint64_t prc_par2:1; 67262306a36Sopenharmony_ci uint64_t prc_par3:1; 67362306a36Sopenharmony_ci uint64_t bp_sub:1; 67462306a36Sopenharmony_ci uint64_t dc_ovr:1; 67562306a36Sopenharmony_ci uint64_t cc_ovr:1; 67662306a36Sopenharmony_ci uint64_t c_coll:1; 67762306a36Sopenharmony_ci uint64_t d_coll:1; 67862306a36Sopenharmony_ci uint64_t bc_ovr:1; 67962306a36Sopenharmony_ci uint64_t pq_add:1; 68062306a36Sopenharmony_ci uint64_t pq_sub:1; 68162306a36Sopenharmony_ci uint64_t sop:1; 68262306a36Sopenharmony_ci uint64_t eop:1; 68362306a36Sopenharmony_ci uint64_t dat:1; 68462306a36Sopenharmony_ci uint64_t pw0_sbe:1; 68562306a36Sopenharmony_ci uint64_t pw0_dbe:1; 68662306a36Sopenharmony_ci uint64_t pw1_sbe:1; 68762306a36Sopenharmony_ci uint64_t pw1_dbe:1; 68862306a36Sopenharmony_ci uint64_t pw2_sbe:1; 68962306a36Sopenharmony_ci uint64_t pw2_dbe:1; 69062306a36Sopenharmony_ci uint64_t pw3_sbe:1; 69162306a36Sopenharmony_ci uint64_t pw3_dbe:1; 69262306a36Sopenharmony_ci uint64_t reserved_23_63:41; 69362306a36Sopenharmony_ci#endif 69462306a36Sopenharmony_ci } s; 69562306a36Sopenharmony_ci struct cvmx_ipd_int_enb_cn30xx { 69662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 69762306a36Sopenharmony_ci uint64_t reserved_5_63:59; 69862306a36Sopenharmony_ci uint64_t bp_sub:1; 69962306a36Sopenharmony_ci uint64_t prc_par3:1; 70062306a36Sopenharmony_ci uint64_t prc_par2:1; 70162306a36Sopenharmony_ci uint64_t prc_par1:1; 70262306a36Sopenharmony_ci uint64_t prc_par0:1; 70362306a36Sopenharmony_ci#else 70462306a36Sopenharmony_ci uint64_t prc_par0:1; 70562306a36Sopenharmony_ci uint64_t prc_par1:1; 70662306a36Sopenharmony_ci uint64_t prc_par2:1; 70762306a36Sopenharmony_ci uint64_t prc_par3:1; 70862306a36Sopenharmony_ci uint64_t bp_sub:1; 70962306a36Sopenharmony_ci uint64_t reserved_5_63:59; 71062306a36Sopenharmony_ci#endif 71162306a36Sopenharmony_ci } cn30xx; 71262306a36Sopenharmony_ci struct cvmx_ipd_int_enb_cn38xx { 71362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 71462306a36Sopenharmony_ci uint64_t reserved_10_63:54; 71562306a36Sopenharmony_ci uint64_t bc_ovr:1; 71662306a36Sopenharmony_ci uint64_t d_coll:1; 71762306a36Sopenharmony_ci uint64_t c_coll:1; 71862306a36Sopenharmony_ci uint64_t cc_ovr:1; 71962306a36Sopenharmony_ci uint64_t dc_ovr:1; 72062306a36Sopenharmony_ci uint64_t bp_sub:1; 72162306a36Sopenharmony_ci uint64_t prc_par3:1; 72262306a36Sopenharmony_ci uint64_t prc_par2:1; 72362306a36Sopenharmony_ci uint64_t prc_par1:1; 72462306a36Sopenharmony_ci uint64_t prc_par0:1; 72562306a36Sopenharmony_ci#else 72662306a36Sopenharmony_ci uint64_t prc_par0:1; 72762306a36Sopenharmony_ci uint64_t prc_par1:1; 72862306a36Sopenharmony_ci uint64_t prc_par2:1; 72962306a36Sopenharmony_ci uint64_t prc_par3:1; 73062306a36Sopenharmony_ci uint64_t bp_sub:1; 73162306a36Sopenharmony_ci uint64_t dc_ovr:1; 73262306a36Sopenharmony_ci uint64_t cc_ovr:1; 73362306a36Sopenharmony_ci uint64_t c_coll:1; 73462306a36Sopenharmony_ci uint64_t d_coll:1; 73562306a36Sopenharmony_ci uint64_t bc_ovr:1; 73662306a36Sopenharmony_ci uint64_t reserved_10_63:54; 73762306a36Sopenharmony_ci#endif 73862306a36Sopenharmony_ci } cn38xx; 73962306a36Sopenharmony_ci struct cvmx_ipd_int_enb_cn52xx { 74062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 74162306a36Sopenharmony_ci uint64_t reserved_12_63:52; 74262306a36Sopenharmony_ci uint64_t pq_sub:1; 74362306a36Sopenharmony_ci uint64_t pq_add:1; 74462306a36Sopenharmony_ci uint64_t bc_ovr:1; 74562306a36Sopenharmony_ci uint64_t d_coll:1; 74662306a36Sopenharmony_ci uint64_t c_coll:1; 74762306a36Sopenharmony_ci uint64_t cc_ovr:1; 74862306a36Sopenharmony_ci uint64_t dc_ovr:1; 74962306a36Sopenharmony_ci uint64_t bp_sub:1; 75062306a36Sopenharmony_ci uint64_t prc_par3:1; 75162306a36Sopenharmony_ci uint64_t prc_par2:1; 75262306a36Sopenharmony_ci uint64_t prc_par1:1; 75362306a36Sopenharmony_ci uint64_t prc_par0:1; 75462306a36Sopenharmony_ci#else 75562306a36Sopenharmony_ci uint64_t prc_par0:1; 75662306a36Sopenharmony_ci uint64_t prc_par1:1; 75762306a36Sopenharmony_ci uint64_t prc_par2:1; 75862306a36Sopenharmony_ci uint64_t prc_par3:1; 75962306a36Sopenharmony_ci uint64_t bp_sub:1; 76062306a36Sopenharmony_ci uint64_t dc_ovr:1; 76162306a36Sopenharmony_ci uint64_t cc_ovr:1; 76262306a36Sopenharmony_ci uint64_t c_coll:1; 76362306a36Sopenharmony_ci uint64_t d_coll:1; 76462306a36Sopenharmony_ci uint64_t bc_ovr:1; 76562306a36Sopenharmony_ci uint64_t pq_add:1; 76662306a36Sopenharmony_ci uint64_t pq_sub:1; 76762306a36Sopenharmony_ci uint64_t reserved_12_63:52; 76862306a36Sopenharmony_ci#endif 76962306a36Sopenharmony_ci } cn52xx; 77062306a36Sopenharmony_ci}; 77162306a36Sopenharmony_ci 77262306a36Sopenharmony_ciunion cvmx_ipd_int_sum { 77362306a36Sopenharmony_ci uint64_t u64; 77462306a36Sopenharmony_ci struct cvmx_ipd_int_sum_s { 77562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 77662306a36Sopenharmony_ci uint64_t reserved_23_63:41; 77762306a36Sopenharmony_ci uint64_t pw3_dbe:1; 77862306a36Sopenharmony_ci uint64_t pw3_sbe:1; 77962306a36Sopenharmony_ci uint64_t pw2_dbe:1; 78062306a36Sopenharmony_ci uint64_t pw2_sbe:1; 78162306a36Sopenharmony_ci uint64_t pw1_dbe:1; 78262306a36Sopenharmony_ci uint64_t pw1_sbe:1; 78362306a36Sopenharmony_ci uint64_t pw0_dbe:1; 78462306a36Sopenharmony_ci uint64_t pw0_sbe:1; 78562306a36Sopenharmony_ci uint64_t dat:1; 78662306a36Sopenharmony_ci uint64_t eop:1; 78762306a36Sopenharmony_ci uint64_t sop:1; 78862306a36Sopenharmony_ci uint64_t pq_sub:1; 78962306a36Sopenharmony_ci uint64_t pq_add:1; 79062306a36Sopenharmony_ci uint64_t bc_ovr:1; 79162306a36Sopenharmony_ci uint64_t d_coll:1; 79262306a36Sopenharmony_ci uint64_t c_coll:1; 79362306a36Sopenharmony_ci uint64_t cc_ovr:1; 79462306a36Sopenharmony_ci uint64_t dc_ovr:1; 79562306a36Sopenharmony_ci uint64_t bp_sub:1; 79662306a36Sopenharmony_ci uint64_t prc_par3:1; 79762306a36Sopenharmony_ci uint64_t prc_par2:1; 79862306a36Sopenharmony_ci uint64_t prc_par1:1; 79962306a36Sopenharmony_ci uint64_t prc_par0:1; 80062306a36Sopenharmony_ci#else 80162306a36Sopenharmony_ci uint64_t prc_par0:1; 80262306a36Sopenharmony_ci uint64_t prc_par1:1; 80362306a36Sopenharmony_ci uint64_t prc_par2:1; 80462306a36Sopenharmony_ci uint64_t prc_par3:1; 80562306a36Sopenharmony_ci uint64_t bp_sub:1; 80662306a36Sopenharmony_ci uint64_t dc_ovr:1; 80762306a36Sopenharmony_ci uint64_t cc_ovr:1; 80862306a36Sopenharmony_ci uint64_t c_coll:1; 80962306a36Sopenharmony_ci uint64_t d_coll:1; 81062306a36Sopenharmony_ci uint64_t bc_ovr:1; 81162306a36Sopenharmony_ci uint64_t pq_add:1; 81262306a36Sopenharmony_ci uint64_t pq_sub:1; 81362306a36Sopenharmony_ci uint64_t sop:1; 81462306a36Sopenharmony_ci uint64_t eop:1; 81562306a36Sopenharmony_ci uint64_t dat:1; 81662306a36Sopenharmony_ci uint64_t pw0_sbe:1; 81762306a36Sopenharmony_ci uint64_t pw0_dbe:1; 81862306a36Sopenharmony_ci uint64_t pw1_sbe:1; 81962306a36Sopenharmony_ci uint64_t pw1_dbe:1; 82062306a36Sopenharmony_ci uint64_t pw2_sbe:1; 82162306a36Sopenharmony_ci uint64_t pw2_dbe:1; 82262306a36Sopenharmony_ci uint64_t pw3_sbe:1; 82362306a36Sopenharmony_ci uint64_t pw3_dbe:1; 82462306a36Sopenharmony_ci uint64_t reserved_23_63:41; 82562306a36Sopenharmony_ci#endif 82662306a36Sopenharmony_ci } s; 82762306a36Sopenharmony_ci struct cvmx_ipd_int_sum_cn30xx { 82862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 82962306a36Sopenharmony_ci uint64_t reserved_5_63:59; 83062306a36Sopenharmony_ci uint64_t bp_sub:1; 83162306a36Sopenharmony_ci uint64_t prc_par3:1; 83262306a36Sopenharmony_ci uint64_t prc_par2:1; 83362306a36Sopenharmony_ci uint64_t prc_par1:1; 83462306a36Sopenharmony_ci uint64_t prc_par0:1; 83562306a36Sopenharmony_ci#else 83662306a36Sopenharmony_ci uint64_t prc_par0:1; 83762306a36Sopenharmony_ci uint64_t prc_par1:1; 83862306a36Sopenharmony_ci uint64_t prc_par2:1; 83962306a36Sopenharmony_ci uint64_t prc_par3:1; 84062306a36Sopenharmony_ci uint64_t bp_sub:1; 84162306a36Sopenharmony_ci uint64_t reserved_5_63:59; 84262306a36Sopenharmony_ci#endif 84362306a36Sopenharmony_ci } cn30xx; 84462306a36Sopenharmony_ci struct cvmx_ipd_int_sum_cn38xx { 84562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 84662306a36Sopenharmony_ci uint64_t reserved_10_63:54; 84762306a36Sopenharmony_ci uint64_t bc_ovr:1; 84862306a36Sopenharmony_ci uint64_t d_coll:1; 84962306a36Sopenharmony_ci uint64_t c_coll:1; 85062306a36Sopenharmony_ci uint64_t cc_ovr:1; 85162306a36Sopenharmony_ci uint64_t dc_ovr:1; 85262306a36Sopenharmony_ci uint64_t bp_sub:1; 85362306a36Sopenharmony_ci uint64_t prc_par3:1; 85462306a36Sopenharmony_ci uint64_t prc_par2:1; 85562306a36Sopenharmony_ci uint64_t prc_par1:1; 85662306a36Sopenharmony_ci uint64_t prc_par0:1; 85762306a36Sopenharmony_ci#else 85862306a36Sopenharmony_ci uint64_t prc_par0:1; 85962306a36Sopenharmony_ci uint64_t prc_par1:1; 86062306a36Sopenharmony_ci uint64_t prc_par2:1; 86162306a36Sopenharmony_ci uint64_t prc_par3:1; 86262306a36Sopenharmony_ci uint64_t bp_sub:1; 86362306a36Sopenharmony_ci uint64_t dc_ovr:1; 86462306a36Sopenharmony_ci uint64_t cc_ovr:1; 86562306a36Sopenharmony_ci uint64_t c_coll:1; 86662306a36Sopenharmony_ci uint64_t d_coll:1; 86762306a36Sopenharmony_ci uint64_t bc_ovr:1; 86862306a36Sopenharmony_ci uint64_t reserved_10_63:54; 86962306a36Sopenharmony_ci#endif 87062306a36Sopenharmony_ci } cn38xx; 87162306a36Sopenharmony_ci struct cvmx_ipd_int_sum_cn52xx { 87262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 87362306a36Sopenharmony_ci uint64_t reserved_12_63:52; 87462306a36Sopenharmony_ci uint64_t pq_sub:1; 87562306a36Sopenharmony_ci uint64_t pq_add:1; 87662306a36Sopenharmony_ci uint64_t bc_ovr:1; 87762306a36Sopenharmony_ci uint64_t d_coll:1; 87862306a36Sopenharmony_ci uint64_t c_coll:1; 87962306a36Sopenharmony_ci uint64_t cc_ovr:1; 88062306a36Sopenharmony_ci uint64_t dc_ovr:1; 88162306a36Sopenharmony_ci uint64_t bp_sub:1; 88262306a36Sopenharmony_ci uint64_t prc_par3:1; 88362306a36Sopenharmony_ci uint64_t prc_par2:1; 88462306a36Sopenharmony_ci uint64_t prc_par1:1; 88562306a36Sopenharmony_ci uint64_t prc_par0:1; 88662306a36Sopenharmony_ci#else 88762306a36Sopenharmony_ci uint64_t prc_par0:1; 88862306a36Sopenharmony_ci uint64_t prc_par1:1; 88962306a36Sopenharmony_ci uint64_t prc_par2:1; 89062306a36Sopenharmony_ci uint64_t prc_par3:1; 89162306a36Sopenharmony_ci uint64_t bp_sub:1; 89262306a36Sopenharmony_ci uint64_t dc_ovr:1; 89362306a36Sopenharmony_ci uint64_t cc_ovr:1; 89462306a36Sopenharmony_ci uint64_t c_coll:1; 89562306a36Sopenharmony_ci uint64_t d_coll:1; 89662306a36Sopenharmony_ci uint64_t bc_ovr:1; 89762306a36Sopenharmony_ci uint64_t pq_add:1; 89862306a36Sopenharmony_ci uint64_t pq_sub:1; 89962306a36Sopenharmony_ci uint64_t reserved_12_63:52; 90062306a36Sopenharmony_ci#endif 90162306a36Sopenharmony_ci } cn52xx; 90262306a36Sopenharmony_ci}; 90362306a36Sopenharmony_ci 90462306a36Sopenharmony_ciunion cvmx_ipd_next_pkt_ptr { 90562306a36Sopenharmony_ci uint64_t u64; 90662306a36Sopenharmony_ci struct cvmx_ipd_next_pkt_ptr_s { 90762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 90862306a36Sopenharmony_ci uint64_t reserved_33_63:31; 90962306a36Sopenharmony_ci uint64_t ptr:33; 91062306a36Sopenharmony_ci#else 91162306a36Sopenharmony_ci uint64_t ptr:33; 91262306a36Sopenharmony_ci uint64_t reserved_33_63:31; 91362306a36Sopenharmony_ci#endif 91462306a36Sopenharmony_ci } s; 91562306a36Sopenharmony_ci}; 91662306a36Sopenharmony_ci 91762306a36Sopenharmony_ciunion cvmx_ipd_next_wqe_ptr { 91862306a36Sopenharmony_ci uint64_t u64; 91962306a36Sopenharmony_ci struct cvmx_ipd_next_wqe_ptr_s { 92062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 92162306a36Sopenharmony_ci uint64_t reserved_33_63:31; 92262306a36Sopenharmony_ci uint64_t ptr:33; 92362306a36Sopenharmony_ci#else 92462306a36Sopenharmony_ci uint64_t ptr:33; 92562306a36Sopenharmony_ci uint64_t reserved_33_63:31; 92662306a36Sopenharmony_ci#endif 92762306a36Sopenharmony_ci } s; 92862306a36Sopenharmony_ci}; 92962306a36Sopenharmony_ci 93062306a36Sopenharmony_ciunion cvmx_ipd_not_1st_mbuff_skip { 93162306a36Sopenharmony_ci uint64_t u64; 93262306a36Sopenharmony_ci struct cvmx_ipd_not_1st_mbuff_skip_s { 93362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 93462306a36Sopenharmony_ci uint64_t reserved_6_63:58; 93562306a36Sopenharmony_ci uint64_t skip_sz:6; 93662306a36Sopenharmony_ci#else 93762306a36Sopenharmony_ci uint64_t skip_sz:6; 93862306a36Sopenharmony_ci uint64_t reserved_6_63:58; 93962306a36Sopenharmony_ci#endif 94062306a36Sopenharmony_ci } s; 94162306a36Sopenharmony_ci}; 94262306a36Sopenharmony_ci 94362306a36Sopenharmony_ciunion cvmx_ipd_on_bp_drop_pktx { 94462306a36Sopenharmony_ci uint64_t u64; 94562306a36Sopenharmony_ci struct cvmx_ipd_on_bp_drop_pktx_s { 94662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 94762306a36Sopenharmony_ci uint64_t prt_enb:64; 94862306a36Sopenharmony_ci#else 94962306a36Sopenharmony_ci uint64_t prt_enb:64; 95062306a36Sopenharmony_ci#endif 95162306a36Sopenharmony_ci } s; 95262306a36Sopenharmony_ci}; 95362306a36Sopenharmony_ci 95462306a36Sopenharmony_ciunion cvmx_ipd_packet_mbuff_size { 95562306a36Sopenharmony_ci uint64_t u64; 95662306a36Sopenharmony_ci struct cvmx_ipd_packet_mbuff_size_s { 95762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 95862306a36Sopenharmony_ci uint64_t reserved_12_63:52; 95962306a36Sopenharmony_ci uint64_t mb_size:12; 96062306a36Sopenharmony_ci#else 96162306a36Sopenharmony_ci uint64_t mb_size:12; 96262306a36Sopenharmony_ci uint64_t reserved_12_63:52; 96362306a36Sopenharmony_ci#endif 96462306a36Sopenharmony_ci } s; 96562306a36Sopenharmony_ci}; 96662306a36Sopenharmony_ci 96762306a36Sopenharmony_ciunion cvmx_ipd_pkt_err { 96862306a36Sopenharmony_ci uint64_t u64; 96962306a36Sopenharmony_ci struct cvmx_ipd_pkt_err_s { 97062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 97162306a36Sopenharmony_ci uint64_t reserved_6_63:58; 97262306a36Sopenharmony_ci uint64_t reasm:6; 97362306a36Sopenharmony_ci#else 97462306a36Sopenharmony_ci uint64_t reasm:6; 97562306a36Sopenharmony_ci uint64_t reserved_6_63:58; 97662306a36Sopenharmony_ci#endif 97762306a36Sopenharmony_ci } s; 97862306a36Sopenharmony_ci}; 97962306a36Sopenharmony_ci 98062306a36Sopenharmony_ciunion cvmx_ipd_pkt_ptr_valid { 98162306a36Sopenharmony_ci uint64_t u64; 98262306a36Sopenharmony_ci struct cvmx_ipd_pkt_ptr_valid_s { 98362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 98462306a36Sopenharmony_ci uint64_t reserved_29_63:35; 98562306a36Sopenharmony_ci uint64_t ptr:29; 98662306a36Sopenharmony_ci#else 98762306a36Sopenharmony_ci uint64_t ptr:29; 98862306a36Sopenharmony_ci uint64_t reserved_29_63:35; 98962306a36Sopenharmony_ci#endif 99062306a36Sopenharmony_ci } s; 99162306a36Sopenharmony_ci}; 99262306a36Sopenharmony_ci 99362306a36Sopenharmony_ciunion cvmx_ipd_portx_bp_page_cnt { 99462306a36Sopenharmony_ci uint64_t u64; 99562306a36Sopenharmony_ci struct cvmx_ipd_portx_bp_page_cnt_s { 99662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 99762306a36Sopenharmony_ci uint64_t reserved_18_63:46; 99862306a36Sopenharmony_ci uint64_t bp_enb:1; 99962306a36Sopenharmony_ci uint64_t page_cnt:17; 100062306a36Sopenharmony_ci#else 100162306a36Sopenharmony_ci uint64_t page_cnt:17; 100262306a36Sopenharmony_ci uint64_t bp_enb:1; 100362306a36Sopenharmony_ci uint64_t reserved_18_63:46; 100462306a36Sopenharmony_ci#endif 100562306a36Sopenharmony_ci } s; 100662306a36Sopenharmony_ci}; 100762306a36Sopenharmony_ci 100862306a36Sopenharmony_ciunion cvmx_ipd_portx_bp_page_cnt2 { 100962306a36Sopenharmony_ci uint64_t u64; 101062306a36Sopenharmony_ci struct cvmx_ipd_portx_bp_page_cnt2_s { 101162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 101262306a36Sopenharmony_ci uint64_t reserved_18_63:46; 101362306a36Sopenharmony_ci uint64_t bp_enb:1; 101462306a36Sopenharmony_ci uint64_t page_cnt:17; 101562306a36Sopenharmony_ci#else 101662306a36Sopenharmony_ci uint64_t page_cnt:17; 101762306a36Sopenharmony_ci uint64_t bp_enb:1; 101862306a36Sopenharmony_ci uint64_t reserved_18_63:46; 101962306a36Sopenharmony_ci#endif 102062306a36Sopenharmony_ci } s; 102162306a36Sopenharmony_ci}; 102262306a36Sopenharmony_ci 102362306a36Sopenharmony_ciunion cvmx_ipd_portx_bp_page_cnt3 { 102462306a36Sopenharmony_ci uint64_t u64; 102562306a36Sopenharmony_ci struct cvmx_ipd_portx_bp_page_cnt3_s { 102662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 102762306a36Sopenharmony_ci uint64_t reserved_18_63:46; 102862306a36Sopenharmony_ci uint64_t bp_enb:1; 102962306a36Sopenharmony_ci uint64_t page_cnt:17; 103062306a36Sopenharmony_ci#else 103162306a36Sopenharmony_ci uint64_t page_cnt:17; 103262306a36Sopenharmony_ci uint64_t bp_enb:1; 103362306a36Sopenharmony_ci uint64_t reserved_18_63:46; 103462306a36Sopenharmony_ci#endif 103562306a36Sopenharmony_ci } s; 103662306a36Sopenharmony_ci}; 103762306a36Sopenharmony_ci 103862306a36Sopenharmony_ciunion cvmx_ipd_port_bp_counters2_pairx { 103962306a36Sopenharmony_ci uint64_t u64; 104062306a36Sopenharmony_ci struct cvmx_ipd_port_bp_counters2_pairx_s { 104162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 104262306a36Sopenharmony_ci uint64_t reserved_25_63:39; 104362306a36Sopenharmony_ci uint64_t cnt_val:25; 104462306a36Sopenharmony_ci#else 104562306a36Sopenharmony_ci uint64_t cnt_val:25; 104662306a36Sopenharmony_ci uint64_t reserved_25_63:39; 104762306a36Sopenharmony_ci#endif 104862306a36Sopenharmony_ci } s; 104962306a36Sopenharmony_ci}; 105062306a36Sopenharmony_ci 105162306a36Sopenharmony_ciunion cvmx_ipd_port_bp_counters3_pairx { 105262306a36Sopenharmony_ci uint64_t u64; 105362306a36Sopenharmony_ci struct cvmx_ipd_port_bp_counters3_pairx_s { 105462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 105562306a36Sopenharmony_ci uint64_t reserved_25_63:39; 105662306a36Sopenharmony_ci uint64_t cnt_val:25; 105762306a36Sopenharmony_ci#else 105862306a36Sopenharmony_ci uint64_t cnt_val:25; 105962306a36Sopenharmony_ci uint64_t reserved_25_63:39; 106062306a36Sopenharmony_ci#endif 106162306a36Sopenharmony_ci } s; 106262306a36Sopenharmony_ci}; 106362306a36Sopenharmony_ci 106462306a36Sopenharmony_ciunion cvmx_ipd_port_bp_counters4_pairx { 106562306a36Sopenharmony_ci uint64_t u64; 106662306a36Sopenharmony_ci struct cvmx_ipd_port_bp_counters4_pairx_s { 106762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 106862306a36Sopenharmony_ci uint64_t reserved_25_63:39; 106962306a36Sopenharmony_ci uint64_t cnt_val:25; 107062306a36Sopenharmony_ci#else 107162306a36Sopenharmony_ci uint64_t cnt_val:25; 107262306a36Sopenharmony_ci uint64_t reserved_25_63:39; 107362306a36Sopenharmony_ci#endif 107462306a36Sopenharmony_ci } s; 107562306a36Sopenharmony_ci}; 107662306a36Sopenharmony_ci 107762306a36Sopenharmony_ciunion cvmx_ipd_port_bp_counters_pairx { 107862306a36Sopenharmony_ci uint64_t u64; 107962306a36Sopenharmony_ci struct cvmx_ipd_port_bp_counters_pairx_s { 108062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 108162306a36Sopenharmony_ci uint64_t reserved_25_63:39; 108262306a36Sopenharmony_ci uint64_t cnt_val:25; 108362306a36Sopenharmony_ci#else 108462306a36Sopenharmony_ci uint64_t cnt_val:25; 108562306a36Sopenharmony_ci uint64_t reserved_25_63:39; 108662306a36Sopenharmony_ci#endif 108762306a36Sopenharmony_ci } s; 108862306a36Sopenharmony_ci}; 108962306a36Sopenharmony_ci 109062306a36Sopenharmony_ciunion cvmx_ipd_port_ptr_fifo_ctl { 109162306a36Sopenharmony_ci uint64_t u64; 109262306a36Sopenharmony_ci struct cvmx_ipd_port_ptr_fifo_ctl_s { 109362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 109462306a36Sopenharmony_ci uint64_t reserved_48_63:16; 109562306a36Sopenharmony_ci uint64_t ptr:33; 109662306a36Sopenharmony_ci uint64_t max_pkt:7; 109762306a36Sopenharmony_ci uint64_t cena:1; 109862306a36Sopenharmony_ci uint64_t raddr:7; 109962306a36Sopenharmony_ci#else 110062306a36Sopenharmony_ci uint64_t raddr:7; 110162306a36Sopenharmony_ci uint64_t cena:1; 110262306a36Sopenharmony_ci uint64_t max_pkt:7; 110362306a36Sopenharmony_ci uint64_t ptr:33; 110462306a36Sopenharmony_ci uint64_t reserved_48_63:16; 110562306a36Sopenharmony_ci#endif 110662306a36Sopenharmony_ci } s; 110762306a36Sopenharmony_ci}; 110862306a36Sopenharmony_ci 110962306a36Sopenharmony_ciunion cvmx_ipd_port_qos_x_cnt { 111062306a36Sopenharmony_ci uint64_t u64; 111162306a36Sopenharmony_ci struct cvmx_ipd_port_qos_x_cnt_s { 111262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 111362306a36Sopenharmony_ci uint64_t wmark:32; 111462306a36Sopenharmony_ci uint64_t cnt:32; 111562306a36Sopenharmony_ci#else 111662306a36Sopenharmony_ci uint64_t cnt:32; 111762306a36Sopenharmony_ci uint64_t wmark:32; 111862306a36Sopenharmony_ci#endif 111962306a36Sopenharmony_ci } s; 112062306a36Sopenharmony_ci}; 112162306a36Sopenharmony_ci 112262306a36Sopenharmony_ciunion cvmx_ipd_port_qos_intx { 112362306a36Sopenharmony_ci uint64_t u64; 112462306a36Sopenharmony_ci struct cvmx_ipd_port_qos_intx_s { 112562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 112662306a36Sopenharmony_ci uint64_t intr:64; 112762306a36Sopenharmony_ci#else 112862306a36Sopenharmony_ci uint64_t intr:64; 112962306a36Sopenharmony_ci#endif 113062306a36Sopenharmony_ci } s; 113162306a36Sopenharmony_ci}; 113262306a36Sopenharmony_ci 113362306a36Sopenharmony_ciunion cvmx_ipd_port_qos_int_enbx { 113462306a36Sopenharmony_ci uint64_t u64; 113562306a36Sopenharmony_ci struct cvmx_ipd_port_qos_int_enbx_s { 113662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 113762306a36Sopenharmony_ci uint64_t enb:64; 113862306a36Sopenharmony_ci#else 113962306a36Sopenharmony_ci uint64_t enb:64; 114062306a36Sopenharmony_ci#endif 114162306a36Sopenharmony_ci } s; 114262306a36Sopenharmony_ci}; 114362306a36Sopenharmony_ci 114462306a36Sopenharmony_ciunion cvmx_ipd_port_sopx { 114562306a36Sopenharmony_ci uint64_t u64; 114662306a36Sopenharmony_ci struct cvmx_ipd_port_sopx_s { 114762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 114862306a36Sopenharmony_ci uint64_t sop:64; 114962306a36Sopenharmony_ci#else 115062306a36Sopenharmony_ci uint64_t sop:64; 115162306a36Sopenharmony_ci#endif 115262306a36Sopenharmony_ci } s; 115362306a36Sopenharmony_ci}; 115462306a36Sopenharmony_ci 115562306a36Sopenharmony_ciunion cvmx_ipd_prc_hold_ptr_fifo_ctl { 115662306a36Sopenharmony_ci uint64_t u64; 115762306a36Sopenharmony_ci struct cvmx_ipd_prc_hold_ptr_fifo_ctl_s { 115862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 115962306a36Sopenharmony_ci uint64_t reserved_39_63:25; 116062306a36Sopenharmony_ci uint64_t max_pkt:3; 116162306a36Sopenharmony_ci uint64_t praddr:3; 116262306a36Sopenharmony_ci uint64_t ptr:29; 116362306a36Sopenharmony_ci uint64_t cena:1; 116462306a36Sopenharmony_ci uint64_t raddr:3; 116562306a36Sopenharmony_ci#else 116662306a36Sopenharmony_ci uint64_t raddr:3; 116762306a36Sopenharmony_ci uint64_t cena:1; 116862306a36Sopenharmony_ci uint64_t ptr:29; 116962306a36Sopenharmony_ci uint64_t praddr:3; 117062306a36Sopenharmony_ci uint64_t max_pkt:3; 117162306a36Sopenharmony_ci uint64_t reserved_39_63:25; 117262306a36Sopenharmony_ci#endif 117362306a36Sopenharmony_ci } s; 117462306a36Sopenharmony_ci}; 117562306a36Sopenharmony_ci 117662306a36Sopenharmony_ciunion cvmx_ipd_prc_port_ptr_fifo_ctl { 117762306a36Sopenharmony_ci uint64_t u64; 117862306a36Sopenharmony_ci struct cvmx_ipd_prc_port_ptr_fifo_ctl_s { 117962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 118062306a36Sopenharmony_ci uint64_t reserved_44_63:20; 118162306a36Sopenharmony_ci uint64_t max_pkt:7; 118262306a36Sopenharmony_ci uint64_t ptr:29; 118362306a36Sopenharmony_ci uint64_t cena:1; 118462306a36Sopenharmony_ci uint64_t raddr:7; 118562306a36Sopenharmony_ci#else 118662306a36Sopenharmony_ci uint64_t raddr:7; 118762306a36Sopenharmony_ci uint64_t cena:1; 118862306a36Sopenharmony_ci uint64_t ptr:29; 118962306a36Sopenharmony_ci uint64_t max_pkt:7; 119062306a36Sopenharmony_ci uint64_t reserved_44_63:20; 119162306a36Sopenharmony_ci#endif 119262306a36Sopenharmony_ci } s; 119362306a36Sopenharmony_ci}; 119462306a36Sopenharmony_ci 119562306a36Sopenharmony_ciunion cvmx_ipd_ptr_count { 119662306a36Sopenharmony_ci uint64_t u64; 119762306a36Sopenharmony_ci struct cvmx_ipd_ptr_count_s { 119862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 119962306a36Sopenharmony_ci uint64_t reserved_19_63:45; 120062306a36Sopenharmony_ci uint64_t pktv_cnt:1; 120162306a36Sopenharmony_ci uint64_t wqev_cnt:1; 120262306a36Sopenharmony_ci uint64_t pfif_cnt:3; 120362306a36Sopenharmony_ci uint64_t pkt_pcnt:7; 120462306a36Sopenharmony_ci uint64_t wqe_pcnt:7; 120562306a36Sopenharmony_ci#else 120662306a36Sopenharmony_ci uint64_t wqe_pcnt:7; 120762306a36Sopenharmony_ci uint64_t pkt_pcnt:7; 120862306a36Sopenharmony_ci uint64_t pfif_cnt:3; 120962306a36Sopenharmony_ci uint64_t wqev_cnt:1; 121062306a36Sopenharmony_ci uint64_t pktv_cnt:1; 121162306a36Sopenharmony_ci uint64_t reserved_19_63:45; 121262306a36Sopenharmony_ci#endif 121362306a36Sopenharmony_ci } s; 121462306a36Sopenharmony_ci}; 121562306a36Sopenharmony_ci 121662306a36Sopenharmony_ciunion cvmx_ipd_pwp_ptr_fifo_ctl { 121762306a36Sopenharmony_ci uint64_t u64; 121862306a36Sopenharmony_ci struct cvmx_ipd_pwp_ptr_fifo_ctl_s { 121962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 122062306a36Sopenharmony_ci uint64_t reserved_61_63:3; 122162306a36Sopenharmony_ci uint64_t max_cnts:7; 122262306a36Sopenharmony_ci uint64_t wraddr:8; 122362306a36Sopenharmony_ci uint64_t praddr:8; 122462306a36Sopenharmony_ci uint64_t ptr:29; 122562306a36Sopenharmony_ci uint64_t cena:1; 122662306a36Sopenharmony_ci uint64_t raddr:8; 122762306a36Sopenharmony_ci#else 122862306a36Sopenharmony_ci uint64_t raddr:8; 122962306a36Sopenharmony_ci uint64_t cena:1; 123062306a36Sopenharmony_ci uint64_t ptr:29; 123162306a36Sopenharmony_ci uint64_t praddr:8; 123262306a36Sopenharmony_ci uint64_t wraddr:8; 123362306a36Sopenharmony_ci uint64_t max_cnts:7; 123462306a36Sopenharmony_ci uint64_t reserved_61_63:3; 123562306a36Sopenharmony_ci#endif 123662306a36Sopenharmony_ci } s; 123762306a36Sopenharmony_ci}; 123862306a36Sopenharmony_ci 123962306a36Sopenharmony_ciunion cvmx_ipd_qosx_red_marks { 124062306a36Sopenharmony_ci uint64_t u64; 124162306a36Sopenharmony_ci struct cvmx_ipd_qosx_red_marks_s { 124262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 124362306a36Sopenharmony_ci uint64_t drop:32; 124462306a36Sopenharmony_ci uint64_t pass:32; 124562306a36Sopenharmony_ci#else 124662306a36Sopenharmony_ci uint64_t pass:32; 124762306a36Sopenharmony_ci uint64_t drop:32; 124862306a36Sopenharmony_ci#endif 124962306a36Sopenharmony_ci } s; 125062306a36Sopenharmony_ci}; 125162306a36Sopenharmony_ci 125262306a36Sopenharmony_ciunion cvmx_ipd_que0_free_page_cnt { 125362306a36Sopenharmony_ci uint64_t u64; 125462306a36Sopenharmony_ci struct cvmx_ipd_que0_free_page_cnt_s { 125562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 125662306a36Sopenharmony_ci uint64_t reserved_32_63:32; 125762306a36Sopenharmony_ci uint64_t q0_pcnt:32; 125862306a36Sopenharmony_ci#else 125962306a36Sopenharmony_ci uint64_t q0_pcnt:32; 126062306a36Sopenharmony_ci uint64_t reserved_32_63:32; 126162306a36Sopenharmony_ci#endif 126262306a36Sopenharmony_ci } s; 126362306a36Sopenharmony_ci}; 126462306a36Sopenharmony_ci 126562306a36Sopenharmony_ciunion cvmx_ipd_red_bpid_enablex { 126662306a36Sopenharmony_ci uint64_t u64; 126762306a36Sopenharmony_ci struct cvmx_ipd_red_bpid_enablex_s { 126862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 126962306a36Sopenharmony_ci uint64_t prt_enb:64; 127062306a36Sopenharmony_ci#else 127162306a36Sopenharmony_ci uint64_t prt_enb:64; 127262306a36Sopenharmony_ci#endif 127362306a36Sopenharmony_ci } s; 127462306a36Sopenharmony_ci}; 127562306a36Sopenharmony_ci 127662306a36Sopenharmony_ciunion cvmx_ipd_red_delay { 127762306a36Sopenharmony_ci uint64_t u64; 127862306a36Sopenharmony_ci struct cvmx_ipd_red_delay_s { 127962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 128062306a36Sopenharmony_ci uint64_t reserved_28_63:36; 128162306a36Sopenharmony_ci uint64_t prb_dly:14; 128262306a36Sopenharmony_ci uint64_t avg_dly:14; 128362306a36Sopenharmony_ci#else 128462306a36Sopenharmony_ci uint64_t avg_dly:14; 128562306a36Sopenharmony_ci uint64_t prb_dly:14; 128662306a36Sopenharmony_ci uint64_t reserved_28_63:36; 128762306a36Sopenharmony_ci#endif 128862306a36Sopenharmony_ci } s; 128962306a36Sopenharmony_ci}; 129062306a36Sopenharmony_ci 129162306a36Sopenharmony_ciunion cvmx_ipd_red_port_enable { 129262306a36Sopenharmony_ci uint64_t u64; 129362306a36Sopenharmony_ci struct cvmx_ipd_red_port_enable_s { 129462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 129562306a36Sopenharmony_ci uint64_t prb_dly:14; 129662306a36Sopenharmony_ci uint64_t avg_dly:14; 129762306a36Sopenharmony_ci uint64_t prt_enb:36; 129862306a36Sopenharmony_ci#else 129962306a36Sopenharmony_ci uint64_t prt_enb:36; 130062306a36Sopenharmony_ci uint64_t avg_dly:14; 130162306a36Sopenharmony_ci uint64_t prb_dly:14; 130262306a36Sopenharmony_ci#endif 130362306a36Sopenharmony_ci } s; 130462306a36Sopenharmony_ci}; 130562306a36Sopenharmony_ci 130662306a36Sopenharmony_ciunion cvmx_ipd_red_port_enable2 { 130762306a36Sopenharmony_ci uint64_t u64; 130862306a36Sopenharmony_ci struct cvmx_ipd_red_port_enable2_s { 130962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 131062306a36Sopenharmony_ci uint64_t reserved_12_63:52; 131162306a36Sopenharmony_ci uint64_t prt_enb:12; 131262306a36Sopenharmony_ci#else 131362306a36Sopenharmony_ci uint64_t prt_enb:12; 131462306a36Sopenharmony_ci uint64_t reserved_12_63:52; 131562306a36Sopenharmony_ci#endif 131662306a36Sopenharmony_ci } s; 131762306a36Sopenharmony_ci struct cvmx_ipd_red_port_enable2_cn52xx { 131862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 131962306a36Sopenharmony_ci uint64_t reserved_4_63:60; 132062306a36Sopenharmony_ci uint64_t prt_enb:4; 132162306a36Sopenharmony_ci#else 132262306a36Sopenharmony_ci uint64_t prt_enb:4; 132362306a36Sopenharmony_ci uint64_t reserved_4_63:60; 132462306a36Sopenharmony_ci#endif 132562306a36Sopenharmony_ci } cn52xx; 132662306a36Sopenharmony_ci struct cvmx_ipd_red_port_enable2_cn63xx { 132762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 132862306a36Sopenharmony_ci uint64_t reserved_8_63:56; 132962306a36Sopenharmony_ci uint64_t prt_enb:8; 133062306a36Sopenharmony_ci#else 133162306a36Sopenharmony_ci uint64_t prt_enb:8; 133262306a36Sopenharmony_ci uint64_t reserved_8_63:56; 133362306a36Sopenharmony_ci#endif 133462306a36Sopenharmony_ci } cn63xx; 133562306a36Sopenharmony_ci}; 133662306a36Sopenharmony_ci 133762306a36Sopenharmony_ciunion cvmx_ipd_red_quex_param { 133862306a36Sopenharmony_ci uint64_t u64; 133962306a36Sopenharmony_ci struct cvmx_ipd_red_quex_param_s { 134062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 134162306a36Sopenharmony_ci uint64_t reserved_49_63:15; 134262306a36Sopenharmony_ci uint64_t use_pcnt:1; 134362306a36Sopenharmony_ci uint64_t new_con:8; 134462306a36Sopenharmony_ci uint64_t avg_con:8; 134562306a36Sopenharmony_ci uint64_t prb_con:32; 134662306a36Sopenharmony_ci#else 134762306a36Sopenharmony_ci uint64_t prb_con:32; 134862306a36Sopenharmony_ci uint64_t avg_con:8; 134962306a36Sopenharmony_ci uint64_t new_con:8; 135062306a36Sopenharmony_ci uint64_t use_pcnt:1; 135162306a36Sopenharmony_ci uint64_t reserved_49_63:15; 135262306a36Sopenharmony_ci#endif 135362306a36Sopenharmony_ci } s; 135462306a36Sopenharmony_ci}; 135562306a36Sopenharmony_ci 135662306a36Sopenharmony_ciunion cvmx_ipd_req_wgt { 135762306a36Sopenharmony_ci uint64_t u64; 135862306a36Sopenharmony_ci struct cvmx_ipd_req_wgt_s { 135962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 136062306a36Sopenharmony_ci uint64_t wgt7:8; 136162306a36Sopenharmony_ci uint64_t wgt6:8; 136262306a36Sopenharmony_ci uint64_t wgt5:8; 136362306a36Sopenharmony_ci uint64_t wgt4:8; 136462306a36Sopenharmony_ci uint64_t wgt3:8; 136562306a36Sopenharmony_ci uint64_t wgt2:8; 136662306a36Sopenharmony_ci uint64_t wgt1:8; 136762306a36Sopenharmony_ci uint64_t wgt0:8; 136862306a36Sopenharmony_ci#else 136962306a36Sopenharmony_ci uint64_t wgt0:8; 137062306a36Sopenharmony_ci uint64_t wgt1:8; 137162306a36Sopenharmony_ci uint64_t wgt2:8; 137262306a36Sopenharmony_ci uint64_t wgt3:8; 137362306a36Sopenharmony_ci uint64_t wgt4:8; 137462306a36Sopenharmony_ci uint64_t wgt5:8; 137562306a36Sopenharmony_ci uint64_t wgt6:8; 137662306a36Sopenharmony_ci uint64_t wgt7:8; 137762306a36Sopenharmony_ci#endif 137862306a36Sopenharmony_ci } s; 137962306a36Sopenharmony_ci}; 138062306a36Sopenharmony_ci 138162306a36Sopenharmony_ciunion cvmx_ipd_sub_port_bp_page_cnt { 138262306a36Sopenharmony_ci uint64_t u64; 138362306a36Sopenharmony_ci struct cvmx_ipd_sub_port_bp_page_cnt_s { 138462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 138562306a36Sopenharmony_ci uint64_t reserved_31_63:33; 138662306a36Sopenharmony_ci uint64_t port:6; 138762306a36Sopenharmony_ci uint64_t page_cnt:25; 138862306a36Sopenharmony_ci#else 138962306a36Sopenharmony_ci uint64_t page_cnt:25; 139062306a36Sopenharmony_ci uint64_t port:6; 139162306a36Sopenharmony_ci uint64_t reserved_31_63:33; 139262306a36Sopenharmony_ci#endif 139362306a36Sopenharmony_ci } s; 139462306a36Sopenharmony_ci}; 139562306a36Sopenharmony_ci 139662306a36Sopenharmony_ciunion cvmx_ipd_sub_port_fcs { 139762306a36Sopenharmony_ci uint64_t u64; 139862306a36Sopenharmony_ci struct cvmx_ipd_sub_port_fcs_s { 139962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 140062306a36Sopenharmony_ci uint64_t reserved_40_63:24; 140162306a36Sopenharmony_ci uint64_t port_bit2:4; 140262306a36Sopenharmony_ci uint64_t reserved_32_35:4; 140362306a36Sopenharmony_ci uint64_t port_bit:32; 140462306a36Sopenharmony_ci#else 140562306a36Sopenharmony_ci uint64_t port_bit:32; 140662306a36Sopenharmony_ci uint64_t reserved_32_35:4; 140762306a36Sopenharmony_ci uint64_t port_bit2:4; 140862306a36Sopenharmony_ci uint64_t reserved_40_63:24; 140962306a36Sopenharmony_ci#endif 141062306a36Sopenharmony_ci } s; 141162306a36Sopenharmony_ci struct cvmx_ipd_sub_port_fcs_cn30xx { 141262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 141362306a36Sopenharmony_ci uint64_t reserved_3_63:61; 141462306a36Sopenharmony_ci uint64_t port_bit:3; 141562306a36Sopenharmony_ci#else 141662306a36Sopenharmony_ci uint64_t port_bit:3; 141762306a36Sopenharmony_ci uint64_t reserved_3_63:61; 141862306a36Sopenharmony_ci#endif 141962306a36Sopenharmony_ci } cn30xx; 142062306a36Sopenharmony_ci struct cvmx_ipd_sub_port_fcs_cn38xx { 142162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 142262306a36Sopenharmony_ci uint64_t reserved_32_63:32; 142362306a36Sopenharmony_ci uint64_t port_bit:32; 142462306a36Sopenharmony_ci#else 142562306a36Sopenharmony_ci uint64_t port_bit:32; 142662306a36Sopenharmony_ci uint64_t reserved_32_63:32; 142762306a36Sopenharmony_ci#endif 142862306a36Sopenharmony_ci } cn38xx; 142962306a36Sopenharmony_ci}; 143062306a36Sopenharmony_ci 143162306a36Sopenharmony_ciunion cvmx_ipd_sub_port_qos_cnt { 143262306a36Sopenharmony_ci uint64_t u64; 143362306a36Sopenharmony_ci struct cvmx_ipd_sub_port_qos_cnt_s { 143462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 143562306a36Sopenharmony_ci uint64_t reserved_41_63:23; 143662306a36Sopenharmony_ci uint64_t port_qos:9; 143762306a36Sopenharmony_ci uint64_t cnt:32; 143862306a36Sopenharmony_ci#else 143962306a36Sopenharmony_ci uint64_t cnt:32; 144062306a36Sopenharmony_ci uint64_t port_qos:9; 144162306a36Sopenharmony_ci uint64_t reserved_41_63:23; 144262306a36Sopenharmony_ci#endif 144362306a36Sopenharmony_ci } s; 144462306a36Sopenharmony_ci}; 144562306a36Sopenharmony_ci 144662306a36Sopenharmony_ciunion cvmx_ipd_wqe_fpa_queue { 144762306a36Sopenharmony_ci uint64_t u64; 144862306a36Sopenharmony_ci struct cvmx_ipd_wqe_fpa_queue_s { 144962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 145062306a36Sopenharmony_ci uint64_t reserved_3_63:61; 145162306a36Sopenharmony_ci uint64_t wqe_pool:3; 145262306a36Sopenharmony_ci#else 145362306a36Sopenharmony_ci uint64_t wqe_pool:3; 145462306a36Sopenharmony_ci uint64_t reserved_3_63:61; 145562306a36Sopenharmony_ci#endif 145662306a36Sopenharmony_ci } s; 145762306a36Sopenharmony_ci}; 145862306a36Sopenharmony_ci 145962306a36Sopenharmony_ciunion cvmx_ipd_wqe_ptr_valid { 146062306a36Sopenharmony_ci uint64_t u64; 146162306a36Sopenharmony_ci struct cvmx_ipd_wqe_ptr_valid_s { 146262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 146362306a36Sopenharmony_ci uint64_t reserved_29_63:35; 146462306a36Sopenharmony_ci uint64_t ptr:29; 146562306a36Sopenharmony_ci#else 146662306a36Sopenharmony_ci uint64_t ptr:29; 146762306a36Sopenharmony_ci uint64_t reserved_29_63:35; 146862306a36Sopenharmony_ci#endif 146962306a36Sopenharmony_ci } s; 147062306a36Sopenharmony_ci}; 147162306a36Sopenharmony_ci 147262306a36Sopenharmony_ci#endif 1473