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_PESCX_DEFS_H__ 2962306a36Sopenharmony_ci#define __CVMX_PESCX_DEFS_H__ 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#define CVMX_PESCX_BIST_STATUS(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000018ull) + ((block_id) & 1) * 0x8000000ull) 3262306a36Sopenharmony_ci#define CVMX_PESCX_BIST_STATUS2(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000418ull) + ((block_id) & 1) * 0x8000000ull) 3362306a36Sopenharmony_ci#define CVMX_PESCX_CFG_RD(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000030ull) + ((block_id) & 1) * 0x8000000ull) 3462306a36Sopenharmony_ci#define CVMX_PESCX_CFG_WR(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000028ull) + ((block_id) & 1) * 0x8000000ull) 3562306a36Sopenharmony_ci#define CVMX_PESCX_CPL_LUT_VALID(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000098ull) + ((block_id) & 1) * 0x8000000ull) 3662306a36Sopenharmony_ci#define CVMX_PESCX_CTL_STATUS(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000000ull) + ((block_id) & 1) * 0x8000000ull) 3762306a36Sopenharmony_ci#define CVMX_PESCX_CTL_STATUS2(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000400ull) + ((block_id) & 1) * 0x8000000ull) 3862306a36Sopenharmony_ci#define CVMX_PESCX_DBG_INFO(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000008ull) + ((block_id) & 1) * 0x8000000ull) 3962306a36Sopenharmony_ci#define CVMX_PESCX_DBG_INFO_EN(block_id) (CVMX_ADD_IO_SEG(0x00011800C80000A0ull) + ((block_id) & 1) * 0x8000000ull) 4062306a36Sopenharmony_ci#define CVMX_PESCX_DIAG_STATUS(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000020ull) + ((block_id) & 1) * 0x8000000ull) 4162306a36Sopenharmony_ci#define CVMX_PESCX_P2N_BAR0_START(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000080ull) + ((block_id) & 1) * 0x8000000ull) 4262306a36Sopenharmony_ci#define CVMX_PESCX_P2N_BAR1_START(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000088ull) + ((block_id) & 1) * 0x8000000ull) 4362306a36Sopenharmony_ci#define CVMX_PESCX_P2N_BAR2_START(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000090ull) + ((block_id) & 1) * 0x8000000ull) 4462306a36Sopenharmony_ci#define CVMX_PESCX_P2P_BARX_END(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800C8000048ull) + (((offset) & 3) + ((block_id) & 1) * 0x800000ull) * 16) 4562306a36Sopenharmony_ci#define CVMX_PESCX_P2P_BARX_START(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800C8000040ull) + (((offset) & 3) + ((block_id) & 1) * 0x800000ull) * 16) 4662306a36Sopenharmony_ci#define CVMX_PESCX_TLP_CREDITS(block_id) (CVMX_ADD_IO_SEG(0x00011800C8000038ull) + ((block_id) & 1) * 0x8000000ull) 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ciunion cvmx_pescx_bist_status { 4962306a36Sopenharmony_ci uint64_t u64; 5062306a36Sopenharmony_ci struct cvmx_pescx_bist_status_s { 5162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 5262306a36Sopenharmony_ci uint64_t reserved_13_63:51; 5362306a36Sopenharmony_ci uint64_t rqdata5:1; 5462306a36Sopenharmony_ci uint64_t ctlp_or:1; 5562306a36Sopenharmony_ci uint64_t ntlp_or:1; 5662306a36Sopenharmony_ci uint64_t ptlp_or:1; 5762306a36Sopenharmony_ci uint64_t retry:1; 5862306a36Sopenharmony_ci uint64_t rqdata0:1; 5962306a36Sopenharmony_ci uint64_t rqdata1:1; 6062306a36Sopenharmony_ci uint64_t rqdata2:1; 6162306a36Sopenharmony_ci uint64_t rqdata3:1; 6262306a36Sopenharmony_ci uint64_t rqdata4:1; 6362306a36Sopenharmony_ci uint64_t rqhdr1:1; 6462306a36Sopenharmony_ci uint64_t rqhdr0:1; 6562306a36Sopenharmony_ci uint64_t sot:1; 6662306a36Sopenharmony_ci#else 6762306a36Sopenharmony_ci uint64_t sot:1; 6862306a36Sopenharmony_ci uint64_t rqhdr0:1; 6962306a36Sopenharmony_ci uint64_t rqhdr1:1; 7062306a36Sopenharmony_ci uint64_t rqdata4:1; 7162306a36Sopenharmony_ci uint64_t rqdata3:1; 7262306a36Sopenharmony_ci uint64_t rqdata2:1; 7362306a36Sopenharmony_ci uint64_t rqdata1:1; 7462306a36Sopenharmony_ci uint64_t rqdata0:1; 7562306a36Sopenharmony_ci uint64_t retry:1; 7662306a36Sopenharmony_ci uint64_t ptlp_or:1; 7762306a36Sopenharmony_ci uint64_t ntlp_or:1; 7862306a36Sopenharmony_ci uint64_t ctlp_or:1; 7962306a36Sopenharmony_ci uint64_t rqdata5:1; 8062306a36Sopenharmony_ci uint64_t reserved_13_63:51; 8162306a36Sopenharmony_ci#endif 8262306a36Sopenharmony_ci } s; 8362306a36Sopenharmony_ci struct cvmx_pescx_bist_status_cn52xxp1 { 8462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 8562306a36Sopenharmony_ci uint64_t reserved_12_63:52; 8662306a36Sopenharmony_ci uint64_t ctlp_or:1; 8762306a36Sopenharmony_ci uint64_t ntlp_or:1; 8862306a36Sopenharmony_ci uint64_t ptlp_or:1; 8962306a36Sopenharmony_ci uint64_t retry:1; 9062306a36Sopenharmony_ci uint64_t rqdata0:1; 9162306a36Sopenharmony_ci uint64_t rqdata1:1; 9262306a36Sopenharmony_ci uint64_t rqdata2:1; 9362306a36Sopenharmony_ci uint64_t rqdata3:1; 9462306a36Sopenharmony_ci uint64_t rqdata4:1; 9562306a36Sopenharmony_ci uint64_t rqhdr1:1; 9662306a36Sopenharmony_ci uint64_t rqhdr0:1; 9762306a36Sopenharmony_ci uint64_t sot:1; 9862306a36Sopenharmony_ci#else 9962306a36Sopenharmony_ci uint64_t sot:1; 10062306a36Sopenharmony_ci uint64_t rqhdr0:1; 10162306a36Sopenharmony_ci uint64_t rqhdr1:1; 10262306a36Sopenharmony_ci uint64_t rqdata4:1; 10362306a36Sopenharmony_ci uint64_t rqdata3:1; 10462306a36Sopenharmony_ci uint64_t rqdata2:1; 10562306a36Sopenharmony_ci uint64_t rqdata1:1; 10662306a36Sopenharmony_ci uint64_t rqdata0:1; 10762306a36Sopenharmony_ci uint64_t retry:1; 10862306a36Sopenharmony_ci uint64_t ptlp_or:1; 10962306a36Sopenharmony_ci uint64_t ntlp_or:1; 11062306a36Sopenharmony_ci uint64_t ctlp_or:1; 11162306a36Sopenharmony_ci uint64_t reserved_12_63:52; 11262306a36Sopenharmony_ci#endif 11362306a36Sopenharmony_ci } cn52xxp1; 11462306a36Sopenharmony_ci}; 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ciunion cvmx_pescx_bist_status2 { 11762306a36Sopenharmony_ci uint64_t u64; 11862306a36Sopenharmony_ci struct cvmx_pescx_bist_status2_s { 11962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 12062306a36Sopenharmony_ci uint64_t reserved_14_63:50; 12162306a36Sopenharmony_ci uint64_t cto_p2e:1; 12262306a36Sopenharmony_ci uint64_t e2p_cpl:1; 12362306a36Sopenharmony_ci uint64_t e2p_n:1; 12462306a36Sopenharmony_ci uint64_t e2p_p:1; 12562306a36Sopenharmony_ci uint64_t e2p_rsl:1; 12662306a36Sopenharmony_ci uint64_t dbg_p2e:1; 12762306a36Sopenharmony_ci uint64_t peai_p2e:1; 12862306a36Sopenharmony_ci uint64_t rsl_p2e:1; 12962306a36Sopenharmony_ci uint64_t pef_tpf1:1; 13062306a36Sopenharmony_ci uint64_t pef_tpf0:1; 13162306a36Sopenharmony_ci uint64_t pef_tnf:1; 13262306a36Sopenharmony_ci uint64_t pef_tcf1:1; 13362306a36Sopenharmony_ci uint64_t pef_tc0:1; 13462306a36Sopenharmony_ci uint64_t ppf:1; 13562306a36Sopenharmony_ci#else 13662306a36Sopenharmony_ci uint64_t ppf:1; 13762306a36Sopenharmony_ci uint64_t pef_tc0:1; 13862306a36Sopenharmony_ci uint64_t pef_tcf1:1; 13962306a36Sopenharmony_ci uint64_t pef_tnf:1; 14062306a36Sopenharmony_ci uint64_t pef_tpf0:1; 14162306a36Sopenharmony_ci uint64_t pef_tpf1:1; 14262306a36Sopenharmony_ci uint64_t rsl_p2e:1; 14362306a36Sopenharmony_ci uint64_t peai_p2e:1; 14462306a36Sopenharmony_ci uint64_t dbg_p2e:1; 14562306a36Sopenharmony_ci uint64_t e2p_rsl:1; 14662306a36Sopenharmony_ci uint64_t e2p_p:1; 14762306a36Sopenharmony_ci uint64_t e2p_n:1; 14862306a36Sopenharmony_ci uint64_t e2p_cpl:1; 14962306a36Sopenharmony_ci uint64_t cto_p2e:1; 15062306a36Sopenharmony_ci uint64_t reserved_14_63:50; 15162306a36Sopenharmony_ci#endif 15262306a36Sopenharmony_ci } s; 15362306a36Sopenharmony_ci}; 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ciunion cvmx_pescx_cfg_rd { 15662306a36Sopenharmony_ci uint64_t u64; 15762306a36Sopenharmony_ci struct cvmx_pescx_cfg_rd_s { 15862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 15962306a36Sopenharmony_ci uint64_t data:32; 16062306a36Sopenharmony_ci uint64_t addr:32; 16162306a36Sopenharmony_ci#else 16262306a36Sopenharmony_ci uint64_t addr:32; 16362306a36Sopenharmony_ci uint64_t data:32; 16462306a36Sopenharmony_ci#endif 16562306a36Sopenharmony_ci } s; 16662306a36Sopenharmony_ci}; 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ciunion cvmx_pescx_cfg_wr { 16962306a36Sopenharmony_ci uint64_t u64; 17062306a36Sopenharmony_ci struct cvmx_pescx_cfg_wr_s { 17162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 17262306a36Sopenharmony_ci uint64_t data:32; 17362306a36Sopenharmony_ci uint64_t addr:32; 17462306a36Sopenharmony_ci#else 17562306a36Sopenharmony_ci uint64_t addr:32; 17662306a36Sopenharmony_ci uint64_t data:32; 17762306a36Sopenharmony_ci#endif 17862306a36Sopenharmony_ci } s; 17962306a36Sopenharmony_ci}; 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ciunion cvmx_pescx_cpl_lut_valid { 18262306a36Sopenharmony_ci uint64_t u64; 18362306a36Sopenharmony_ci struct cvmx_pescx_cpl_lut_valid_s { 18462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 18562306a36Sopenharmony_ci uint64_t reserved_32_63:32; 18662306a36Sopenharmony_ci uint64_t tag:32; 18762306a36Sopenharmony_ci#else 18862306a36Sopenharmony_ci uint64_t tag:32; 18962306a36Sopenharmony_ci uint64_t reserved_32_63:32; 19062306a36Sopenharmony_ci#endif 19162306a36Sopenharmony_ci } s; 19262306a36Sopenharmony_ci}; 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ciunion cvmx_pescx_ctl_status { 19562306a36Sopenharmony_ci uint64_t u64; 19662306a36Sopenharmony_ci struct cvmx_pescx_ctl_status_s { 19762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 19862306a36Sopenharmony_ci uint64_t reserved_28_63:36; 19962306a36Sopenharmony_ci uint64_t dnum:5; 20062306a36Sopenharmony_ci uint64_t pbus:8; 20162306a36Sopenharmony_ci uint64_t qlm_cfg:2; 20262306a36Sopenharmony_ci uint64_t lane_swp:1; 20362306a36Sopenharmony_ci uint64_t pm_xtoff:1; 20462306a36Sopenharmony_ci uint64_t pm_xpme:1; 20562306a36Sopenharmony_ci uint64_t ob_p_cmd:1; 20662306a36Sopenharmony_ci uint64_t reserved_7_8:2; 20762306a36Sopenharmony_ci uint64_t nf_ecrc:1; 20862306a36Sopenharmony_ci uint64_t dly_one:1; 20962306a36Sopenharmony_ci uint64_t lnk_enb:1; 21062306a36Sopenharmony_ci uint64_t ro_ctlp:1; 21162306a36Sopenharmony_ci uint64_t reserved_2_2:1; 21262306a36Sopenharmony_ci uint64_t inv_ecrc:1; 21362306a36Sopenharmony_ci uint64_t inv_lcrc:1; 21462306a36Sopenharmony_ci#else 21562306a36Sopenharmony_ci uint64_t inv_lcrc:1; 21662306a36Sopenharmony_ci uint64_t inv_ecrc:1; 21762306a36Sopenharmony_ci uint64_t reserved_2_2:1; 21862306a36Sopenharmony_ci uint64_t ro_ctlp:1; 21962306a36Sopenharmony_ci uint64_t lnk_enb:1; 22062306a36Sopenharmony_ci uint64_t dly_one:1; 22162306a36Sopenharmony_ci uint64_t nf_ecrc:1; 22262306a36Sopenharmony_ci uint64_t reserved_7_8:2; 22362306a36Sopenharmony_ci uint64_t ob_p_cmd:1; 22462306a36Sopenharmony_ci uint64_t pm_xpme:1; 22562306a36Sopenharmony_ci uint64_t pm_xtoff:1; 22662306a36Sopenharmony_ci uint64_t lane_swp:1; 22762306a36Sopenharmony_ci uint64_t qlm_cfg:2; 22862306a36Sopenharmony_ci uint64_t pbus:8; 22962306a36Sopenharmony_ci uint64_t dnum:5; 23062306a36Sopenharmony_ci uint64_t reserved_28_63:36; 23162306a36Sopenharmony_ci#endif 23262306a36Sopenharmony_ci } s; 23362306a36Sopenharmony_ci struct cvmx_pescx_ctl_status_cn56xx { 23462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 23562306a36Sopenharmony_ci uint64_t reserved_28_63:36; 23662306a36Sopenharmony_ci uint64_t dnum:5; 23762306a36Sopenharmony_ci uint64_t pbus:8; 23862306a36Sopenharmony_ci uint64_t qlm_cfg:2; 23962306a36Sopenharmony_ci uint64_t reserved_12_12:1; 24062306a36Sopenharmony_ci uint64_t pm_xtoff:1; 24162306a36Sopenharmony_ci uint64_t pm_xpme:1; 24262306a36Sopenharmony_ci uint64_t ob_p_cmd:1; 24362306a36Sopenharmony_ci uint64_t reserved_7_8:2; 24462306a36Sopenharmony_ci uint64_t nf_ecrc:1; 24562306a36Sopenharmony_ci uint64_t dly_one:1; 24662306a36Sopenharmony_ci uint64_t lnk_enb:1; 24762306a36Sopenharmony_ci uint64_t ro_ctlp:1; 24862306a36Sopenharmony_ci uint64_t reserved_2_2:1; 24962306a36Sopenharmony_ci uint64_t inv_ecrc:1; 25062306a36Sopenharmony_ci uint64_t inv_lcrc:1; 25162306a36Sopenharmony_ci#else 25262306a36Sopenharmony_ci uint64_t inv_lcrc:1; 25362306a36Sopenharmony_ci uint64_t inv_ecrc:1; 25462306a36Sopenharmony_ci uint64_t reserved_2_2:1; 25562306a36Sopenharmony_ci uint64_t ro_ctlp:1; 25662306a36Sopenharmony_ci uint64_t lnk_enb:1; 25762306a36Sopenharmony_ci uint64_t dly_one:1; 25862306a36Sopenharmony_ci uint64_t nf_ecrc:1; 25962306a36Sopenharmony_ci uint64_t reserved_7_8:2; 26062306a36Sopenharmony_ci uint64_t ob_p_cmd:1; 26162306a36Sopenharmony_ci uint64_t pm_xpme:1; 26262306a36Sopenharmony_ci uint64_t pm_xtoff:1; 26362306a36Sopenharmony_ci uint64_t reserved_12_12:1; 26462306a36Sopenharmony_ci uint64_t qlm_cfg:2; 26562306a36Sopenharmony_ci uint64_t pbus:8; 26662306a36Sopenharmony_ci uint64_t dnum:5; 26762306a36Sopenharmony_ci uint64_t reserved_28_63:36; 26862306a36Sopenharmony_ci#endif 26962306a36Sopenharmony_ci } cn56xx; 27062306a36Sopenharmony_ci}; 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ciunion cvmx_pescx_ctl_status2 { 27362306a36Sopenharmony_ci uint64_t u64; 27462306a36Sopenharmony_ci struct cvmx_pescx_ctl_status2_s { 27562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 27662306a36Sopenharmony_ci uint64_t reserved_2_63:62; 27762306a36Sopenharmony_ci uint64_t pclk_run:1; 27862306a36Sopenharmony_ci uint64_t pcierst:1; 27962306a36Sopenharmony_ci#else 28062306a36Sopenharmony_ci uint64_t pcierst:1; 28162306a36Sopenharmony_ci uint64_t pclk_run:1; 28262306a36Sopenharmony_ci uint64_t reserved_2_63:62; 28362306a36Sopenharmony_ci#endif 28462306a36Sopenharmony_ci } s; 28562306a36Sopenharmony_ci struct cvmx_pescx_ctl_status2_cn52xxp1 { 28662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 28762306a36Sopenharmony_ci uint64_t reserved_1_63:63; 28862306a36Sopenharmony_ci uint64_t pcierst:1; 28962306a36Sopenharmony_ci#else 29062306a36Sopenharmony_ci uint64_t pcierst:1; 29162306a36Sopenharmony_ci uint64_t reserved_1_63:63; 29262306a36Sopenharmony_ci#endif 29362306a36Sopenharmony_ci } cn52xxp1; 29462306a36Sopenharmony_ci}; 29562306a36Sopenharmony_ci 29662306a36Sopenharmony_ciunion cvmx_pescx_dbg_info { 29762306a36Sopenharmony_ci uint64_t u64; 29862306a36Sopenharmony_ci struct cvmx_pescx_dbg_info_s { 29962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 30062306a36Sopenharmony_ci uint64_t reserved_31_63:33; 30162306a36Sopenharmony_ci uint64_t ecrc_e:1; 30262306a36Sopenharmony_ci uint64_t rawwpp:1; 30362306a36Sopenharmony_ci uint64_t racpp:1; 30462306a36Sopenharmony_ci uint64_t ramtlp:1; 30562306a36Sopenharmony_ci uint64_t rarwdns:1; 30662306a36Sopenharmony_ci uint64_t caar:1; 30762306a36Sopenharmony_ci uint64_t racca:1; 30862306a36Sopenharmony_ci uint64_t racur:1; 30962306a36Sopenharmony_ci uint64_t rauc:1; 31062306a36Sopenharmony_ci uint64_t rqo:1; 31162306a36Sopenharmony_ci uint64_t fcuv:1; 31262306a36Sopenharmony_ci uint64_t rpe:1; 31362306a36Sopenharmony_ci uint64_t fcpvwt:1; 31462306a36Sopenharmony_ci uint64_t dpeoosd:1; 31562306a36Sopenharmony_ci uint64_t rtwdle:1; 31662306a36Sopenharmony_ci uint64_t rdwdle:1; 31762306a36Sopenharmony_ci uint64_t mre:1; 31862306a36Sopenharmony_ci uint64_t rte:1; 31962306a36Sopenharmony_ci uint64_t acto:1; 32062306a36Sopenharmony_ci uint64_t rvdm:1; 32162306a36Sopenharmony_ci uint64_t rumep:1; 32262306a36Sopenharmony_ci uint64_t rptamrc:1; 32362306a36Sopenharmony_ci uint64_t rpmerc:1; 32462306a36Sopenharmony_ci uint64_t rfemrc:1; 32562306a36Sopenharmony_ci uint64_t rnfemrc:1; 32662306a36Sopenharmony_ci uint64_t rcemrc:1; 32762306a36Sopenharmony_ci uint64_t rpoison:1; 32862306a36Sopenharmony_ci uint64_t recrce:1; 32962306a36Sopenharmony_ci uint64_t rtlplle:1; 33062306a36Sopenharmony_ci uint64_t rtlpmal:1; 33162306a36Sopenharmony_ci uint64_t spoison:1; 33262306a36Sopenharmony_ci#else 33362306a36Sopenharmony_ci uint64_t spoison:1; 33462306a36Sopenharmony_ci uint64_t rtlpmal:1; 33562306a36Sopenharmony_ci uint64_t rtlplle:1; 33662306a36Sopenharmony_ci uint64_t recrce:1; 33762306a36Sopenharmony_ci uint64_t rpoison:1; 33862306a36Sopenharmony_ci uint64_t rcemrc:1; 33962306a36Sopenharmony_ci uint64_t rnfemrc:1; 34062306a36Sopenharmony_ci uint64_t rfemrc:1; 34162306a36Sopenharmony_ci uint64_t rpmerc:1; 34262306a36Sopenharmony_ci uint64_t rptamrc:1; 34362306a36Sopenharmony_ci uint64_t rumep:1; 34462306a36Sopenharmony_ci uint64_t rvdm:1; 34562306a36Sopenharmony_ci uint64_t acto:1; 34662306a36Sopenharmony_ci uint64_t rte:1; 34762306a36Sopenharmony_ci uint64_t mre:1; 34862306a36Sopenharmony_ci uint64_t rdwdle:1; 34962306a36Sopenharmony_ci uint64_t rtwdle:1; 35062306a36Sopenharmony_ci uint64_t dpeoosd:1; 35162306a36Sopenharmony_ci uint64_t fcpvwt:1; 35262306a36Sopenharmony_ci uint64_t rpe:1; 35362306a36Sopenharmony_ci uint64_t fcuv:1; 35462306a36Sopenharmony_ci uint64_t rqo:1; 35562306a36Sopenharmony_ci uint64_t rauc:1; 35662306a36Sopenharmony_ci uint64_t racur:1; 35762306a36Sopenharmony_ci uint64_t racca:1; 35862306a36Sopenharmony_ci uint64_t caar:1; 35962306a36Sopenharmony_ci uint64_t rarwdns:1; 36062306a36Sopenharmony_ci uint64_t ramtlp:1; 36162306a36Sopenharmony_ci uint64_t racpp:1; 36262306a36Sopenharmony_ci uint64_t rawwpp:1; 36362306a36Sopenharmony_ci uint64_t ecrc_e:1; 36462306a36Sopenharmony_ci uint64_t reserved_31_63:33; 36562306a36Sopenharmony_ci#endif 36662306a36Sopenharmony_ci } s; 36762306a36Sopenharmony_ci}; 36862306a36Sopenharmony_ci 36962306a36Sopenharmony_ciunion cvmx_pescx_dbg_info_en { 37062306a36Sopenharmony_ci uint64_t u64; 37162306a36Sopenharmony_ci struct cvmx_pescx_dbg_info_en_s { 37262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 37362306a36Sopenharmony_ci uint64_t reserved_31_63:33; 37462306a36Sopenharmony_ci uint64_t ecrc_e:1; 37562306a36Sopenharmony_ci uint64_t rawwpp:1; 37662306a36Sopenharmony_ci uint64_t racpp:1; 37762306a36Sopenharmony_ci uint64_t ramtlp:1; 37862306a36Sopenharmony_ci uint64_t rarwdns:1; 37962306a36Sopenharmony_ci uint64_t caar:1; 38062306a36Sopenharmony_ci uint64_t racca:1; 38162306a36Sopenharmony_ci uint64_t racur:1; 38262306a36Sopenharmony_ci uint64_t rauc:1; 38362306a36Sopenharmony_ci uint64_t rqo:1; 38462306a36Sopenharmony_ci uint64_t fcuv:1; 38562306a36Sopenharmony_ci uint64_t rpe:1; 38662306a36Sopenharmony_ci uint64_t fcpvwt:1; 38762306a36Sopenharmony_ci uint64_t dpeoosd:1; 38862306a36Sopenharmony_ci uint64_t rtwdle:1; 38962306a36Sopenharmony_ci uint64_t rdwdle:1; 39062306a36Sopenharmony_ci uint64_t mre:1; 39162306a36Sopenharmony_ci uint64_t rte:1; 39262306a36Sopenharmony_ci uint64_t acto:1; 39362306a36Sopenharmony_ci uint64_t rvdm:1; 39462306a36Sopenharmony_ci uint64_t rumep:1; 39562306a36Sopenharmony_ci uint64_t rptamrc:1; 39662306a36Sopenharmony_ci uint64_t rpmerc:1; 39762306a36Sopenharmony_ci uint64_t rfemrc:1; 39862306a36Sopenharmony_ci uint64_t rnfemrc:1; 39962306a36Sopenharmony_ci uint64_t rcemrc:1; 40062306a36Sopenharmony_ci uint64_t rpoison:1; 40162306a36Sopenharmony_ci uint64_t recrce:1; 40262306a36Sopenharmony_ci uint64_t rtlplle:1; 40362306a36Sopenharmony_ci uint64_t rtlpmal:1; 40462306a36Sopenharmony_ci uint64_t spoison:1; 40562306a36Sopenharmony_ci#else 40662306a36Sopenharmony_ci uint64_t spoison:1; 40762306a36Sopenharmony_ci uint64_t rtlpmal:1; 40862306a36Sopenharmony_ci uint64_t rtlplle:1; 40962306a36Sopenharmony_ci uint64_t recrce:1; 41062306a36Sopenharmony_ci uint64_t rpoison:1; 41162306a36Sopenharmony_ci uint64_t rcemrc:1; 41262306a36Sopenharmony_ci uint64_t rnfemrc:1; 41362306a36Sopenharmony_ci uint64_t rfemrc:1; 41462306a36Sopenharmony_ci uint64_t rpmerc:1; 41562306a36Sopenharmony_ci uint64_t rptamrc:1; 41662306a36Sopenharmony_ci uint64_t rumep:1; 41762306a36Sopenharmony_ci uint64_t rvdm:1; 41862306a36Sopenharmony_ci uint64_t acto:1; 41962306a36Sopenharmony_ci uint64_t rte:1; 42062306a36Sopenharmony_ci uint64_t mre:1; 42162306a36Sopenharmony_ci uint64_t rdwdle:1; 42262306a36Sopenharmony_ci uint64_t rtwdle:1; 42362306a36Sopenharmony_ci uint64_t dpeoosd:1; 42462306a36Sopenharmony_ci uint64_t fcpvwt:1; 42562306a36Sopenharmony_ci uint64_t rpe:1; 42662306a36Sopenharmony_ci uint64_t fcuv:1; 42762306a36Sopenharmony_ci uint64_t rqo:1; 42862306a36Sopenharmony_ci uint64_t rauc:1; 42962306a36Sopenharmony_ci uint64_t racur:1; 43062306a36Sopenharmony_ci uint64_t racca:1; 43162306a36Sopenharmony_ci uint64_t caar:1; 43262306a36Sopenharmony_ci uint64_t rarwdns:1; 43362306a36Sopenharmony_ci uint64_t ramtlp:1; 43462306a36Sopenharmony_ci uint64_t racpp:1; 43562306a36Sopenharmony_ci uint64_t rawwpp:1; 43662306a36Sopenharmony_ci uint64_t ecrc_e:1; 43762306a36Sopenharmony_ci uint64_t reserved_31_63:33; 43862306a36Sopenharmony_ci#endif 43962306a36Sopenharmony_ci } s; 44062306a36Sopenharmony_ci}; 44162306a36Sopenharmony_ci 44262306a36Sopenharmony_ciunion cvmx_pescx_diag_status { 44362306a36Sopenharmony_ci uint64_t u64; 44462306a36Sopenharmony_ci struct cvmx_pescx_diag_status_s { 44562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 44662306a36Sopenharmony_ci uint64_t reserved_4_63:60; 44762306a36Sopenharmony_ci uint64_t pm_dst:1; 44862306a36Sopenharmony_ci uint64_t pm_stat:1; 44962306a36Sopenharmony_ci uint64_t pm_en:1; 45062306a36Sopenharmony_ci uint64_t aux_en:1; 45162306a36Sopenharmony_ci#else 45262306a36Sopenharmony_ci uint64_t aux_en:1; 45362306a36Sopenharmony_ci uint64_t pm_en:1; 45462306a36Sopenharmony_ci uint64_t pm_stat:1; 45562306a36Sopenharmony_ci uint64_t pm_dst:1; 45662306a36Sopenharmony_ci uint64_t reserved_4_63:60; 45762306a36Sopenharmony_ci#endif 45862306a36Sopenharmony_ci } s; 45962306a36Sopenharmony_ci}; 46062306a36Sopenharmony_ci 46162306a36Sopenharmony_ciunion cvmx_pescx_p2n_bar0_start { 46262306a36Sopenharmony_ci uint64_t u64; 46362306a36Sopenharmony_ci struct cvmx_pescx_p2n_bar0_start_s { 46462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 46562306a36Sopenharmony_ci uint64_t addr:50; 46662306a36Sopenharmony_ci uint64_t reserved_0_13:14; 46762306a36Sopenharmony_ci#else 46862306a36Sopenharmony_ci uint64_t reserved_0_13:14; 46962306a36Sopenharmony_ci uint64_t addr:50; 47062306a36Sopenharmony_ci#endif 47162306a36Sopenharmony_ci } s; 47262306a36Sopenharmony_ci}; 47362306a36Sopenharmony_ci 47462306a36Sopenharmony_ciunion cvmx_pescx_p2n_bar1_start { 47562306a36Sopenharmony_ci uint64_t u64; 47662306a36Sopenharmony_ci struct cvmx_pescx_p2n_bar1_start_s { 47762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 47862306a36Sopenharmony_ci uint64_t addr:38; 47962306a36Sopenharmony_ci uint64_t reserved_0_25:26; 48062306a36Sopenharmony_ci#else 48162306a36Sopenharmony_ci uint64_t reserved_0_25:26; 48262306a36Sopenharmony_ci uint64_t addr:38; 48362306a36Sopenharmony_ci#endif 48462306a36Sopenharmony_ci } s; 48562306a36Sopenharmony_ci}; 48662306a36Sopenharmony_ci 48762306a36Sopenharmony_ciunion cvmx_pescx_p2n_bar2_start { 48862306a36Sopenharmony_ci uint64_t u64; 48962306a36Sopenharmony_ci struct cvmx_pescx_p2n_bar2_start_s { 49062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 49162306a36Sopenharmony_ci uint64_t addr:25; 49262306a36Sopenharmony_ci uint64_t reserved_0_38:39; 49362306a36Sopenharmony_ci#else 49462306a36Sopenharmony_ci uint64_t reserved_0_38:39; 49562306a36Sopenharmony_ci uint64_t addr:25; 49662306a36Sopenharmony_ci#endif 49762306a36Sopenharmony_ci } s; 49862306a36Sopenharmony_ci}; 49962306a36Sopenharmony_ci 50062306a36Sopenharmony_ciunion cvmx_pescx_p2p_barx_end { 50162306a36Sopenharmony_ci uint64_t u64; 50262306a36Sopenharmony_ci struct cvmx_pescx_p2p_barx_end_s { 50362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 50462306a36Sopenharmony_ci uint64_t addr:52; 50562306a36Sopenharmony_ci uint64_t reserved_0_11:12; 50662306a36Sopenharmony_ci#else 50762306a36Sopenharmony_ci uint64_t reserved_0_11:12; 50862306a36Sopenharmony_ci uint64_t addr:52; 50962306a36Sopenharmony_ci#endif 51062306a36Sopenharmony_ci } s; 51162306a36Sopenharmony_ci}; 51262306a36Sopenharmony_ci 51362306a36Sopenharmony_ciunion cvmx_pescx_p2p_barx_start { 51462306a36Sopenharmony_ci uint64_t u64; 51562306a36Sopenharmony_ci struct cvmx_pescx_p2p_barx_start_s { 51662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 51762306a36Sopenharmony_ci uint64_t addr:52; 51862306a36Sopenharmony_ci uint64_t reserved_0_11:12; 51962306a36Sopenharmony_ci#else 52062306a36Sopenharmony_ci uint64_t reserved_0_11:12; 52162306a36Sopenharmony_ci uint64_t addr:52; 52262306a36Sopenharmony_ci#endif 52362306a36Sopenharmony_ci } s; 52462306a36Sopenharmony_ci}; 52562306a36Sopenharmony_ci 52662306a36Sopenharmony_ciunion cvmx_pescx_tlp_credits { 52762306a36Sopenharmony_ci uint64_t u64; 52862306a36Sopenharmony_ci struct cvmx_pescx_tlp_credits_s { 52962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 53062306a36Sopenharmony_ci uint64_t reserved_0_63:64; 53162306a36Sopenharmony_ci#else 53262306a36Sopenharmony_ci uint64_t reserved_0_63:64; 53362306a36Sopenharmony_ci#endif 53462306a36Sopenharmony_ci } s; 53562306a36Sopenharmony_ci struct cvmx_pescx_tlp_credits_cn52xx { 53662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 53762306a36Sopenharmony_ci uint64_t reserved_56_63:8; 53862306a36Sopenharmony_ci uint64_t peai_ppf:8; 53962306a36Sopenharmony_ci uint64_t pesc_cpl:8; 54062306a36Sopenharmony_ci uint64_t pesc_np:8; 54162306a36Sopenharmony_ci uint64_t pesc_p:8; 54262306a36Sopenharmony_ci uint64_t npei_cpl:8; 54362306a36Sopenharmony_ci uint64_t npei_np:8; 54462306a36Sopenharmony_ci uint64_t npei_p:8; 54562306a36Sopenharmony_ci#else 54662306a36Sopenharmony_ci uint64_t npei_p:8; 54762306a36Sopenharmony_ci uint64_t npei_np:8; 54862306a36Sopenharmony_ci uint64_t npei_cpl:8; 54962306a36Sopenharmony_ci uint64_t pesc_p:8; 55062306a36Sopenharmony_ci uint64_t pesc_np:8; 55162306a36Sopenharmony_ci uint64_t pesc_cpl:8; 55262306a36Sopenharmony_ci uint64_t peai_ppf:8; 55362306a36Sopenharmony_ci uint64_t reserved_56_63:8; 55462306a36Sopenharmony_ci#endif 55562306a36Sopenharmony_ci } cn52xx; 55662306a36Sopenharmony_ci struct cvmx_pescx_tlp_credits_cn52xxp1 { 55762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 55862306a36Sopenharmony_ci uint64_t reserved_38_63:26; 55962306a36Sopenharmony_ci uint64_t peai_ppf:8; 56062306a36Sopenharmony_ci uint64_t pesc_cpl:5; 56162306a36Sopenharmony_ci uint64_t pesc_np:5; 56262306a36Sopenharmony_ci uint64_t pesc_p:5; 56362306a36Sopenharmony_ci uint64_t npei_cpl:5; 56462306a36Sopenharmony_ci uint64_t npei_np:5; 56562306a36Sopenharmony_ci uint64_t npei_p:5; 56662306a36Sopenharmony_ci#else 56762306a36Sopenharmony_ci uint64_t npei_p:5; 56862306a36Sopenharmony_ci uint64_t npei_np:5; 56962306a36Sopenharmony_ci uint64_t npei_cpl:5; 57062306a36Sopenharmony_ci uint64_t pesc_p:5; 57162306a36Sopenharmony_ci uint64_t pesc_np:5; 57262306a36Sopenharmony_ci uint64_t pesc_cpl:5; 57362306a36Sopenharmony_ci uint64_t peai_ppf:8; 57462306a36Sopenharmony_ci uint64_t reserved_38_63:26; 57562306a36Sopenharmony_ci#endif 57662306a36Sopenharmony_ci } cn52xxp1; 57762306a36Sopenharmony_ci}; 57862306a36Sopenharmony_ci 57962306a36Sopenharmony_ci#endif 580