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-2018 Cavium, Inc. 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_ASXX_DEFS_H__ 2962306a36Sopenharmony_ci#define __CVMX_ASXX_DEFS_H__ 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#define CVMX_ASXX_GMII_RX_CLK_SET(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000180ull)) 3262306a36Sopenharmony_ci#define CVMX_ASXX_GMII_RX_DAT_SET(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000188ull)) 3362306a36Sopenharmony_ci#define CVMX_ASXX_INT_EN(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000018ull) + ((block_id) & 1) * 0x8000000ull) 3462306a36Sopenharmony_ci#define CVMX_ASXX_INT_REG(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000010ull) + ((block_id) & 1) * 0x8000000ull) 3562306a36Sopenharmony_ci#define CVMX_ASXX_MII_RX_DAT_SET(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000190ull)) 3662306a36Sopenharmony_ci#define CVMX_ASXX_PRT_LOOP(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000040ull) + ((block_id) & 1) * 0x8000000ull) 3762306a36Sopenharmony_ci#define CVMX_ASXX_RLD_BYPASS(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000248ull) + ((block_id) & 1) * 0x8000000ull) 3862306a36Sopenharmony_ci#define CVMX_ASXX_RLD_BYPASS_SETTING(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000250ull) + ((block_id) & 1) * 0x8000000ull) 3962306a36Sopenharmony_ci#define CVMX_ASXX_RLD_COMP(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000220ull) + ((block_id) & 1) * 0x8000000ull) 4062306a36Sopenharmony_ci#define CVMX_ASXX_RLD_DATA_DRV(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000218ull) + ((block_id) & 1) * 0x8000000ull) 4162306a36Sopenharmony_ci#define CVMX_ASXX_RLD_FCRAM_MODE(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000210ull) + ((block_id) & 1) * 0x8000000ull) 4262306a36Sopenharmony_ci#define CVMX_ASXX_RLD_NCTL_STRONG(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000230ull) + ((block_id) & 1) * 0x8000000ull) 4362306a36Sopenharmony_ci#define CVMX_ASXX_RLD_NCTL_WEAK(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000240ull) + ((block_id) & 1) * 0x8000000ull) 4462306a36Sopenharmony_ci#define CVMX_ASXX_RLD_PCTL_STRONG(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000228ull) + ((block_id) & 1) * 0x8000000ull) 4562306a36Sopenharmony_ci#define CVMX_ASXX_RLD_PCTL_WEAK(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000238ull) + ((block_id) & 1) * 0x8000000ull) 4662306a36Sopenharmony_ci#define CVMX_ASXX_RLD_SETTING(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000258ull) + ((block_id) & 1) * 0x8000000ull) 4762306a36Sopenharmony_ci#define CVMX_ASXX_RX_CLK_SETX(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800B0000020ull) + (((offset) & 3) + ((block_id) & 1) * 0x1000000ull) * 8) 4862306a36Sopenharmony_ci#define CVMX_ASXX_RX_PRT_EN(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000000ull) + ((block_id) & 1) * 0x8000000ull) 4962306a36Sopenharmony_ci#define CVMX_ASXX_RX_WOL(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000100ull) + ((block_id) & 1) * 0x8000000ull) 5062306a36Sopenharmony_ci#define CVMX_ASXX_RX_WOL_MSK(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000108ull) + ((block_id) & 1) * 0x8000000ull) 5162306a36Sopenharmony_ci#define CVMX_ASXX_RX_WOL_POWOK(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000118ull) + ((block_id) & 1) * 0x8000000ull) 5262306a36Sopenharmony_ci#define CVMX_ASXX_RX_WOL_SIG(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000110ull) + ((block_id) & 1) * 0x8000000ull) 5362306a36Sopenharmony_ci#define CVMX_ASXX_TX_CLK_SETX(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800B0000048ull) + (((offset) & 3) + ((block_id) & 1) * 0x1000000ull) * 8) 5462306a36Sopenharmony_ci#define CVMX_ASXX_TX_COMP_BYP(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000068ull) + ((block_id) & 1) * 0x8000000ull) 5562306a36Sopenharmony_ci#define CVMX_ASXX_TX_HI_WATERX(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800B0000080ull) + (((offset) & 3) + ((block_id) & 1) * 0x1000000ull) * 8) 5662306a36Sopenharmony_ci#define CVMX_ASXX_TX_PRT_EN(block_id) (CVMX_ADD_IO_SEG(0x00011800B0000008ull) + ((block_id) & 1) * 0x8000000ull) 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_civoid __cvmx_interrupt_asxx_enable(int block); 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ciunion cvmx_asxx_gmii_rx_clk_set { 6162306a36Sopenharmony_ci uint64_t u64; 6262306a36Sopenharmony_ci struct cvmx_asxx_gmii_rx_clk_set_s { 6362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 6462306a36Sopenharmony_ci uint64_t reserved_5_63:59; 6562306a36Sopenharmony_ci uint64_t setting:5; 6662306a36Sopenharmony_ci#else 6762306a36Sopenharmony_ci uint64_t setting:5; 6862306a36Sopenharmony_ci uint64_t reserved_5_63:59; 6962306a36Sopenharmony_ci#endif 7062306a36Sopenharmony_ci } s; 7162306a36Sopenharmony_ci}; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ciunion cvmx_asxx_gmii_rx_dat_set { 7462306a36Sopenharmony_ci uint64_t u64; 7562306a36Sopenharmony_ci struct cvmx_asxx_gmii_rx_dat_set_s { 7662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 7762306a36Sopenharmony_ci uint64_t reserved_5_63:59; 7862306a36Sopenharmony_ci uint64_t setting:5; 7962306a36Sopenharmony_ci#else 8062306a36Sopenharmony_ci uint64_t setting:5; 8162306a36Sopenharmony_ci uint64_t reserved_5_63:59; 8262306a36Sopenharmony_ci#endif 8362306a36Sopenharmony_ci } s; 8462306a36Sopenharmony_ci}; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ciunion cvmx_asxx_int_en { 8762306a36Sopenharmony_ci uint64_t u64; 8862306a36Sopenharmony_ci struct cvmx_asxx_int_en_s { 8962306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 9062306a36Sopenharmony_ci uint64_t reserved_12_63:52; 9162306a36Sopenharmony_ci uint64_t txpsh:4; 9262306a36Sopenharmony_ci uint64_t txpop:4; 9362306a36Sopenharmony_ci uint64_t ovrflw:4; 9462306a36Sopenharmony_ci#else 9562306a36Sopenharmony_ci uint64_t ovrflw:4; 9662306a36Sopenharmony_ci uint64_t txpop:4; 9762306a36Sopenharmony_ci uint64_t txpsh:4; 9862306a36Sopenharmony_ci uint64_t reserved_12_63:52; 9962306a36Sopenharmony_ci#endif 10062306a36Sopenharmony_ci } s; 10162306a36Sopenharmony_ci struct cvmx_asxx_int_en_cn30xx { 10262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 10362306a36Sopenharmony_ci uint64_t reserved_11_63:53; 10462306a36Sopenharmony_ci uint64_t txpsh:3; 10562306a36Sopenharmony_ci uint64_t reserved_7_7:1; 10662306a36Sopenharmony_ci uint64_t txpop:3; 10762306a36Sopenharmony_ci uint64_t reserved_3_3:1; 10862306a36Sopenharmony_ci uint64_t ovrflw:3; 10962306a36Sopenharmony_ci#else 11062306a36Sopenharmony_ci uint64_t ovrflw:3; 11162306a36Sopenharmony_ci uint64_t reserved_3_3:1; 11262306a36Sopenharmony_ci uint64_t txpop:3; 11362306a36Sopenharmony_ci uint64_t reserved_7_7:1; 11462306a36Sopenharmony_ci uint64_t txpsh:3; 11562306a36Sopenharmony_ci uint64_t reserved_11_63:53; 11662306a36Sopenharmony_ci#endif 11762306a36Sopenharmony_ci } cn30xx; 11862306a36Sopenharmony_ci}; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ciunion cvmx_asxx_int_reg { 12162306a36Sopenharmony_ci uint64_t u64; 12262306a36Sopenharmony_ci struct cvmx_asxx_int_reg_s { 12362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 12462306a36Sopenharmony_ci uint64_t reserved_12_63:52; 12562306a36Sopenharmony_ci uint64_t txpsh:4; 12662306a36Sopenharmony_ci uint64_t txpop:4; 12762306a36Sopenharmony_ci uint64_t ovrflw:4; 12862306a36Sopenharmony_ci#else 12962306a36Sopenharmony_ci uint64_t ovrflw:4; 13062306a36Sopenharmony_ci uint64_t txpop:4; 13162306a36Sopenharmony_ci uint64_t txpsh:4; 13262306a36Sopenharmony_ci uint64_t reserved_12_63:52; 13362306a36Sopenharmony_ci#endif 13462306a36Sopenharmony_ci } s; 13562306a36Sopenharmony_ci struct cvmx_asxx_int_reg_cn30xx { 13662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 13762306a36Sopenharmony_ci uint64_t reserved_11_63:53; 13862306a36Sopenharmony_ci uint64_t txpsh:3; 13962306a36Sopenharmony_ci uint64_t reserved_7_7:1; 14062306a36Sopenharmony_ci uint64_t txpop:3; 14162306a36Sopenharmony_ci uint64_t reserved_3_3:1; 14262306a36Sopenharmony_ci uint64_t ovrflw:3; 14362306a36Sopenharmony_ci#else 14462306a36Sopenharmony_ci uint64_t ovrflw:3; 14562306a36Sopenharmony_ci uint64_t reserved_3_3:1; 14662306a36Sopenharmony_ci uint64_t txpop:3; 14762306a36Sopenharmony_ci uint64_t reserved_7_7:1; 14862306a36Sopenharmony_ci uint64_t txpsh:3; 14962306a36Sopenharmony_ci uint64_t reserved_11_63:53; 15062306a36Sopenharmony_ci#endif 15162306a36Sopenharmony_ci } cn30xx; 15262306a36Sopenharmony_ci}; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ciunion cvmx_asxx_mii_rx_dat_set { 15562306a36Sopenharmony_ci uint64_t u64; 15662306a36Sopenharmony_ci struct cvmx_asxx_mii_rx_dat_set_s { 15762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 15862306a36Sopenharmony_ci uint64_t reserved_5_63:59; 15962306a36Sopenharmony_ci uint64_t setting:5; 16062306a36Sopenharmony_ci#else 16162306a36Sopenharmony_ci uint64_t setting:5; 16262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 16362306a36Sopenharmony_ci#endif 16462306a36Sopenharmony_ci } s; 16562306a36Sopenharmony_ci}; 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ciunion cvmx_asxx_prt_loop { 16862306a36Sopenharmony_ci uint64_t u64; 16962306a36Sopenharmony_ci struct cvmx_asxx_prt_loop_s { 17062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 17162306a36Sopenharmony_ci uint64_t reserved_8_63:56; 17262306a36Sopenharmony_ci uint64_t ext_loop:4; 17362306a36Sopenharmony_ci uint64_t int_loop:4; 17462306a36Sopenharmony_ci#else 17562306a36Sopenharmony_ci uint64_t int_loop:4; 17662306a36Sopenharmony_ci uint64_t ext_loop:4; 17762306a36Sopenharmony_ci uint64_t reserved_8_63:56; 17862306a36Sopenharmony_ci#endif 17962306a36Sopenharmony_ci } s; 18062306a36Sopenharmony_ci struct cvmx_asxx_prt_loop_cn30xx { 18162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 18262306a36Sopenharmony_ci uint64_t reserved_7_63:57; 18362306a36Sopenharmony_ci uint64_t ext_loop:3; 18462306a36Sopenharmony_ci uint64_t reserved_3_3:1; 18562306a36Sopenharmony_ci uint64_t int_loop:3; 18662306a36Sopenharmony_ci#else 18762306a36Sopenharmony_ci uint64_t int_loop:3; 18862306a36Sopenharmony_ci uint64_t reserved_3_3:1; 18962306a36Sopenharmony_ci uint64_t ext_loop:3; 19062306a36Sopenharmony_ci uint64_t reserved_7_63:57; 19162306a36Sopenharmony_ci#endif 19262306a36Sopenharmony_ci } cn30xx; 19362306a36Sopenharmony_ci}; 19462306a36Sopenharmony_ci 19562306a36Sopenharmony_ciunion cvmx_asxx_rld_bypass { 19662306a36Sopenharmony_ci uint64_t u64; 19762306a36Sopenharmony_ci struct cvmx_asxx_rld_bypass_s { 19862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 19962306a36Sopenharmony_ci uint64_t reserved_1_63:63; 20062306a36Sopenharmony_ci uint64_t bypass:1; 20162306a36Sopenharmony_ci#else 20262306a36Sopenharmony_ci uint64_t bypass:1; 20362306a36Sopenharmony_ci uint64_t reserved_1_63:63; 20462306a36Sopenharmony_ci#endif 20562306a36Sopenharmony_ci } s; 20662306a36Sopenharmony_ci}; 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ciunion cvmx_asxx_rld_bypass_setting { 20962306a36Sopenharmony_ci uint64_t u64; 21062306a36Sopenharmony_ci struct cvmx_asxx_rld_bypass_setting_s { 21162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 21262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 21362306a36Sopenharmony_ci uint64_t setting:5; 21462306a36Sopenharmony_ci#else 21562306a36Sopenharmony_ci uint64_t setting:5; 21662306a36Sopenharmony_ci uint64_t reserved_5_63:59; 21762306a36Sopenharmony_ci#endif 21862306a36Sopenharmony_ci } s; 21962306a36Sopenharmony_ci}; 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ciunion cvmx_asxx_rld_comp { 22262306a36Sopenharmony_ci uint64_t u64; 22362306a36Sopenharmony_ci struct cvmx_asxx_rld_comp_s { 22462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 22562306a36Sopenharmony_ci uint64_t reserved_9_63:55; 22662306a36Sopenharmony_ci uint64_t pctl:5; 22762306a36Sopenharmony_ci uint64_t nctl:4; 22862306a36Sopenharmony_ci#else 22962306a36Sopenharmony_ci uint64_t nctl:4; 23062306a36Sopenharmony_ci uint64_t pctl:5; 23162306a36Sopenharmony_ci uint64_t reserved_9_63:55; 23262306a36Sopenharmony_ci#endif 23362306a36Sopenharmony_ci } s; 23462306a36Sopenharmony_ci struct cvmx_asxx_rld_comp_cn38xx { 23562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 23662306a36Sopenharmony_ci uint64_t reserved_8_63:56; 23762306a36Sopenharmony_ci uint64_t pctl:4; 23862306a36Sopenharmony_ci uint64_t nctl:4; 23962306a36Sopenharmony_ci#else 24062306a36Sopenharmony_ci uint64_t nctl:4; 24162306a36Sopenharmony_ci uint64_t pctl:4; 24262306a36Sopenharmony_ci uint64_t reserved_8_63:56; 24362306a36Sopenharmony_ci#endif 24462306a36Sopenharmony_ci } cn38xx; 24562306a36Sopenharmony_ci}; 24662306a36Sopenharmony_ci 24762306a36Sopenharmony_ciunion cvmx_asxx_rld_data_drv { 24862306a36Sopenharmony_ci uint64_t u64; 24962306a36Sopenharmony_ci struct cvmx_asxx_rld_data_drv_s { 25062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 25162306a36Sopenharmony_ci uint64_t reserved_8_63:56; 25262306a36Sopenharmony_ci uint64_t pctl:4; 25362306a36Sopenharmony_ci uint64_t nctl:4; 25462306a36Sopenharmony_ci#else 25562306a36Sopenharmony_ci uint64_t nctl:4; 25662306a36Sopenharmony_ci uint64_t pctl:4; 25762306a36Sopenharmony_ci uint64_t reserved_8_63:56; 25862306a36Sopenharmony_ci#endif 25962306a36Sopenharmony_ci } s; 26062306a36Sopenharmony_ci}; 26162306a36Sopenharmony_ci 26262306a36Sopenharmony_ciunion cvmx_asxx_rld_fcram_mode { 26362306a36Sopenharmony_ci uint64_t u64; 26462306a36Sopenharmony_ci struct cvmx_asxx_rld_fcram_mode_s { 26562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 26662306a36Sopenharmony_ci uint64_t reserved_1_63:63; 26762306a36Sopenharmony_ci uint64_t mode:1; 26862306a36Sopenharmony_ci#else 26962306a36Sopenharmony_ci uint64_t mode:1; 27062306a36Sopenharmony_ci uint64_t reserved_1_63:63; 27162306a36Sopenharmony_ci#endif 27262306a36Sopenharmony_ci } s; 27362306a36Sopenharmony_ci}; 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_ciunion cvmx_asxx_rld_nctl_strong { 27662306a36Sopenharmony_ci uint64_t u64; 27762306a36Sopenharmony_ci struct cvmx_asxx_rld_nctl_strong_s { 27862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 27962306a36Sopenharmony_ci uint64_t reserved_5_63:59; 28062306a36Sopenharmony_ci uint64_t nctl:5; 28162306a36Sopenharmony_ci#else 28262306a36Sopenharmony_ci uint64_t nctl:5; 28362306a36Sopenharmony_ci uint64_t reserved_5_63:59; 28462306a36Sopenharmony_ci#endif 28562306a36Sopenharmony_ci } s; 28662306a36Sopenharmony_ci}; 28762306a36Sopenharmony_ci 28862306a36Sopenharmony_ciunion cvmx_asxx_rld_nctl_weak { 28962306a36Sopenharmony_ci uint64_t u64; 29062306a36Sopenharmony_ci struct cvmx_asxx_rld_nctl_weak_s { 29162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 29262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 29362306a36Sopenharmony_ci uint64_t nctl:5; 29462306a36Sopenharmony_ci#else 29562306a36Sopenharmony_ci uint64_t nctl:5; 29662306a36Sopenharmony_ci uint64_t reserved_5_63:59; 29762306a36Sopenharmony_ci#endif 29862306a36Sopenharmony_ci } s; 29962306a36Sopenharmony_ci}; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ciunion cvmx_asxx_rld_pctl_strong { 30262306a36Sopenharmony_ci uint64_t u64; 30362306a36Sopenharmony_ci struct cvmx_asxx_rld_pctl_strong_s { 30462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 30562306a36Sopenharmony_ci uint64_t reserved_5_63:59; 30662306a36Sopenharmony_ci uint64_t pctl:5; 30762306a36Sopenharmony_ci#else 30862306a36Sopenharmony_ci uint64_t pctl:5; 30962306a36Sopenharmony_ci uint64_t reserved_5_63:59; 31062306a36Sopenharmony_ci#endif 31162306a36Sopenharmony_ci } s; 31262306a36Sopenharmony_ci}; 31362306a36Sopenharmony_ci 31462306a36Sopenharmony_ciunion cvmx_asxx_rld_pctl_weak { 31562306a36Sopenharmony_ci uint64_t u64; 31662306a36Sopenharmony_ci struct cvmx_asxx_rld_pctl_weak_s { 31762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 31862306a36Sopenharmony_ci uint64_t reserved_5_63:59; 31962306a36Sopenharmony_ci uint64_t pctl:5; 32062306a36Sopenharmony_ci#else 32162306a36Sopenharmony_ci uint64_t pctl:5; 32262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 32362306a36Sopenharmony_ci#endif 32462306a36Sopenharmony_ci } s; 32562306a36Sopenharmony_ci}; 32662306a36Sopenharmony_ci 32762306a36Sopenharmony_ciunion cvmx_asxx_rld_setting { 32862306a36Sopenharmony_ci uint64_t u64; 32962306a36Sopenharmony_ci struct cvmx_asxx_rld_setting_s { 33062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 33162306a36Sopenharmony_ci uint64_t reserved_13_63:51; 33262306a36Sopenharmony_ci uint64_t dfaset:5; 33362306a36Sopenharmony_ci uint64_t dfalag:1; 33462306a36Sopenharmony_ci uint64_t dfalead:1; 33562306a36Sopenharmony_ci uint64_t dfalock:1; 33662306a36Sopenharmony_ci uint64_t setting:5; 33762306a36Sopenharmony_ci#else 33862306a36Sopenharmony_ci uint64_t setting:5; 33962306a36Sopenharmony_ci uint64_t dfalock:1; 34062306a36Sopenharmony_ci uint64_t dfalead:1; 34162306a36Sopenharmony_ci uint64_t dfalag:1; 34262306a36Sopenharmony_ci uint64_t dfaset:5; 34362306a36Sopenharmony_ci uint64_t reserved_13_63:51; 34462306a36Sopenharmony_ci#endif 34562306a36Sopenharmony_ci } s; 34662306a36Sopenharmony_ci struct cvmx_asxx_rld_setting_cn38xx { 34762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 34862306a36Sopenharmony_ci uint64_t reserved_5_63:59; 34962306a36Sopenharmony_ci uint64_t setting:5; 35062306a36Sopenharmony_ci#else 35162306a36Sopenharmony_ci uint64_t setting:5; 35262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 35362306a36Sopenharmony_ci#endif 35462306a36Sopenharmony_ci } cn38xx; 35562306a36Sopenharmony_ci}; 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ciunion cvmx_asxx_rx_clk_setx { 35862306a36Sopenharmony_ci uint64_t u64; 35962306a36Sopenharmony_ci struct cvmx_asxx_rx_clk_setx_s { 36062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 36162306a36Sopenharmony_ci uint64_t reserved_5_63:59; 36262306a36Sopenharmony_ci uint64_t setting:5; 36362306a36Sopenharmony_ci#else 36462306a36Sopenharmony_ci uint64_t setting:5; 36562306a36Sopenharmony_ci uint64_t reserved_5_63:59; 36662306a36Sopenharmony_ci#endif 36762306a36Sopenharmony_ci } s; 36862306a36Sopenharmony_ci}; 36962306a36Sopenharmony_ci 37062306a36Sopenharmony_ciunion cvmx_asxx_rx_prt_en { 37162306a36Sopenharmony_ci uint64_t u64; 37262306a36Sopenharmony_ci struct cvmx_asxx_rx_prt_en_s { 37362306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 37462306a36Sopenharmony_ci uint64_t reserved_4_63:60; 37562306a36Sopenharmony_ci uint64_t prt_en:4; 37662306a36Sopenharmony_ci#else 37762306a36Sopenharmony_ci uint64_t prt_en:4; 37862306a36Sopenharmony_ci uint64_t reserved_4_63:60; 37962306a36Sopenharmony_ci#endif 38062306a36Sopenharmony_ci } s; 38162306a36Sopenharmony_ci struct cvmx_asxx_rx_prt_en_cn30xx { 38262306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 38362306a36Sopenharmony_ci uint64_t reserved_3_63:61; 38462306a36Sopenharmony_ci uint64_t prt_en:3; 38562306a36Sopenharmony_ci#else 38662306a36Sopenharmony_ci uint64_t prt_en:3; 38762306a36Sopenharmony_ci uint64_t reserved_3_63:61; 38862306a36Sopenharmony_ci#endif 38962306a36Sopenharmony_ci } cn30xx; 39062306a36Sopenharmony_ci}; 39162306a36Sopenharmony_ci 39262306a36Sopenharmony_ciunion cvmx_asxx_rx_wol { 39362306a36Sopenharmony_ci uint64_t u64; 39462306a36Sopenharmony_ci struct cvmx_asxx_rx_wol_s { 39562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 39662306a36Sopenharmony_ci uint64_t reserved_2_63:62; 39762306a36Sopenharmony_ci uint64_t status:1; 39862306a36Sopenharmony_ci uint64_t enable:1; 39962306a36Sopenharmony_ci#else 40062306a36Sopenharmony_ci uint64_t enable:1; 40162306a36Sopenharmony_ci uint64_t status:1; 40262306a36Sopenharmony_ci uint64_t reserved_2_63:62; 40362306a36Sopenharmony_ci#endif 40462306a36Sopenharmony_ci } s; 40562306a36Sopenharmony_ci}; 40662306a36Sopenharmony_ci 40762306a36Sopenharmony_ciunion cvmx_asxx_rx_wol_msk { 40862306a36Sopenharmony_ci uint64_t u64; 40962306a36Sopenharmony_ci struct cvmx_asxx_rx_wol_msk_s { 41062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 41162306a36Sopenharmony_ci uint64_t msk:64; 41262306a36Sopenharmony_ci#else 41362306a36Sopenharmony_ci uint64_t msk:64; 41462306a36Sopenharmony_ci#endif 41562306a36Sopenharmony_ci } s; 41662306a36Sopenharmony_ci}; 41762306a36Sopenharmony_ci 41862306a36Sopenharmony_ciunion cvmx_asxx_rx_wol_powok { 41962306a36Sopenharmony_ci uint64_t u64; 42062306a36Sopenharmony_ci struct cvmx_asxx_rx_wol_powok_s { 42162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 42262306a36Sopenharmony_ci uint64_t reserved_1_63:63; 42362306a36Sopenharmony_ci uint64_t powerok:1; 42462306a36Sopenharmony_ci#else 42562306a36Sopenharmony_ci uint64_t powerok:1; 42662306a36Sopenharmony_ci uint64_t reserved_1_63:63; 42762306a36Sopenharmony_ci#endif 42862306a36Sopenharmony_ci } s; 42962306a36Sopenharmony_ci}; 43062306a36Sopenharmony_ci 43162306a36Sopenharmony_ciunion cvmx_asxx_rx_wol_sig { 43262306a36Sopenharmony_ci uint64_t u64; 43362306a36Sopenharmony_ci struct cvmx_asxx_rx_wol_sig_s { 43462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 43562306a36Sopenharmony_ci uint64_t reserved_32_63:32; 43662306a36Sopenharmony_ci uint64_t sig:32; 43762306a36Sopenharmony_ci#else 43862306a36Sopenharmony_ci uint64_t sig:32; 43962306a36Sopenharmony_ci uint64_t reserved_32_63:32; 44062306a36Sopenharmony_ci#endif 44162306a36Sopenharmony_ci } s; 44262306a36Sopenharmony_ci}; 44362306a36Sopenharmony_ci 44462306a36Sopenharmony_ciunion cvmx_asxx_tx_clk_setx { 44562306a36Sopenharmony_ci uint64_t u64; 44662306a36Sopenharmony_ci struct cvmx_asxx_tx_clk_setx_s { 44762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 44862306a36Sopenharmony_ci uint64_t reserved_5_63:59; 44962306a36Sopenharmony_ci uint64_t setting:5; 45062306a36Sopenharmony_ci#else 45162306a36Sopenharmony_ci uint64_t setting:5; 45262306a36Sopenharmony_ci uint64_t reserved_5_63:59; 45362306a36Sopenharmony_ci#endif 45462306a36Sopenharmony_ci } s; 45562306a36Sopenharmony_ci}; 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_ciunion cvmx_asxx_tx_comp_byp { 45862306a36Sopenharmony_ci uint64_t u64; 45962306a36Sopenharmony_ci struct cvmx_asxx_tx_comp_byp_s { 46062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 46162306a36Sopenharmony_ci uint64_t reserved_0_63:64; 46262306a36Sopenharmony_ci#else 46362306a36Sopenharmony_ci uint64_t reserved_0_63:64; 46462306a36Sopenharmony_ci#endif 46562306a36Sopenharmony_ci } s; 46662306a36Sopenharmony_ci struct cvmx_asxx_tx_comp_byp_cn30xx { 46762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 46862306a36Sopenharmony_ci uint64_t reserved_9_63:55; 46962306a36Sopenharmony_ci uint64_t bypass:1; 47062306a36Sopenharmony_ci uint64_t pctl:4; 47162306a36Sopenharmony_ci uint64_t nctl:4; 47262306a36Sopenharmony_ci#else 47362306a36Sopenharmony_ci uint64_t nctl:4; 47462306a36Sopenharmony_ci uint64_t pctl:4; 47562306a36Sopenharmony_ci uint64_t bypass:1; 47662306a36Sopenharmony_ci uint64_t reserved_9_63:55; 47762306a36Sopenharmony_ci#endif 47862306a36Sopenharmony_ci } cn30xx; 47962306a36Sopenharmony_ci struct cvmx_asxx_tx_comp_byp_cn38xx { 48062306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 48162306a36Sopenharmony_ci uint64_t reserved_8_63:56; 48262306a36Sopenharmony_ci uint64_t pctl:4; 48362306a36Sopenharmony_ci uint64_t nctl:4; 48462306a36Sopenharmony_ci#else 48562306a36Sopenharmony_ci uint64_t nctl:4; 48662306a36Sopenharmony_ci uint64_t pctl:4; 48762306a36Sopenharmony_ci uint64_t reserved_8_63:56; 48862306a36Sopenharmony_ci#endif 48962306a36Sopenharmony_ci } cn38xx; 49062306a36Sopenharmony_ci struct cvmx_asxx_tx_comp_byp_cn50xx { 49162306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 49262306a36Sopenharmony_ci uint64_t reserved_17_63:47; 49362306a36Sopenharmony_ci uint64_t bypass:1; 49462306a36Sopenharmony_ci uint64_t reserved_13_15:3; 49562306a36Sopenharmony_ci uint64_t pctl:5; 49662306a36Sopenharmony_ci uint64_t reserved_5_7:3; 49762306a36Sopenharmony_ci uint64_t nctl:5; 49862306a36Sopenharmony_ci#else 49962306a36Sopenharmony_ci uint64_t nctl:5; 50062306a36Sopenharmony_ci uint64_t reserved_5_7:3; 50162306a36Sopenharmony_ci uint64_t pctl:5; 50262306a36Sopenharmony_ci uint64_t reserved_13_15:3; 50362306a36Sopenharmony_ci uint64_t bypass:1; 50462306a36Sopenharmony_ci uint64_t reserved_17_63:47; 50562306a36Sopenharmony_ci#endif 50662306a36Sopenharmony_ci } cn50xx; 50762306a36Sopenharmony_ci struct cvmx_asxx_tx_comp_byp_cn58xx { 50862306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 50962306a36Sopenharmony_ci uint64_t reserved_13_63:51; 51062306a36Sopenharmony_ci uint64_t pctl:5; 51162306a36Sopenharmony_ci uint64_t reserved_5_7:3; 51262306a36Sopenharmony_ci uint64_t nctl:5; 51362306a36Sopenharmony_ci#else 51462306a36Sopenharmony_ci uint64_t nctl:5; 51562306a36Sopenharmony_ci uint64_t reserved_5_7:3; 51662306a36Sopenharmony_ci uint64_t pctl:5; 51762306a36Sopenharmony_ci uint64_t reserved_13_63:51; 51862306a36Sopenharmony_ci#endif 51962306a36Sopenharmony_ci } cn58xx; 52062306a36Sopenharmony_ci}; 52162306a36Sopenharmony_ci 52262306a36Sopenharmony_ciunion cvmx_asxx_tx_hi_waterx { 52362306a36Sopenharmony_ci uint64_t u64; 52462306a36Sopenharmony_ci struct cvmx_asxx_tx_hi_waterx_s { 52562306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 52662306a36Sopenharmony_ci uint64_t reserved_4_63:60; 52762306a36Sopenharmony_ci uint64_t mark:4; 52862306a36Sopenharmony_ci#else 52962306a36Sopenharmony_ci uint64_t mark:4; 53062306a36Sopenharmony_ci uint64_t reserved_4_63:60; 53162306a36Sopenharmony_ci#endif 53262306a36Sopenharmony_ci } s; 53362306a36Sopenharmony_ci struct cvmx_asxx_tx_hi_waterx_cn30xx { 53462306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 53562306a36Sopenharmony_ci uint64_t reserved_3_63:61; 53662306a36Sopenharmony_ci uint64_t mark:3; 53762306a36Sopenharmony_ci#else 53862306a36Sopenharmony_ci uint64_t mark:3; 53962306a36Sopenharmony_ci uint64_t reserved_3_63:61; 54062306a36Sopenharmony_ci#endif 54162306a36Sopenharmony_ci } cn30xx; 54262306a36Sopenharmony_ci}; 54362306a36Sopenharmony_ci 54462306a36Sopenharmony_ciunion cvmx_asxx_tx_prt_en { 54562306a36Sopenharmony_ci uint64_t u64; 54662306a36Sopenharmony_ci struct cvmx_asxx_tx_prt_en_s { 54762306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 54862306a36Sopenharmony_ci uint64_t reserved_4_63:60; 54962306a36Sopenharmony_ci uint64_t prt_en:4; 55062306a36Sopenharmony_ci#else 55162306a36Sopenharmony_ci uint64_t prt_en:4; 55262306a36Sopenharmony_ci uint64_t reserved_4_63:60; 55362306a36Sopenharmony_ci#endif 55462306a36Sopenharmony_ci } s; 55562306a36Sopenharmony_ci struct cvmx_asxx_tx_prt_en_cn30xx { 55662306a36Sopenharmony_ci#ifdef __BIG_ENDIAN_BITFIELD 55762306a36Sopenharmony_ci uint64_t reserved_3_63:61; 55862306a36Sopenharmony_ci uint64_t prt_en:3; 55962306a36Sopenharmony_ci#else 56062306a36Sopenharmony_ci uint64_t prt_en:3; 56162306a36Sopenharmony_ci uint64_t reserved_3_63:61; 56262306a36Sopenharmony_ci#endif 56362306a36Sopenharmony_ci } cn30xx; 56462306a36Sopenharmony_ci}; 56562306a36Sopenharmony_ci 56662306a36Sopenharmony_ci#endif 567