1af866496SDavid Daney /***********************license start*************** 2af866496SDavid Daney * Author: Cavium Networks 3af866496SDavid Daney * 4af866496SDavid Daney * Contact: support@caviumnetworks.com 5af866496SDavid Daney * This file is part of the OCTEON SDK 6af866496SDavid Daney * 7af866496SDavid Daney * Copyright (c) 2003-2008 Cavium Networks 8af866496SDavid Daney * 9af866496SDavid Daney * This file is free software; you can redistribute it and/or modify 10af866496SDavid Daney * it under the terms of the GNU General Public License, Version 2, as 11af866496SDavid Daney * published by the Free Software Foundation. 12af866496SDavid Daney * 13af866496SDavid Daney * This file is distributed in the hope that it will be useful, but 14af866496SDavid Daney * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 15af866496SDavid Daney * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 16af866496SDavid Daney * NONINFRINGEMENT. See the GNU General Public License for more 17af866496SDavid Daney * details. 18af866496SDavid Daney * 19af866496SDavid Daney * You should have received a copy of the GNU General Public License 20af866496SDavid Daney * along with this file; if not, write to the Free Software 21af866496SDavid Daney * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 22af866496SDavid Daney * or visit http://www.gnu.org/licenses/. 23af866496SDavid Daney * 24af866496SDavid Daney * This file may also be available under a different license from Cavium. 25af866496SDavid Daney * Contact Cavium Networks for more information 26af866496SDavid Daney ***********************license end**************************************/ 27af866496SDavid Daney 28af866496SDavid Daney #ifndef __CVMX_ASXX_DEFS_H__ 29af866496SDavid Daney #define __CVMX_ASXX_DEFS_H__ 30af866496SDavid Daney 31af866496SDavid Daney #define CVMX_ASXX_GMII_RX_CLK_SET(block_id) \ 32af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000180ull + (((block_id) & 0) * 0x8000000ull)) 33af866496SDavid Daney #define CVMX_ASXX_GMII_RX_DAT_SET(block_id) \ 34af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000188ull + (((block_id) & 0) * 0x8000000ull)) 35af866496SDavid Daney #define CVMX_ASXX_INT_EN(block_id) \ 36af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000018ull + (((block_id) & 1) * 0x8000000ull)) 37af866496SDavid Daney #define CVMX_ASXX_INT_REG(block_id) \ 38af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000010ull + (((block_id) & 1) * 0x8000000ull)) 39af866496SDavid Daney #define CVMX_ASXX_MII_RX_DAT_SET(block_id) \ 40af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000190ull + (((block_id) & 0) * 0x8000000ull)) 41af866496SDavid Daney #define CVMX_ASXX_PRT_LOOP(block_id) \ 42af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000040ull + (((block_id) & 1) * 0x8000000ull)) 43af866496SDavid Daney #define CVMX_ASXX_RLD_BYPASS(block_id) \ 44af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000248ull + (((block_id) & 1) * 0x8000000ull)) 45af866496SDavid Daney #define CVMX_ASXX_RLD_BYPASS_SETTING(block_id) \ 46af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000250ull + (((block_id) & 1) * 0x8000000ull)) 47af866496SDavid Daney #define CVMX_ASXX_RLD_COMP(block_id) \ 48af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000220ull + (((block_id) & 1) * 0x8000000ull)) 49af866496SDavid Daney #define CVMX_ASXX_RLD_DATA_DRV(block_id) \ 50af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000218ull + (((block_id) & 1) * 0x8000000ull)) 51af866496SDavid Daney #define CVMX_ASXX_RLD_FCRAM_MODE(block_id) \ 52af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000210ull + (((block_id) & 1) * 0x8000000ull)) 53af866496SDavid Daney #define CVMX_ASXX_RLD_NCTL_STRONG(block_id) \ 54af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000230ull + (((block_id) & 1) * 0x8000000ull)) 55af866496SDavid Daney #define CVMX_ASXX_RLD_NCTL_WEAK(block_id) \ 56af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000240ull + (((block_id) & 1) * 0x8000000ull)) 57af866496SDavid Daney #define CVMX_ASXX_RLD_PCTL_STRONG(block_id) \ 58af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000228ull + (((block_id) & 1) * 0x8000000ull)) 59af866496SDavid Daney #define CVMX_ASXX_RLD_PCTL_WEAK(block_id) \ 60af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000238ull + (((block_id) & 1) * 0x8000000ull)) 61af866496SDavid Daney #define CVMX_ASXX_RLD_SETTING(block_id) \ 62af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000258ull + (((block_id) & 1) * 0x8000000ull)) 63af866496SDavid Daney #define CVMX_ASXX_RX_CLK_SETX(offset, block_id) \ 64af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000020ull + (((offset) & 3) * 8) + (((block_id) & 1) * 0x8000000ull)) 65af866496SDavid Daney #define CVMX_ASXX_RX_PRT_EN(block_id) \ 66af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000000ull + (((block_id) & 1) * 0x8000000ull)) 67af866496SDavid Daney #define CVMX_ASXX_RX_WOL(block_id) \ 68af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000100ull + (((block_id) & 1) * 0x8000000ull)) 69af866496SDavid Daney #define CVMX_ASXX_RX_WOL_MSK(block_id) \ 70af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000108ull + (((block_id) & 1) * 0x8000000ull)) 71af866496SDavid Daney #define CVMX_ASXX_RX_WOL_POWOK(block_id) \ 72af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000118ull + (((block_id) & 1) * 0x8000000ull)) 73af866496SDavid Daney #define CVMX_ASXX_RX_WOL_SIG(block_id) \ 74af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000110ull + (((block_id) & 1) * 0x8000000ull)) 75af866496SDavid Daney #define CVMX_ASXX_TX_CLK_SETX(offset, block_id) \ 76af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000048ull + (((offset) & 3) * 8) + (((block_id) & 1) * 0x8000000ull)) 77af866496SDavid Daney #define CVMX_ASXX_TX_COMP_BYP(block_id) \ 78af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000068ull + (((block_id) & 1) * 0x8000000ull)) 79af866496SDavid Daney #define CVMX_ASXX_TX_HI_WATERX(offset, block_id) \ 80af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000080ull + (((offset) & 3) * 8) + (((block_id) & 1) * 0x8000000ull)) 81af866496SDavid Daney #define CVMX_ASXX_TX_PRT_EN(block_id) \ 82af866496SDavid Daney CVMX_ADD_IO_SEG(0x00011800B0000008ull + (((block_id) & 1) * 0x8000000ull)) 83af866496SDavid Daney 84af866496SDavid Daney union cvmx_asxx_gmii_rx_clk_set { 85af866496SDavid Daney uint64_t u64; 86af866496SDavid Daney struct cvmx_asxx_gmii_rx_clk_set_s { 87af866496SDavid Daney uint64_t reserved_5_63:59; 88af866496SDavid Daney uint64_t setting:5; 89af866496SDavid Daney } s; 90af866496SDavid Daney struct cvmx_asxx_gmii_rx_clk_set_s cn30xx; 91af866496SDavid Daney struct cvmx_asxx_gmii_rx_clk_set_s cn31xx; 92af866496SDavid Daney struct cvmx_asxx_gmii_rx_clk_set_s cn50xx; 93af866496SDavid Daney }; 94af866496SDavid Daney 95af866496SDavid Daney union cvmx_asxx_gmii_rx_dat_set { 96af866496SDavid Daney uint64_t u64; 97af866496SDavid Daney struct cvmx_asxx_gmii_rx_dat_set_s { 98af866496SDavid Daney uint64_t reserved_5_63:59; 99af866496SDavid Daney uint64_t setting:5; 100af866496SDavid Daney } s; 101af866496SDavid Daney struct cvmx_asxx_gmii_rx_dat_set_s cn30xx; 102af866496SDavid Daney struct cvmx_asxx_gmii_rx_dat_set_s cn31xx; 103af866496SDavid Daney struct cvmx_asxx_gmii_rx_dat_set_s cn50xx; 104af866496SDavid Daney }; 105af866496SDavid Daney 106af866496SDavid Daney union cvmx_asxx_int_en { 107af866496SDavid Daney uint64_t u64; 108af866496SDavid Daney struct cvmx_asxx_int_en_s { 109af866496SDavid Daney uint64_t reserved_12_63:52; 110af866496SDavid Daney uint64_t txpsh:4; 111af866496SDavid Daney uint64_t txpop:4; 112af866496SDavid Daney uint64_t ovrflw:4; 113af866496SDavid Daney } s; 114af866496SDavid Daney struct cvmx_asxx_int_en_cn30xx { 115af866496SDavid Daney uint64_t reserved_11_63:53; 116af866496SDavid Daney uint64_t txpsh:3; 117af866496SDavid Daney uint64_t reserved_7_7:1; 118af866496SDavid Daney uint64_t txpop:3; 119af866496SDavid Daney uint64_t reserved_3_3:1; 120af866496SDavid Daney uint64_t ovrflw:3; 121af866496SDavid Daney } cn30xx; 122af866496SDavid Daney struct cvmx_asxx_int_en_cn30xx cn31xx; 123af866496SDavid Daney struct cvmx_asxx_int_en_s cn38xx; 124af866496SDavid Daney struct cvmx_asxx_int_en_s cn38xxp2; 125af866496SDavid Daney struct cvmx_asxx_int_en_cn30xx cn50xx; 126af866496SDavid Daney struct cvmx_asxx_int_en_s cn58xx; 127af866496SDavid Daney struct cvmx_asxx_int_en_s cn58xxp1; 128af866496SDavid Daney }; 129af866496SDavid Daney 130af866496SDavid Daney union cvmx_asxx_int_reg { 131af866496SDavid Daney uint64_t u64; 132af866496SDavid Daney struct cvmx_asxx_int_reg_s { 133af866496SDavid Daney uint64_t reserved_12_63:52; 134af866496SDavid Daney uint64_t txpsh:4; 135af866496SDavid Daney uint64_t txpop:4; 136af866496SDavid Daney uint64_t ovrflw:4; 137af866496SDavid Daney } s; 138af866496SDavid Daney struct cvmx_asxx_int_reg_cn30xx { 139af866496SDavid Daney uint64_t reserved_11_63:53; 140af866496SDavid Daney uint64_t txpsh:3; 141af866496SDavid Daney uint64_t reserved_7_7:1; 142af866496SDavid Daney uint64_t txpop:3; 143af866496SDavid Daney uint64_t reserved_3_3:1; 144af866496SDavid Daney uint64_t ovrflw:3; 145af866496SDavid Daney } cn30xx; 146af866496SDavid Daney struct cvmx_asxx_int_reg_cn30xx cn31xx; 147af866496SDavid Daney struct cvmx_asxx_int_reg_s cn38xx; 148af866496SDavid Daney struct cvmx_asxx_int_reg_s cn38xxp2; 149af866496SDavid Daney struct cvmx_asxx_int_reg_cn30xx cn50xx; 150af866496SDavid Daney struct cvmx_asxx_int_reg_s cn58xx; 151af866496SDavid Daney struct cvmx_asxx_int_reg_s cn58xxp1; 152af866496SDavid Daney }; 153af866496SDavid Daney 154af866496SDavid Daney union cvmx_asxx_mii_rx_dat_set { 155af866496SDavid Daney uint64_t u64; 156af866496SDavid Daney struct cvmx_asxx_mii_rx_dat_set_s { 157af866496SDavid Daney uint64_t reserved_5_63:59; 158af866496SDavid Daney uint64_t setting:5; 159af866496SDavid Daney } s; 160af866496SDavid Daney struct cvmx_asxx_mii_rx_dat_set_s cn30xx; 161af866496SDavid Daney struct cvmx_asxx_mii_rx_dat_set_s cn50xx; 162af866496SDavid Daney }; 163af866496SDavid Daney 164af866496SDavid Daney union cvmx_asxx_prt_loop { 165af866496SDavid Daney uint64_t u64; 166af866496SDavid Daney struct cvmx_asxx_prt_loop_s { 167af866496SDavid Daney uint64_t reserved_8_63:56; 168af866496SDavid Daney uint64_t ext_loop:4; 169af866496SDavid Daney uint64_t int_loop:4; 170af866496SDavid Daney } s; 171af866496SDavid Daney struct cvmx_asxx_prt_loop_cn30xx { 172af866496SDavid Daney uint64_t reserved_7_63:57; 173af866496SDavid Daney uint64_t ext_loop:3; 174af866496SDavid Daney uint64_t reserved_3_3:1; 175af866496SDavid Daney uint64_t int_loop:3; 176af866496SDavid Daney } cn30xx; 177af866496SDavid Daney struct cvmx_asxx_prt_loop_cn30xx cn31xx; 178af866496SDavid Daney struct cvmx_asxx_prt_loop_s cn38xx; 179af866496SDavid Daney struct cvmx_asxx_prt_loop_s cn38xxp2; 180af866496SDavid Daney struct cvmx_asxx_prt_loop_cn30xx cn50xx; 181af866496SDavid Daney struct cvmx_asxx_prt_loop_s cn58xx; 182af866496SDavid Daney struct cvmx_asxx_prt_loop_s cn58xxp1; 183af866496SDavid Daney }; 184af866496SDavid Daney 185af866496SDavid Daney union cvmx_asxx_rld_bypass { 186af866496SDavid Daney uint64_t u64; 187af866496SDavid Daney struct cvmx_asxx_rld_bypass_s { 188af866496SDavid Daney uint64_t reserved_1_63:63; 189af866496SDavid Daney uint64_t bypass:1; 190af866496SDavid Daney } s; 191af866496SDavid Daney struct cvmx_asxx_rld_bypass_s cn38xx; 192af866496SDavid Daney struct cvmx_asxx_rld_bypass_s cn38xxp2; 193af866496SDavid Daney struct cvmx_asxx_rld_bypass_s cn58xx; 194af866496SDavid Daney struct cvmx_asxx_rld_bypass_s cn58xxp1; 195af866496SDavid Daney }; 196af866496SDavid Daney 197af866496SDavid Daney union cvmx_asxx_rld_bypass_setting { 198af866496SDavid Daney uint64_t u64; 199af866496SDavid Daney struct cvmx_asxx_rld_bypass_setting_s { 200af866496SDavid Daney uint64_t reserved_5_63:59; 201af866496SDavid Daney uint64_t setting:5; 202af866496SDavid Daney } s; 203af866496SDavid Daney struct cvmx_asxx_rld_bypass_setting_s cn38xx; 204af866496SDavid Daney struct cvmx_asxx_rld_bypass_setting_s cn38xxp2; 205af866496SDavid Daney struct cvmx_asxx_rld_bypass_setting_s cn58xx; 206af866496SDavid Daney struct cvmx_asxx_rld_bypass_setting_s cn58xxp1; 207af866496SDavid Daney }; 208af866496SDavid Daney 209af866496SDavid Daney union cvmx_asxx_rld_comp { 210af866496SDavid Daney uint64_t u64; 211af866496SDavid Daney struct cvmx_asxx_rld_comp_s { 212af866496SDavid Daney uint64_t reserved_9_63:55; 213af866496SDavid Daney uint64_t pctl:5; 214af866496SDavid Daney uint64_t nctl:4; 215af866496SDavid Daney } s; 216af866496SDavid Daney struct cvmx_asxx_rld_comp_cn38xx { 217af866496SDavid Daney uint64_t reserved_8_63:56; 218af866496SDavid Daney uint64_t pctl:4; 219af866496SDavid Daney uint64_t nctl:4; 220af866496SDavid Daney } cn38xx; 221af866496SDavid Daney struct cvmx_asxx_rld_comp_cn38xx cn38xxp2; 222af866496SDavid Daney struct cvmx_asxx_rld_comp_s cn58xx; 223af866496SDavid Daney struct cvmx_asxx_rld_comp_s cn58xxp1; 224af866496SDavid Daney }; 225af866496SDavid Daney 226af866496SDavid Daney union cvmx_asxx_rld_data_drv { 227af866496SDavid Daney uint64_t u64; 228af866496SDavid Daney struct cvmx_asxx_rld_data_drv_s { 229af866496SDavid Daney uint64_t reserved_8_63:56; 230af866496SDavid Daney uint64_t pctl:4; 231af866496SDavid Daney uint64_t nctl:4; 232af866496SDavid Daney } s; 233af866496SDavid Daney struct cvmx_asxx_rld_data_drv_s cn38xx; 234af866496SDavid Daney struct cvmx_asxx_rld_data_drv_s cn38xxp2; 235af866496SDavid Daney struct cvmx_asxx_rld_data_drv_s cn58xx; 236af866496SDavid Daney struct cvmx_asxx_rld_data_drv_s cn58xxp1; 237af866496SDavid Daney }; 238af866496SDavid Daney 239af866496SDavid Daney union cvmx_asxx_rld_fcram_mode { 240af866496SDavid Daney uint64_t u64; 241af866496SDavid Daney struct cvmx_asxx_rld_fcram_mode_s { 242af866496SDavid Daney uint64_t reserved_1_63:63; 243af866496SDavid Daney uint64_t mode:1; 244af866496SDavid Daney } s; 245af866496SDavid Daney struct cvmx_asxx_rld_fcram_mode_s cn38xx; 246af866496SDavid Daney struct cvmx_asxx_rld_fcram_mode_s cn38xxp2; 247af866496SDavid Daney }; 248af866496SDavid Daney 249af866496SDavid Daney union cvmx_asxx_rld_nctl_strong { 250af866496SDavid Daney uint64_t u64; 251af866496SDavid Daney struct cvmx_asxx_rld_nctl_strong_s { 252af866496SDavid Daney uint64_t reserved_5_63:59; 253af866496SDavid Daney uint64_t nctl:5; 254af866496SDavid Daney } s; 255af866496SDavid Daney struct cvmx_asxx_rld_nctl_strong_s cn38xx; 256af866496SDavid Daney struct cvmx_asxx_rld_nctl_strong_s cn38xxp2; 257af866496SDavid Daney struct cvmx_asxx_rld_nctl_strong_s cn58xx; 258af866496SDavid Daney struct cvmx_asxx_rld_nctl_strong_s cn58xxp1; 259af866496SDavid Daney }; 260af866496SDavid Daney 261af866496SDavid Daney union cvmx_asxx_rld_nctl_weak { 262af866496SDavid Daney uint64_t u64; 263af866496SDavid Daney struct cvmx_asxx_rld_nctl_weak_s { 264af866496SDavid Daney uint64_t reserved_5_63:59; 265af866496SDavid Daney uint64_t nctl:5; 266af866496SDavid Daney } s; 267af866496SDavid Daney struct cvmx_asxx_rld_nctl_weak_s cn38xx; 268af866496SDavid Daney struct cvmx_asxx_rld_nctl_weak_s cn38xxp2; 269af866496SDavid Daney struct cvmx_asxx_rld_nctl_weak_s cn58xx; 270af866496SDavid Daney struct cvmx_asxx_rld_nctl_weak_s cn58xxp1; 271af866496SDavid Daney }; 272af866496SDavid Daney 273af866496SDavid Daney union cvmx_asxx_rld_pctl_strong { 274af866496SDavid Daney uint64_t u64; 275af866496SDavid Daney struct cvmx_asxx_rld_pctl_strong_s { 276af866496SDavid Daney uint64_t reserved_5_63:59; 277af866496SDavid Daney uint64_t pctl:5; 278af866496SDavid Daney } s; 279af866496SDavid Daney struct cvmx_asxx_rld_pctl_strong_s cn38xx; 280af866496SDavid Daney struct cvmx_asxx_rld_pctl_strong_s cn38xxp2; 281af866496SDavid Daney struct cvmx_asxx_rld_pctl_strong_s cn58xx; 282af866496SDavid Daney struct cvmx_asxx_rld_pctl_strong_s cn58xxp1; 283af866496SDavid Daney }; 284af866496SDavid Daney 285af866496SDavid Daney union cvmx_asxx_rld_pctl_weak { 286af866496SDavid Daney uint64_t u64; 287af866496SDavid Daney struct cvmx_asxx_rld_pctl_weak_s { 288af866496SDavid Daney uint64_t reserved_5_63:59; 289af866496SDavid Daney uint64_t pctl:5; 290af866496SDavid Daney } s; 291af866496SDavid Daney struct cvmx_asxx_rld_pctl_weak_s cn38xx; 292af866496SDavid Daney struct cvmx_asxx_rld_pctl_weak_s cn38xxp2; 293af866496SDavid Daney struct cvmx_asxx_rld_pctl_weak_s cn58xx; 294af866496SDavid Daney struct cvmx_asxx_rld_pctl_weak_s cn58xxp1; 295af866496SDavid Daney }; 296af866496SDavid Daney 297af866496SDavid Daney union cvmx_asxx_rld_setting { 298af866496SDavid Daney uint64_t u64; 299af866496SDavid Daney struct cvmx_asxx_rld_setting_s { 300af866496SDavid Daney uint64_t reserved_13_63:51; 301af866496SDavid Daney uint64_t dfaset:5; 302af866496SDavid Daney uint64_t dfalag:1; 303af866496SDavid Daney uint64_t dfalead:1; 304af866496SDavid Daney uint64_t dfalock:1; 305af866496SDavid Daney uint64_t setting:5; 306af866496SDavid Daney } s; 307af866496SDavid Daney struct cvmx_asxx_rld_setting_cn38xx { 308af866496SDavid Daney uint64_t reserved_5_63:59; 309af866496SDavid Daney uint64_t setting:5; 310af866496SDavid Daney } cn38xx; 311af866496SDavid Daney struct cvmx_asxx_rld_setting_cn38xx cn38xxp2; 312af866496SDavid Daney struct cvmx_asxx_rld_setting_s cn58xx; 313af866496SDavid Daney struct cvmx_asxx_rld_setting_s cn58xxp1; 314af866496SDavid Daney }; 315af866496SDavid Daney 316af866496SDavid Daney union cvmx_asxx_rx_clk_setx { 317af866496SDavid Daney uint64_t u64; 318af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s { 319af866496SDavid Daney uint64_t reserved_5_63:59; 320af866496SDavid Daney uint64_t setting:5; 321af866496SDavid Daney } s; 322af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn30xx; 323af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn31xx; 324af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn38xx; 325af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn38xxp2; 326af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn50xx; 327af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn58xx; 328af866496SDavid Daney struct cvmx_asxx_rx_clk_setx_s cn58xxp1; 329af866496SDavid Daney }; 330af866496SDavid Daney 331af866496SDavid Daney union cvmx_asxx_rx_prt_en { 332af866496SDavid Daney uint64_t u64; 333af866496SDavid Daney struct cvmx_asxx_rx_prt_en_s { 334af866496SDavid Daney uint64_t reserved_4_63:60; 335af866496SDavid Daney uint64_t prt_en:4; 336af866496SDavid Daney } s; 337af866496SDavid Daney struct cvmx_asxx_rx_prt_en_cn30xx { 338af866496SDavid Daney uint64_t reserved_3_63:61; 339af866496SDavid Daney uint64_t prt_en:3; 340af866496SDavid Daney } cn30xx; 341af866496SDavid Daney struct cvmx_asxx_rx_prt_en_cn30xx cn31xx; 342af866496SDavid Daney struct cvmx_asxx_rx_prt_en_s cn38xx; 343af866496SDavid Daney struct cvmx_asxx_rx_prt_en_s cn38xxp2; 344af866496SDavid Daney struct cvmx_asxx_rx_prt_en_cn30xx cn50xx; 345af866496SDavid Daney struct cvmx_asxx_rx_prt_en_s cn58xx; 346af866496SDavid Daney struct cvmx_asxx_rx_prt_en_s cn58xxp1; 347af866496SDavid Daney }; 348af866496SDavid Daney 349af866496SDavid Daney union cvmx_asxx_rx_wol { 350af866496SDavid Daney uint64_t u64; 351af866496SDavid Daney struct cvmx_asxx_rx_wol_s { 352af866496SDavid Daney uint64_t reserved_2_63:62; 353af866496SDavid Daney uint64_t status:1; 354af866496SDavid Daney uint64_t enable:1; 355af866496SDavid Daney } s; 356af866496SDavid Daney struct cvmx_asxx_rx_wol_s cn38xx; 357af866496SDavid Daney struct cvmx_asxx_rx_wol_s cn38xxp2; 358af866496SDavid Daney }; 359af866496SDavid Daney 360af866496SDavid Daney union cvmx_asxx_rx_wol_msk { 361af866496SDavid Daney uint64_t u64; 362af866496SDavid Daney struct cvmx_asxx_rx_wol_msk_s { 363af866496SDavid Daney uint64_t msk:64; 364af866496SDavid Daney } s; 365af866496SDavid Daney struct cvmx_asxx_rx_wol_msk_s cn38xx; 366af866496SDavid Daney struct cvmx_asxx_rx_wol_msk_s cn38xxp2; 367af866496SDavid Daney }; 368af866496SDavid Daney 369af866496SDavid Daney union cvmx_asxx_rx_wol_powok { 370af866496SDavid Daney uint64_t u64; 371af866496SDavid Daney struct cvmx_asxx_rx_wol_powok_s { 372af866496SDavid Daney uint64_t reserved_1_63:63; 373af866496SDavid Daney uint64_t powerok:1; 374af866496SDavid Daney } s; 375af866496SDavid Daney struct cvmx_asxx_rx_wol_powok_s cn38xx; 376af866496SDavid Daney struct cvmx_asxx_rx_wol_powok_s cn38xxp2; 377af866496SDavid Daney }; 378af866496SDavid Daney 379af866496SDavid Daney union cvmx_asxx_rx_wol_sig { 380af866496SDavid Daney uint64_t u64; 381af866496SDavid Daney struct cvmx_asxx_rx_wol_sig_s { 382af866496SDavid Daney uint64_t reserved_32_63:32; 383af866496SDavid Daney uint64_t sig:32; 384af866496SDavid Daney } s; 385af866496SDavid Daney struct cvmx_asxx_rx_wol_sig_s cn38xx; 386af866496SDavid Daney struct cvmx_asxx_rx_wol_sig_s cn38xxp2; 387af866496SDavid Daney }; 388af866496SDavid Daney 389af866496SDavid Daney union cvmx_asxx_tx_clk_setx { 390af866496SDavid Daney uint64_t u64; 391af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s { 392af866496SDavid Daney uint64_t reserved_5_63:59; 393af866496SDavid Daney uint64_t setting:5; 394af866496SDavid Daney } s; 395af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn30xx; 396af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn31xx; 397af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn38xx; 398af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn38xxp2; 399af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn50xx; 400af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn58xx; 401af866496SDavid Daney struct cvmx_asxx_tx_clk_setx_s cn58xxp1; 402af866496SDavid Daney }; 403af866496SDavid Daney 404af866496SDavid Daney union cvmx_asxx_tx_comp_byp { 405af866496SDavid Daney uint64_t u64; 406af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_s { 407af866496SDavid Daney uint64_t reserved_0_63:64; 408af866496SDavid Daney } s; 409af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn30xx { 410af866496SDavid Daney uint64_t reserved_9_63:55; 411af866496SDavid Daney uint64_t bypass:1; 412af866496SDavid Daney uint64_t pctl:4; 413af866496SDavid Daney uint64_t nctl:4; 414af866496SDavid Daney } cn30xx; 415af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn30xx cn31xx; 416af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn38xx { 417af866496SDavid Daney uint64_t reserved_8_63:56; 418af866496SDavid Daney uint64_t pctl:4; 419af866496SDavid Daney uint64_t nctl:4; 420af866496SDavid Daney } cn38xx; 421af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn38xx cn38xxp2; 422af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn50xx { 423af866496SDavid Daney uint64_t reserved_17_63:47; 424af866496SDavid Daney uint64_t bypass:1; 425af866496SDavid Daney uint64_t reserved_13_15:3; 426af866496SDavid Daney uint64_t pctl:5; 427af866496SDavid Daney uint64_t reserved_5_7:3; 428af866496SDavid Daney uint64_t nctl:5; 429af866496SDavid Daney } cn50xx; 430af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn58xx { 431af866496SDavid Daney uint64_t reserved_13_63:51; 432af866496SDavid Daney uint64_t pctl:5; 433af866496SDavid Daney uint64_t reserved_5_7:3; 434af866496SDavid Daney uint64_t nctl:5; 435af866496SDavid Daney } cn58xx; 436af866496SDavid Daney struct cvmx_asxx_tx_comp_byp_cn58xx cn58xxp1; 437af866496SDavid Daney }; 438af866496SDavid Daney 439af866496SDavid Daney union cvmx_asxx_tx_hi_waterx { 440af866496SDavid Daney uint64_t u64; 441af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_s { 442af866496SDavid Daney uint64_t reserved_4_63:60; 443af866496SDavid Daney uint64_t mark:4; 444af866496SDavid Daney } s; 445af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_cn30xx { 446af866496SDavid Daney uint64_t reserved_3_63:61; 447af866496SDavid Daney uint64_t mark:3; 448af866496SDavid Daney } cn30xx; 449af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_cn30xx cn31xx; 450af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_s cn38xx; 451af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_s cn38xxp2; 452af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_cn30xx cn50xx; 453af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_s cn58xx; 454af866496SDavid Daney struct cvmx_asxx_tx_hi_waterx_s cn58xxp1; 455af866496SDavid Daney }; 456af866496SDavid Daney 457af866496SDavid Daney union cvmx_asxx_tx_prt_en { 458af866496SDavid Daney uint64_t u64; 459af866496SDavid Daney struct cvmx_asxx_tx_prt_en_s { 460af866496SDavid Daney uint64_t reserved_4_63:60; 461af866496SDavid Daney uint64_t prt_en:4; 462af866496SDavid Daney } s; 463af866496SDavid Daney struct cvmx_asxx_tx_prt_en_cn30xx { 464af866496SDavid Daney uint64_t reserved_3_63:61; 465af866496SDavid Daney uint64_t prt_en:3; 466af866496SDavid Daney } cn30xx; 467af866496SDavid Daney struct cvmx_asxx_tx_prt_en_cn30xx cn31xx; 468af866496SDavid Daney struct cvmx_asxx_tx_prt_en_s cn38xx; 469af866496SDavid Daney struct cvmx_asxx_tx_prt_en_s cn38xxp2; 470af866496SDavid Daney struct cvmx_asxx_tx_prt_en_cn30xx cn50xx; 471af866496SDavid Daney struct cvmx_asxx_tx_prt_en_s cn58xx; 472af866496SDavid Daney struct cvmx_asxx_tx_prt_en_s cn58xxp1; 473af866496SDavid Daney }; 474af866496SDavid Daney 475af866496SDavid Daney #endif 476