1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */ 2*4882a593Smuzhiyun /**************************************************************************** 3*4882a593Smuzhiyun * Driver for Solarflare network controllers and boards 4*4882a593Smuzhiyun * Copyright 2005-2006 Fen Systems Ltd. 5*4882a593Smuzhiyun * Copyright 2006-2012 Solarflare Communications Inc. 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef EFX_FARCH_REGS_H 9*4882a593Smuzhiyun #define EFX_FARCH_REGS_H 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun /* 12*4882a593Smuzhiyun * Falcon hardware architecture definitions have a name prefix following 13*4882a593Smuzhiyun * the format: 14*4882a593Smuzhiyun * 15*4882a593Smuzhiyun * F<type>_<min-rev><max-rev>_ 16*4882a593Smuzhiyun * 17*4882a593Smuzhiyun * The following <type> strings are used: 18*4882a593Smuzhiyun * 19*4882a593Smuzhiyun * MMIO register MC register Host memory structure 20*4882a593Smuzhiyun * ------------------------------------------------------------- 21*4882a593Smuzhiyun * Address R MCR 22*4882a593Smuzhiyun * Bitfield RF MCRF SF 23*4882a593Smuzhiyun * Enumerator FE MCFE SE 24*4882a593Smuzhiyun * 25*4882a593Smuzhiyun * <min-rev> is the first revision to which the definition applies: 26*4882a593Smuzhiyun * 27*4882a593Smuzhiyun * A: Falcon A1 (SFC4000AB) 28*4882a593Smuzhiyun * B: Falcon B0 (SFC4000BA) 29*4882a593Smuzhiyun * C: Siena A0 (SFL9021AA) 30*4882a593Smuzhiyun * 31*4882a593Smuzhiyun * If the definition has been changed or removed in later revisions 32*4882a593Smuzhiyun * then <max-rev> is the last revision to which the definition applies; 33*4882a593Smuzhiyun * otherwise it is "Z". 34*4882a593Smuzhiyun */ 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun /************************************************************************** 37*4882a593Smuzhiyun * 38*4882a593Smuzhiyun * Falcon/Siena registers and descriptors 39*4882a593Smuzhiyun * 40*4882a593Smuzhiyun ************************************************************************** 41*4882a593Smuzhiyun */ 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun /* ADR_REGION_REG: Address region register */ 44*4882a593Smuzhiyun #define FR_AZ_ADR_REGION 0x00000000 45*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION3_LBN 96 46*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION3_WIDTH 18 47*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION2_LBN 64 48*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION2_WIDTH 18 49*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION1_LBN 32 50*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION1_WIDTH 18 51*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION0_LBN 0 52*4882a593Smuzhiyun #define FRF_AZ_ADR_REGION0_WIDTH 18 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun /* INT_EN_REG_KER: Kernel driver Interrupt enable register */ 55*4882a593Smuzhiyun #define FR_AZ_INT_EN_KER 0x00000010 56*4882a593Smuzhiyun #define FRF_AZ_KER_INT_LEVE_SEL_LBN 8 57*4882a593Smuzhiyun #define FRF_AZ_KER_INT_LEVE_SEL_WIDTH 6 58*4882a593Smuzhiyun #define FRF_AZ_KER_INT_CHAR_LBN 4 59*4882a593Smuzhiyun #define FRF_AZ_KER_INT_CHAR_WIDTH 1 60*4882a593Smuzhiyun #define FRF_AZ_KER_INT_KER_LBN 3 61*4882a593Smuzhiyun #define FRF_AZ_KER_INT_KER_WIDTH 1 62*4882a593Smuzhiyun #define FRF_AZ_DRV_INT_EN_KER_LBN 0 63*4882a593Smuzhiyun #define FRF_AZ_DRV_INT_EN_KER_WIDTH 1 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun /* INT_EN_REG_CHAR: Char Driver interrupt enable register */ 66*4882a593Smuzhiyun #define FR_BZ_INT_EN_CHAR 0x00000020 67*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_LEVE_SEL_LBN 8 68*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_LEVE_SEL_WIDTH 6 69*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_CHAR_LBN 4 70*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_CHAR_WIDTH 1 71*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_KER_LBN 3 72*4882a593Smuzhiyun #define FRF_BZ_CHAR_INT_KER_WIDTH 1 73*4882a593Smuzhiyun #define FRF_BZ_DRV_INT_EN_CHAR_LBN 0 74*4882a593Smuzhiyun #define FRF_BZ_DRV_INT_EN_CHAR_WIDTH 1 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun /* INT_ADR_REG_KER: Interrupt host address for Kernel driver */ 77*4882a593Smuzhiyun #define FR_AZ_INT_ADR_KER 0x00000030 78*4882a593Smuzhiyun #define FRF_AZ_NORM_INT_VEC_DIS_KER_LBN 64 79*4882a593Smuzhiyun #define FRF_AZ_NORM_INT_VEC_DIS_KER_WIDTH 1 80*4882a593Smuzhiyun #define FRF_AZ_INT_ADR_KER_LBN 0 81*4882a593Smuzhiyun #define FRF_AZ_INT_ADR_KER_WIDTH 64 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun /* INT_ADR_REG_CHAR: Interrupt host address for Char driver */ 84*4882a593Smuzhiyun #define FR_BZ_INT_ADR_CHAR 0x00000040 85*4882a593Smuzhiyun #define FRF_BZ_NORM_INT_VEC_DIS_CHAR_LBN 64 86*4882a593Smuzhiyun #define FRF_BZ_NORM_INT_VEC_DIS_CHAR_WIDTH 1 87*4882a593Smuzhiyun #define FRF_BZ_INT_ADR_CHAR_LBN 0 88*4882a593Smuzhiyun #define FRF_BZ_INT_ADR_CHAR_WIDTH 64 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun /* INT_ACK_KER: Kernel interrupt acknowledge register */ 91*4882a593Smuzhiyun #define FR_AA_INT_ACK_KER 0x00000050 92*4882a593Smuzhiyun #define FRF_AA_INT_ACK_KER_FIELD_LBN 0 93*4882a593Smuzhiyun #define FRF_AA_INT_ACK_KER_FIELD_WIDTH 32 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun /* INT_ISR0_REG: Function 0 Interrupt Acknowledge Status register */ 96*4882a593Smuzhiyun #define FR_BZ_INT_ISR0 0x00000090 97*4882a593Smuzhiyun #define FRF_BZ_INT_ISR_REG_LBN 0 98*4882a593Smuzhiyun #define FRF_BZ_INT_ISR_REG_WIDTH 64 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun /* HW_INIT_REG: Hardware initialization register */ 101*4882a593Smuzhiyun #define FR_AZ_HW_INIT 0x000000c0 102*4882a593Smuzhiyun #define FRF_BB_BDMRD_CPLF_FULL_LBN 124 103*4882a593Smuzhiyun #define FRF_BB_BDMRD_CPLF_FULL_WIDTH 1 104*4882a593Smuzhiyun #define FRF_BB_PCIE_CPL_TIMEOUT_CTRL_LBN 121 105*4882a593Smuzhiyun #define FRF_BB_PCIE_CPL_TIMEOUT_CTRL_WIDTH 3 106*4882a593Smuzhiyun #define FRF_CZ_TX_MRG_TAGS_LBN 120 107*4882a593Smuzhiyun #define FRF_CZ_TX_MRG_TAGS_WIDTH 1 108*4882a593Smuzhiyun #define FRF_AB_TRGT_MASK_ALL_LBN 100 109*4882a593Smuzhiyun #define FRF_AB_TRGT_MASK_ALL_WIDTH 1 110*4882a593Smuzhiyun #define FRF_AZ_DOORBELL_DROP_LBN 92 111*4882a593Smuzhiyun #define FRF_AZ_DOORBELL_DROP_WIDTH 8 112*4882a593Smuzhiyun #define FRF_AB_TX_RREQ_MASK_EN_LBN 76 113*4882a593Smuzhiyun #define FRF_AB_TX_RREQ_MASK_EN_WIDTH 1 114*4882a593Smuzhiyun #define FRF_AB_PE_EIDLE_DIS_LBN 75 115*4882a593Smuzhiyun #define FRF_AB_PE_EIDLE_DIS_WIDTH 1 116*4882a593Smuzhiyun #define FRF_AA_FC_BLOCKING_EN_LBN 45 117*4882a593Smuzhiyun #define FRF_AA_FC_BLOCKING_EN_WIDTH 1 118*4882a593Smuzhiyun #define FRF_BZ_B2B_REQ_EN_LBN 45 119*4882a593Smuzhiyun #define FRF_BZ_B2B_REQ_EN_WIDTH 1 120*4882a593Smuzhiyun #define FRF_AA_B2B_REQ_EN_LBN 44 121*4882a593Smuzhiyun #define FRF_AA_B2B_REQ_EN_WIDTH 1 122*4882a593Smuzhiyun #define FRF_BB_FC_BLOCKING_EN_LBN 44 123*4882a593Smuzhiyun #define FRF_BB_FC_BLOCKING_EN_WIDTH 1 124*4882a593Smuzhiyun #define FRF_AZ_POST_WR_MASK_LBN 40 125*4882a593Smuzhiyun #define FRF_AZ_POST_WR_MASK_WIDTH 4 126*4882a593Smuzhiyun #define FRF_AZ_TLP_TC_LBN 34 127*4882a593Smuzhiyun #define FRF_AZ_TLP_TC_WIDTH 3 128*4882a593Smuzhiyun #define FRF_AZ_TLP_ATTR_LBN 32 129*4882a593Smuzhiyun #define FRF_AZ_TLP_ATTR_WIDTH 2 130*4882a593Smuzhiyun #define FRF_AB_INTB_VEC_LBN 24 131*4882a593Smuzhiyun #define FRF_AB_INTB_VEC_WIDTH 5 132*4882a593Smuzhiyun #define FRF_AB_INTA_VEC_LBN 16 133*4882a593Smuzhiyun #define FRF_AB_INTA_VEC_WIDTH 5 134*4882a593Smuzhiyun #define FRF_AZ_WD_TIMER_LBN 8 135*4882a593Smuzhiyun #define FRF_AZ_WD_TIMER_WIDTH 8 136*4882a593Smuzhiyun #define FRF_AZ_US_DISABLE_LBN 5 137*4882a593Smuzhiyun #define FRF_AZ_US_DISABLE_WIDTH 1 138*4882a593Smuzhiyun #define FRF_AZ_TLP_EP_LBN 4 139*4882a593Smuzhiyun #define FRF_AZ_TLP_EP_WIDTH 1 140*4882a593Smuzhiyun #define FRF_AZ_ATTR_SEL_LBN 3 141*4882a593Smuzhiyun #define FRF_AZ_ATTR_SEL_WIDTH 1 142*4882a593Smuzhiyun #define FRF_AZ_TD_SEL_LBN 1 143*4882a593Smuzhiyun #define FRF_AZ_TD_SEL_WIDTH 1 144*4882a593Smuzhiyun #define FRF_AZ_TLP_TD_LBN 0 145*4882a593Smuzhiyun #define FRF_AZ_TLP_TD_WIDTH 1 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun /* EE_SPI_HCMD_REG: SPI host command register */ 148*4882a593Smuzhiyun #define FR_AB_EE_SPI_HCMD 0x00000100 149*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_CMD_EN_LBN 31 150*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_CMD_EN_WIDTH 1 151*4882a593Smuzhiyun #define FRF_AB_EE_WR_TIMER_ACTIVE_LBN 28 152*4882a593Smuzhiyun #define FRF_AB_EE_WR_TIMER_ACTIVE_WIDTH 1 153*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_SF_SEL_LBN 24 154*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_SF_SEL_WIDTH 1 155*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_DABCNT_LBN 16 156*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_DABCNT_WIDTH 5 157*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_READ_LBN 15 158*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_READ_WIDTH 1 159*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_DUBCNT_LBN 12 160*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_DUBCNT_WIDTH 2 161*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_ADBCNT_LBN 8 162*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_ADBCNT_WIDTH 2 163*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_ENC_LBN 0 164*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HCMD_ENC_WIDTH 8 165*4882a593Smuzhiyun 166*4882a593Smuzhiyun /* USR_EV_CFG: User Level Event Configuration register */ 167*4882a593Smuzhiyun #define FR_CZ_USR_EV_CFG 0x00000100 168*4882a593Smuzhiyun #define FRF_CZ_USREV_DIS_LBN 16 169*4882a593Smuzhiyun #define FRF_CZ_USREV_DIS_WIDTH 1 170*4882a593Smuzhiyun #define FRF_CZ_DFLT_EVQ_LBN 0 171*4882a593Smuzhiyun #define FRF_CZ_DFLT_EVQ_WIDTH 10 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun /* EE_SPI_HADR_REG: SPI host address register */ 174*4882a593Smuzhiyun #define FR_AB_EE_SPI_HADR 0x00000110 175*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HADR_DUBYTE_LBN 24 176*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HADR_DUBYTE_WIDTH 8 177*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HADR_ADR_LBN 0 178*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HADR_ADR_WIDTH 24 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun /* EE_SPI_HDATA_REG: SPI host data register */ 181*4882a593Smuzhiyun #define FR_AB_EE_SPI_HDATA 0x00000120 182*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA3_LBN 96 183*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA3_WIDTH 32 184*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA2_LBN 64 185*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA2_WIDTH 32 186*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA1_LBN 32 187*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA1_WIDTH 32 188*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA0_LBN 0 189*4882a593Smuzhiyun #define FRF_AB_EE_SPI_HDATA0_WIDTH 32 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun /* EE_BASE_PAGE_REG: Expansion ROM base mirror register */ 192*4882a593Smuzhiyun #define FR_AB_EE_BASE_PAGE 0x00000130 193*4882a593Smuzhiyun #define FRF_AB_EE_EXPROM_MASK_LBN 16 194*4882a593Smuzhiyun #define FRF_AB_EE_EXPROM_MASK_WIDTH 13 195*4882a593Smuzhiyun #define FRF_AB_EE_EXP_ROM_WINDOW_BASE_LBN 0 196*4882a593Smuzhiyun #define FRF_AB_EE_EXP_ROM_WINDOW_BASE_WIDTH 13 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun /* EE_VPD_CFG0_REG: SPI/VPD configuration register 0 */ 199*4882a593Smuzhiyun #define FR_AB_EE_VPD_CFG0 0x00000140 200*4882a593Smuzhiyun #define FRF_AB_EE_SF_FASTRD_EN_LBN 127 201*4882a593Smuzhiyun #define FRF_AB_EE_SF_FASTRD_EN_WIDTH 1 202*4882a593Smuzhiyun #define FRF_AB_EE_SF_CLOCK_DIV_LBN 120 203*4882a593Smuzhiyun #define FRF_AB_EE_SF_CLOCK_DIV_WIDTH 7 204*4882a593Smuzhiyun #define FRF_AB_EE_VPD_WIP_POLL_LBN 119 205*4882a593Smuzhiyun #define FRF_AB_EE_VPD_WIP_POLL_WIDTH 1 206*4882a593Smuzhiyun #define FRF_AB_EE_EE_CLOCK_DIV_LBN 112 207*4882a593Smuzhiyun #define FRF_AB_EE_EE_CLOCK_DIV_WIDTH 7 208*4882a593Smuzhiyun #define FRF_AB_EE_EE_WR_TMR_VALUE_LBN 96 209*4882a593Smuzhiyun #define FRF_AB_EE_EE_WR_TMR_VALUE_WIDTH 16 210*4882a593Smuzhiyun #define FRF_AB_EE_VPDW_LENGTH_LBN 80 211*4882a593Smuzhiyun #define FRF_AB_EE_VPDW_LENGTH_WIDTH 15 212*4882a593Smuzhiyun #define FRF_AB_EE_VPDW_BASE_LBN 64 213*4882a593Smuzhiyun #define FRF_AB_EE_VPDW_BASE_WIDTH 15 214*4882a593Smuzhiyun #define FRF_AB_EE_VPD_WR_CMD_EN_LBN 56 215*4882a593Smuzhiyun #define FRF_AB_EE_VPD_WR_CMD_EN_WIDTH 8 216*4882a593Smuzhiyun #define FRF_AB_EE_VPD_BASE_LBN 32 217*4882a593Smuzhiyun #define FRF_AB_EE_VPD_BASE_WIDTH 24 218*4882a593Smuzhiyun #define FRF_AB_EE_VPD_LENGTH_LBN 16 219*4882a593Smuzhiyun #define FRF_AB_EE_VPD_LENGTH_WIDTH 15 220*4882a593Smuzhiyun #define FRF_AB_EE_VPD_AD_SIZE_LBN 8 221*4882a593Smuzhiyun #define FRF_AB_EE_VPD_AD_SIZE_WIDTH 5 222*4882a593Smuzhiyun #define FRF_AB_EE_VPD_ACCESS_ON_LBN 5 223*4882a593Smuzhiyun #define FRF_AB_EE_VPD_ACCESS_ON_WIDTH 1 224*4882a593Smuzhiyun #define FRF_AB_EE_VPD_ACCESS_BLOCK_LBN 4 225*4882a593Smuzhiyun #define FRF_AB_EE_VPD_ACCESS_BLOCK_WIDTH 1 226*4882a593Smuzhiyun #define FRF_AB_EE_VPD_DEV_SF_SEL_LBN 2 227*4882a593Smuzhiyun #define FRF_AB_EE_VPD_DEV_SF_SEL_WIDTH 1 228*4882a593Smuzhiyun #define FRF_AB_EE_VPD_EN_AD9_MODE_LBN 1 229*4882a593Smuzhiyun #define FRF_AB_EE_VPD_EN_AD9_MODE_WIDTH 1 230*4882a593Smuzhiyun #define FRF_AB_EE_VPD_EN_LBN 0 231*4882a593Smuzhiyun #define FRF_AB_EE_VPD_EN_WIDTH 1 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun /* EE_VPD_SW_CNTL_REG: VPD access SW control register */ 234*4882a593Smuzhiyun #define FR_AB_EE_VPD_SW_CNTL 0x00000150 235*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYCLE_PENDING_LBN 31 236*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYCLE_PENDING_WIDTH 1 237*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_WRITE_LBN 28 238*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_WRITE_WIDTH 1 239*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_ADR_LBN 0 240*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_ADR_WIDTH 15 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun /* EE_VPD_SW_DATA_REG: VPD access SW data register */ 243*4882a593Smuzhiyun #define FR_AB_EE_VPD_SW_DATA 0x00000160 244*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_DAT_LBN 0 245*4882a593Smuzhiyun #define FRF_AB_EE_VPD_CYC_DAT_WIDTH 32 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun /* PBMX_DBG_IADDR_REG: Capture Module address register */ 248*4882a593Smuzhiyun #define FR_CZ_PBMX_DBG_IADDR 0x000001f0 249*4882a593Smuzhiyun #define FRF_CZ_PBMX_DBG_IADDR_LBN 0 250*4882a593Smuzhiyun #define FRF_CZ_PBMX_DBG_IADDR_WIDTH 32 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun /* PCIE_CORE_INDIRECT_REG: Indirect Access to PCIE Core registers */ 253*4882a593Smuzhiyun #define FR_BB_PCIE_CORE_INDIRECT 0x000001f0 254*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_TARGET_DATA_LBN 32 255*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_TARGET_DATA_WIDTH 32 256*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_INDIRECT_ACCESS_DIR_LBN 15 257*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_INDIRECT_ACCESS_DIR_WIDTH 1 258*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_TARGET_REG_ADRS_LBN 0 259*4882a593Smuzhiyun #define FRF_BB_PCIE_CORE_TARGET_REG_ADRS_WIDTH 12 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun /* PBMX_DBG_IDATA_REG: Capture Module data register */ 262*4882a593Smuzhiyun #define FR_CZ_PBMX_DBG_IDATA 0x000001f8 263*4882a593Smuzhiyun #define FRF_CZ_PBMX_DBG_IDATA_LBN 0 264*4882a593Smuzhiyun #define FRF_CZ_PBMX_DBG_IDATA_WIDTH 64 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun /* NIC_STAT_REG: NIC status register */ 267*4882a593Smuzhiyun #define FR_AB_NIC_STAT 0x00000200 268*4882a593Smuzhiyun #define FRF_BB_AER_DIS_LBN 34 269*4882a593Smuzhiyun #define FRF_BB_AER_DIS_WIDTH 1 270*4882a593Smuzhiyun #define FRF_BB_EE_STRAP_EN_LBN 31 271*4882a593Smuzhiyun #define FRF_BB_EE_STRAP_EN_WIDTH 1 272*4882a593Smuzhiyun #define FRF_BB_EE_STRAP_LBN 24 273*4882a593Smuzhiyun #define FRF_BB_EE_STRAP_WIDTH 4 274*4882a593Smuzhiyun #define FRF_BB_REVISION_ID_LBN 17 275*4882a593Smuzhiyun #define FRF_BB_REVISION_ID_WIDTH 7 276*4882a593Smuzhiyun #define FRF_AB_ONCHIP_SRAM_LBN 16 277*4882a593Smuzhiyun #define FRF_AB_ONCHIP_SRAM_WIDTH 1 278*4882a593Smuzhiyun #define FRF_AB_SF_PRST_LBN 9 279*4882a593Smuzhiyun #define FRF_AB_SF_PRST_WIDTH 1 280*4882a593Smuzhiyun #define FRF_AB_EE_PRST_LBN 8 281*4882a593Smuzhiyun #define FRF_AB_EE_PRST_WIDTH 1 282*4882a593Smuzhiyun #define FRF_AB_ATE_MODE_LBN 3 283*4882a593Smuzhiyun #define FRF_AB_ATE_MODE_WIDTH 1 284*4882a593Smuzhiyun #define FRF_AB_STRAP_PINS_LBN 0 285*4882a593Smuzhiyun #define FRF_AB_STRAP_PINS_WIDTH 3 286*4882a593Smuzhiyun 287*4882a593Smuzhiyun /* GPIO_CTL_REG: GPIO control register */ 288*4882a593Smuzhiyun #define FR_AB_GPIO_CTL 0x00000210 289*4882a593Smuzhiyun #define FRF_AB_GPIO_OUT3_LBN 112 290*4882a593Smuzhiyun #define FRF_AB_GPIO_OUT3_WIDTH 16 291*4882a593Smuzhiyun #define FRF_AB_GPIO_IN3_LBN 104 292*4882a593Smuzhiyun #define FRF_AB_GPIO_IN3_WIDTH 8 293*4882a593Smuzhiyun #define FRF_AB_GPIO_PWRUP_VALUE3_LBN 96 294*4882a593Smuzhiyun #define FRF_AB_GPIO_PWRUP_VALUE3_WIDTH 8 295*4882a593Smuzhiyun #define FRF_AB_GPIO_OUT2_LBN 80 296*4882a593Smuzhiyun #define FRF_AB_GPIO_OUT2_WIDTH 16 297*4882a593Smuzhiyun #define FRF_AB_GPIO_IN2_LBN 72 298*4882a593Smuzhiyun #define FRF_AB_GPIO_IN2_WIDTH 8 299*4882a593Smuzhiyun #define FRF_AB_GPIO_PWRUP_VALUE2_LBN 64 300*4882a593Smuzhiyun #define FRF_AB_GPIO_PWRUP_VALUE2_WIDTH 8 301*4882a593Smuzhiyun #define FRF_AB_GPIO15_OEN_LBN 63 302*4882a593Smuzhiyun #define FRF_AB_GPIO15_OEN_WIDTH 1 303*4882a593Smuzhiyun #define FRF_AB_GPIO14_OEN_LBN 62 304*4882a593Smuzhiyun #define FRF_AB_GPIO14_OEN_WIDTH 1 305*4882a593Smuzhiyun #define FRF_AB_GPIO13_OEN_LBN 61 306*4882a593Smuzhiyun #define FRF_AB_GPIO13_OEN_WIDTH 1 307*4882a593Smuzhiyun #define FRF_AB_GPIO12_OEN_LBN 60 308*4882a593Smuzhiyun #define FRF_AB_GPIO12_OEN_WIDTH 1 309*4882a593Smuzhiyun #define FRF_AB_GPIO11_OEN_LBN 59 310*4882a593Smuzhiyun #define FRF_AB_GPIO11_OEN_WIDTH 1 311*4882a593Smuzhiyun #define FRF_AB_GPIO10_OEN_LBN 58 312*4882a593Smuzhiyun #define FRF_AB_GPIO10_OEN_WIDTH 1 313*4882a593Smuzhiyun #define FRF_AB_GPIO9_OEN_LBN 57 314*4882a593Smuzhiyun #define FRF_AB_GPIO9_OEN_WIDTH 1 315*4882a593Smuzhiyun #define FRF_AB_GPIO8_OEN_LBN 56 316*4882a593Smuzhiyun #define FRF_AB_GPIO8_OEN_WIDTH 1 317*4882a593Smuzhiyun #define FRF_AB_GPIO15_OUT_LBN 55 318*4882a593Smuzhiyun #define FRF_AB_GPIO15_OUT_WIDTH 1 319*4882a593Smuzhiyun #define FRF_AB_GPIO14_OUT_LBN 54 320*4882a593Smuzhiyun #define FRF_AB_GPIO14_OUT_WIDTH 1 321*4882a593Smuzhiyun #define FRF_AB_GPIO13_OUT_LBN 53 322*4882a593Smuzhiyun #define FRF_AB_GPIO13_OUT_WIDTH 1 323*4882a593Smuzhiyun #define FRF_AB_GPIO12_OUT_LBN 52 324*4882a593Smuzhiyun #define FRF_AB_GPIO12_OUT_WIDTH 1 325*4882a593Smuzhiyun #define FRF_AB_GPIO11_OUT_LBN 51 326*4882a593Smuzhiyun #define FRF_AB_GPIO11_OUT_WIDTH 1 327*4882a593Smuzhiyun #define FRF_AB_GPIO10_OUT_LBN 50 328*4882a593Smuzhiyun #define FRF_AB_GPIO10_OUT_WIDTH 1 329*4882a593Smuzhiyun #define FRF_AB_GPIO9_OUT_LBN 49 330*4882a593Smuzhiyun #define FRF_AB_GPIO9_OUT_WIDTH 1 331*4882a593Smuzhiyun #define FRF_AB_GPIO8_OUT_LBN 48 332*4882a593Smuzhiyun #define FRF_AB_GPIO8_OUT_WIDTH 1 333*4882a593Smuzhiyun #define FRF_AB_GPIO15_IN_LBN 47 334*4882a593Smuzhiyun #define FRF_AB_GPIO15_IN_WIDTH 1 335*4882a593Smuzhiyun #define FRF_AB_GPIO14_IN_LBN 46 336*4882a593Smuzhiyun #define FRF_AB_GPIO14_IN_WIDTH 1 337*4882a593Smuzhiyun #define FRF_AB_GPIO13_IN_LBN 45 338*4882a593Smuzhiyun #define FRF_AB_GPIO13_IN_WIDTH 1 339*4882a593Smuzhiyun #define FRF_AB_GPIO12_IN_LBN 44 340*4882a593Smuzhiyun #define FRF_AB_GPIO12_IN_WIDTH 1 341*4882a593Smuzhiyun #define FRF_AB_GPIO11_IN_LBN 43 342*4882a593Smuzhiyun #define FRF_AB_GPIO11_IN_WIDTH 1 343*4882a593Smuzhiyun #define FRF_AB_GPIO10_IN_LBN 42 344*4882a593Smuzhiyun #define FRF_AB_GPIO10_IN_WIDTH 1 345*4882a593Smuzhiyun #define FRF_AB_GPIO9_IN_LBN 41 346*4882a593Smuzhiyun #define FRF_AB_GPIO9_IN_WIDTH 1 347*4882a593Smuzhiyun #define FRF_AB_GPIO8_IN_LBN 40 348*4882a593Smuzhiyun #define FRF_AB_GPIO8_IN_WIDTH 1 349*4882a593Smuzhiyun #define FRF_AB_GPIO15_PWRUP_VALUE_LBN 39 350*4882a593Smuzhiyun #define FRF_AB_GPIO15_PWRUP_VALUE_WIDTH 1 351*4882a593Smuzhiyun #define FRF_AB_GPIO14_PWRUP_VALUE_LBN 38 352*4882a593Smuzhiyun #define FRF_AB_GPIO14_PWRUP_VALUE_WIDTH 1 353*4882a593Smuzhiyun #define FRF_AB_GPIO13_PWRUP_VALUE_LBN 37 354*4882a593Smuzhiyun #define FRF_AB_GPIO13_PWRUP_VALUE_WIDTH 1 355*4882a593Smuzhiyun #define FRF_AB_GPIO12_PWRUP_VALUE_LBN 36 356*4882a593Smuzhiyun #define FRF_AB_GPIO12_PWRUP_VALUE_WIDTH 1 357*4882a593Smuzhiyun #define FRF_AB_GPIO11_PWRUP_VALUE_LBN 35 358*4882a593Smuzhiyun #define FRF_AB_GPIO11_PWRUP_VALUE_WIDTH 1 359*4882a593Smuzhiyun #define FRF_AB_GPIO10_PWRUP_VALUE_LBN 34 360*4882a593Smuzhiyun #define FRF_AB_GPIO10_PWRUP_VALUE_WIDTH 1 361*4882a593Smuzhiyun #define FRF_AB_GPIO9_PWRUP_VALUE_LBN 33 362*4882a593Smuzhiyun #define FRF_AB_GPIO9_PWRUP_VALUE_WIDTH 1 363*4882a593Smuzhiyun #define FRF_AB_GPIO8_PWRUP_VALUE_LBN 32 364*4882a593Smuzhiyun #define FRF_AB_GPIO8_PWRUP_VALUE_WIDTH 1 365*4882a593Smuzhiyun #define FRF_AB_CLK156_OUT_EN_LBN 31 366*4882a593Smuzhiyun #define FRF_AB_CLK156_OUT_EN_WIDTH 1 367*4882a593Smuzhiyun #define FRF_AB_USE_NIC_CLK_LBN 30 368*4882a593Smuzhiyun #define FRF_AB_USE_NIC_CLK_WIDTH 1 369*4882a593Smuzhiyun #define FRF_AB_GPIO5_OEN_LBN 29 370*4882a593Smuzhiyun #define FRF_AB_GPIO5_OEN_WIDTH 1 371*4882a593Smuzhiyun #define FRF_AB_GPIO4_OEN_LBN 28 372*4882a593Smuzhiyun #define FRF_AB_GPIO4_OEN_WIDTH 1 373*4882a593Smuzhiyun #define FRF_AB_GPIO3_OEN_LBN 27 374*4882a593Smuzhiyun #define FRF_AB_GPIO3_OEN_WIDTH 1 375*4882a593Smuzhiyun #define FRF_AB_GPIO2_OEN_LBN 26 376*4882a593Smuzhiyun #define FRF_AB_GPIO2_OEN_WIDTH 1 377*4882a593Smuzhiyun #define FRF_AB_GPIO1_OEN_LBN 25 378*4882a593Smuzhiyun #define FRF_AB_GPIO1_OEN_WIDTH 1 379*4882a593Smuzhiyun #define FRF_AB_GPIO0_OEN_LBN 24 380*4882a593Smuzhiyun #define FRF_AB_GPIO0_OEN_WIDTH 1 381*4882a593Smuzhiyun #define FRF_AB_GPIO7_OUT_LBN 23 382*4882a593Smuzhiyun #define FRF_AB_GPIO7_OUT_WIDTH 1 383*4882a593Smuzhiyun #define FRF_AB_GPIO6_OUT_LBN 22 384*4882a593Smuzhiyun #define FRF_AB_GPIO6_OUT_WIDTH 1 385*4882a593Smuzhiyun #define FRF_AB_GPIO5_OUT_LBN 21 386*4882a593Smuzhiyun #define FRF_AB_GPIO5_OUT_WIDTH 1 387*4882a593Smuzhiyun #define FRF_AB_GPIO4_OUT_LBN 20 388*4882a593Smuzhiyun #define FRF_AB_GPIO4_OUT_WIDTH 1 389*4882a593Smuzhiyun #define FRF_AB_GPIO3_OUT_LBN 19 390*4882a593Smuzhiyun #define FRF_AB_GPIO3_OUT_WIDTH 1 391*4882a593Smuzhiyun #define FRF_AB_GPIO2_OUT_LBN 18 392*4882a593Smuzhiyun #define FRF_AB_GPIO2_OUT_WIDTH 1 393*4882a593Smuzhiyun #define FRF_AB_GPIO1_OUT_LBN 17 394*4882a593Smuzhiyun #define FRF_AB_GPIO1_OUT_WIDTH 1 395*4882a593Smuzhiyun #define FRF_AB_GPIO0_OUT_LBN 16 396*4882a593Smuzhiyun #define FRF_AB_GPIO0_OUT_WIDTH 1 397*4882a593Smuzhiyun #define FRF_AB_GPIO7_IN_LBN 15 398*4882a593Smuzhiyun #define FRF_AB_GPIO7_IN_WIDTH 1 399*4882a593Smuzhiyun #define FRF_AB_GPIO6_IN_LBN 14 400*4882a593Smuzhiyun #define FRF_AB_GPIO6_IN_WIDTH 1 401*4882a593Smuzhiyun #define FRF_AB_GPIO5_IN_LBN 13 402*4882a593Smuzhiyun #define FRF_AB_GPIO5_IN_WIDTH 1 403*4882a593Smuzhiyun #define FRF_AB_GPIO4_IN_LBN 12 404*4882a593Smuzhiyun #define FRF_AB_GPIO4_IN_WIDTH 1 405*4882a593Smuzhiyun #define FRF_AB_GPIO3_IN_LBN 11 406*4882a593Smuzhiyun #define FRF_AB_GPIO3_IN_WIDTH 1 407*4882a593Smuzhiyun #define FRF_AB_GPIO2_IN_LBN 10 408*4882a593Smuzhiyun #define FRF_AB_GPIO2_IN_WIDTH 1 409*4882a593Smuzhiyun #define FRF_AB_GPIO1_IN_LBN 9 410*4882a593Smuzhiyun #define FRF_AB_GPIO1_IN_WIDTH 1 411*4882a593Smuzhiyun #define FRF_AB_GPIO0_IN_LBN 8 412*4882a593Smuzhiyun #define FRF_AB_GPIO0_IN_WIDTH 1 413*4882a593Smuzhiyun #define FRF_AB_GPIO7_PWRUP_VALUE_LBN 7 414*4882a593Smuzhiyun #define FRF_AB_GPIO7_PWRUP_VALUE_WIDTH 1 415*4882a593Smuzhiyun #define FRF_AB_GPIO6_PWRUP_VALUE_LBN 6 416*4882a593Smuzhiyun #define FRF_AB_GPIO6_PWRUP_VALUE_WIDTH 1 417*4882a593Smuzhiyun #define FRF_AB_GPIO5_PWRUP_VALUE_LBN 5 418*4882a593Smuzhiyun #define FRF_AB_GPIO5_PWRUP_VALUE_WIDTH 1 419*4882a593Smuzhiyun #define FRF_AB_GPIO4_PWRUP_VALUE_LBN 4 420*4882a593Smuzhiyun #define FRF_AB_GPIO4_PWRUP_VALUE_WIDTH 1 421*4882a593Smuzhiyun #define FRF_AB_GPIO3_PWRUP_VALUE_LBN 3 422*4882a593Smuzhiyun #define FRF_AB_GPIO3_PWRUP_VALUE_WIDTH 1 423*4882a593Smuzhiyun #define FRF_AB_GPIO2_PWRUP_VALUE_LBN 2 424*4882a593Smuzhiyun #define FRF_AB_GPIO2_PWRUP_VALUE_WIDTH 1 425*4882a593Smuzhiyun #define FRF_AB_GPIO1_PWRUP_VALUE_LBN 1 426*4882a593Smuzhiyun #define FRF_AB_GPIO1_PWRUP_VALUE_WIDTH 1 427*4882a593Smuzhiyun #define FRF_AB_GPIO0_PWRUP_VALUE_LBN 0 428*4882a593Smuzhiyun #define FRF_AB_GPIO0_PWRUP_VALUE_WIDTH 1 429*4882a593Smuzhiyun 430*4882a593Smuzhiyun /* GLB_CTL_REG: Global control register */ 431*4882a593Smuzhiyun #define FR_AB_GLB_CTL 0x00000220 432*4882a593Smuzhiyun #define FRF_AB_EXT_PHY_RST_CTL_LBN 63 433*4882a593Smuzhiyun #define FRF_AB_EXT_PHY_RST_CTL_WIDTH 1 434*4882a593Smuzhiyun #define FRF_AB_XAUI_SD_RST_CTL_LBN 62 435*4882a593Smuzhiyun #define FRF_AB_XAUI_SD_RST_CTL_WIDTH 1 436*4882a593Smuzhiyun #define FRF_AB_PCIE_SD_RST_CTL_LBN 61 437*4882a593Smuzhiyun #define FRF_AB_PCIE_SD_RST_CTL_WIDTH 1 438*4882a593Smuzhiyun #define FRF_AA_PCIX_RST_CTL_LBN 60 439*4882a593Smuzhiyun #define FRF_AA_PCIX_RST_CTL_WIDTH 1 440*4882a593Smuzhiyun #define FRF_BB_BIU_RST_CTL_LBN 60 441*4882a593Smuzhiyun #define FRF_BB_BIU_RST_CTL_WIDTH 1 442*4882a593Smuzhiyun #define FRF_AB_PCIE_STKY_RST_CTL_LBN 59 443*4882a593Smuzhiyun #define FRF_AB_PCIE_STKY_RST_CTL_WIDTH 1 444*4882a593Smuzhiyun #define FRF_AB_PCIE_NSTKY_RST_CTL_LBN 58 445*4882a593Smuzhiyun #define FRF_AB_PCIE_NSTKY_RST_CTL_WIDTH 1 446*4882a593Smuzhiyun #define FRF_AB_PCIE_CORE_RST_CTL_LBN 57 447*4882a593Smuzhiyun #define FRF_AB_PCIE_CORE_RST_CTL_WIDTH 1 448*4882a593Smuzhiyun #define FRF_AB_XGRX_RST_CTL_LBN 56 449*4882a593Smuzhiyun #define FRF_AB_XGRX_RST_CTL_WIDTH 1 450*4882a593Smuzhiyun #define FRF_AB_XGTX_RST_CTL_LBN 55 451*4882a593Smuzhiyun #define FRF_AB_XGTX_RST_CTL_WIDTH 1 452*4882a593Smuzhiyun #define FRF_AB_EM_RST_CTL_LBN 54 453*4882a593Smuzhiyun #define FRF_AB_EM_RST_CTL_WIDTH 1 454*4882a593Smuzhiyun #define FRF_AB_EV_RST_CTL_LBN 53 455*4882a593Smuzhiyun #define FRF_AB_EV_RST_CTL_WIDTH 1 456*4882a593Smuzhiyun #define FRF_AB_SR_RST_CTL_LBN 52 457*4882a593Smuzhiyun #define FRF_AB_SR_RST_CTL_WIDTH 1 458*4882a593Smuzhiyun #define FRF_AB_RX_RST_CTL_LBN 51 459*4882a593Smuzhiyun #define FRF_AB_RX_RST_CTL_WIDTH 1 460*4882a593Smuzhiyun #define FRF_AB_TX_RST_CTL_LBN 50 461*4882a593Smuzhiyun #define FRF_AB_TX_RST_CTL_WIDTH 1 462*4882a593Smuzhiyun #define FRF_AB_EE_RST_CTL_LBN 49 463*4882a593Smuzhiyun #define FRF_AB_EE_RST_CTL_WIDTH 1 464*4882a593Smuzhiyun #define FRF_AB_CS_RST_CTL_LBN 48 465*4882a593Smuzhiyun #define FRF_AB_CS_RST_CTL_WIDTH 1 466*4882a593Smuzhiyun #define FRF_AB_HOT_RST_CTL_LBN 40 467*4882a593Smuzhiyun #define FRF_AB_HOT_RST_CTL_WIDTH 2 468*4882a593Smuzhiyun #define FRF_AB_RST_EXT_PHY_LBN 31 469*4882a593Smuzhiyun #define FRF_AB_RST_EXT_PHY_WIDTH 1 470*4882a593Smuzhiyun #define FRF_AB_RST_XAUI_SD_LBN 30 471*4882a593Smuzhiyun #define FRF_AB_RST_XAUI_SD_WIDTH 1 472*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_SD_LBN 29 473*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_SD_WIDTH 1 474*4882a593Smuzhiyun #define FRF_AA_RST_PCIX_LBN 28 475*4882a593Smuzhiyun #define FRF_AA_RST_PCIX_WIDTH 1 476*4882a593Smuzhiyun #define FRF_BB_RST_BIU_LBN 28 477*4882a593Smuzhiyun #define FRF_BB_RST_BIU_WIDTH 1 478*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_STKY_LBN 27 479*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_STKY_WIDTH 1 480*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_NSTKY_LBN 26 481*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_NSTKY_WIDTH 1 482*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_CORE_LBN 25 483*4882a593Smuzhiyun #define FRF_AB_RST_PCIE_CORE_WIDTH 1 484*4882a593Smuzhiyun #define FRF_AB_RST_XGRX_LBN 24 485*4882a593Smuzhiyun #define FRF_AB_RST_XGRX_WIDTH 1 486*4882a593Smuzhiyun #define FRF_AB_RST_XGTX_LBN 23 487*4882a593Smuzhiyun #define FRF_AB_RST_XGTX_WIDTH 1 488*4882a593Smuzhiyun #define FRF_AB_RST_EM_LBN 22 489*4882a593Smuzhiyun #define FRF_AB_RST_EM_WIDTH 1 490*4882a593Smuzhiyun #define FRF_AB_RST_EV_LBN 21 491*4882a593Smuzhiyun #define FRF_AB_RST_EV_WIDTH 1 492*4882a593Smuzhiyun #define FRF_AB_RST_SR_LBN 20 493*4882a593Smuzhiyun #define FRF_AB_RST_SR_WIDTH 1 494*4882a593Smuzhiyun #define FRF_AB_RST_RX_LBN 19 495*4882a593Smuzhiyun #define FRF_AB_RST_RX_WIDTH 1 496*4882a593Smuzhiyun #define FRF_AB_RST_TX_LBN 18 497*4882a593Smuzhiyun #define FRF_AB_RST_TX_WIDTH 1 498*4882a593Smuzhiyun #define FRF_AB_RST_SF_LBN 17 499*4882a593Smuzhiyun #define FRF_AB_RST_SF_WIDTH 1 500*4882a593Smuzhiyun #define FRF_AB_RST_CS_LBN 16 501*4882a593Smuzhiyun #define FRF_AB_RST_CS_WIDTH 1 502*4882a593Smuzhiyun #define FRF_AB_INT_RST_DUR_LBN 4 503*4882a593Smuzhiyun #define FRF_AB_INT_RST_DUR_WIDTH 3 504*4882a593Smuzhiyun #define FRF_AB_EXT_PHY_RST_DUR_LBN 1 505*4882a593Smuzhiyun #define FRF_AB_EXT_PHY_RST_DUR_WIDTH 3 506*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_10240US 7 507*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_5120US 6 508*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_2560US 5 509*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_1280US 4 510*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_640US 3 511*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_320US 2 512*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_160US 1 513*4882a593Smuzhiyun #define FFE_AB_EXT_PHY_RST_DUR_80US 0 514*4882a593Smuzhiyun #define FRF_AB_SWRST_LBN 0 515*4882a593Smuzhiyun #define FRF_AB_SWRST_WIDTH 1 516*4882a593Smuzhiyun 517*4882a593Smuzhiyun /* FATAL_INTR_REG_KER: Fatal interrupt register for Kernel */ 518*4882a593Smuzhiyun #define FR_AZ_FATAL_INTR_KER 0x00000230 519*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_KER_EN_LBN 44 520*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_KER_EN_WIDTH 1 521*4882a593Smuzhiyun #define FRF_AB_PCI_BUSERR_INT_KER_EN_LBN 43 522*4882a593Smuzhiyun #define FRF_AB_PCI_BUSERR_INT_KER_EN_WIDTH 1 523*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_KER_EN_LBN 43 524*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_KER_EN_WIDTH 1 525*4882a593Smuzhiyun #define FRF_AZ_SRAM_OOB_INT_KER_EN_LBN 42 526*4882a593Smuzhiyun #define FRF_AZ_SRAM_OOB_INT_KER_EN_WIDTH 1 527*4882a593Smuzhiyun #define FRF_AZ_BUFID_OOB_INT_KER_EN_LBN 41 528*4882a593Smuzhiyun #define FRF_AZ_BUFID_OOB_INT_KER_EN_WIDTH 1 529*4882a593Smuzhiyun #define FRF_AZ_MEM_PERR_INT_KER_EN_LBN 40 530*4882a593Smuzhiyun #define FRF_AZ_MEM_PERR_INT_KER_EN_WIDTH 1 531*4882a593Smuzhiyun #define FRF_AZ_RBUF_OWN_INT_KER_EN_LBN 39 532*4882a593Smuzhiyun #define FRF_AZ_RBUF_OWN_INT_KER_EN_WIDTH 1 533*4882a593Smuzhiyun #define FRF_AZ_TBUF_OWN_INT_KER_EN_LBN 38 534*4882a593Smuzhiyun #define FRF_AZ_TBUF_OWN_INT_KER_EN_WIDTH 1 535*4882a593Smuzhiyun #define FRF_AZ_RDESCQ_OWN_INT_KER_EN_LBN 37 536*4882a593Smuzhiyun #define FRF_AZ_RDESCQ_OWN_INT_KER_EN_WIDTH 1 537*4882a593Smuzhiyun #define FRF_AZ_TDESCQ_OWN_INT_KER_EN_LBN 36 538*4882a593Smuzhiyun #define FRF_AZ_TDESCQ_OWN_INT_KER_EN_WIDTH 1 539*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWN_INT_KER_EN_LBN 35 540*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWN_INT_KER_EN_WIDTH 1 541*4882a593Smuzhiyun #define FRF_AZ_EVF_OFLO_INT_KER_EN_LBN 34 542*4882a593Smuzhiyun #define FRF_AZ_EVF_OFLO_INT_KER_EN_WIDTH 1 543*4882a593Smuzhiyun #define FRF_AZ_ILL_ADR_INT_KER_EN_LBN 33 544*4882a593Smuzhiyun #define FRF_AZ_ILL_ADR_INT_KER_EN_WIDTH 1 545*4882a593Smuzhiyun #define FRF_AZ_SRM_PERR_INT_KER_EN_LBN 32 546*4882a593Smuzhiyun #define FRF_AZ_SRM_PERR_INT_KER_EN_WIDTH 1 547*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_KER_LBN 12 548*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_KER_WIDTH 1 549*4882a593Smuzhiyun #define FRF_AB_PCI_BUSERR_INT_KER_LBN 11 550*4882a593Smuzhiyun #define FRF_AB_PCI_BUSERR_INT_KER_WIDTH 1 551*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_KER_LBN 11 552*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_KER_WIDTH 1 553*4882a593Smuzhiyun #define FRF_AZ_SRAM_OOB_INT_KER_LBN 10 554*4882a593Smuzhiyun #define FRF_AZ_SRAM_OOB_INT_KER_WIDTH 1 555*4882a593Smuzhiyun #define FRF_AZ_BUFID_DC_OOB_INT_KER_LBN 9 556*4882a593Smuzhiyun #define FRF_AZ_BUFID_DC_OOB_INT_KER_WIDTH 1 557*4882a593Smuzhiyun #define FRF_AZ_MEM_PERR_INT_KER_LBN 8 558*4882a593Smuzhiyun #define FRF_AZ_MEM_PERR_INT_KER_WIDTH 1 559*4882a593Smuzhiyun #define FRF_AZ_RBUF_OWN_INT_KER_LBN 7 560*4882a593Smuzhiyun #define FRF_AZ_RBUF_OWN_INT_KER_WIDTH 1 561*4882a593Smuzhiyun #define FRF_AZ_TBUF_OWN_INT_KER_LBN 6 562*4882a593Smuzhiyun #define FRF_AZ_TBUF_OWN_INT_KER_WIDTH 1 563*4882a593Smuzhiyun #define FRF_AZ_RDESCQ_OWN_INT_KER_LBN 5 564*4882a593Smuzhiyun #define FRF_AZ_RDESCQ_OWN_INT_KER_WIDTH 1 565*4882a593Smuzhiyun #define FRF_AZ_TDESCQ_OWN_INT_KER_LBN 4 566*4882a593Smuzhiyun #define FRF_AZ_TDESCQ_OWN_INT_KER_WIDTH 1 567*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWN_INT_KER_LBN 3 568*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWN_INT_KER_WIDTH 1 569*4882a593Smuzhiyun #define FRF_AZ_EVF_OFLO_INT_KER_LBN 2 570*4882a593Smuzhiyun #define FRF_AZ_EVF_OFLO_INT_KER_WIDTH 1 571*4882a593Smuzhiyun #define FRF_AZ_ILL_ADR_INT_KER_LBN 1 572*4882a593Smuzhiyun #define FRF_AZ_ILL_ADR_INT_KER_WIDTH 1 573*4882a593Smuzhiyun #define FRF_AZ_SRM_PERR_INT_KER_LBN 0 574*4882a593Smuzhiyun #define FRF_AZ_SRM_PERR_INT_KER_WIDTH 1 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun /* FATAL_INTR_REG_CHAR: Fatal interrupt register for Char */ 577*4882a593Smuzhiyun #define FR_BZ_FATAL_INTR_CHAR 0x00000240 578*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_CHAR_EN_LBN 44 579*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_CHAR_EN_WIDTH 1 580*4882a593Smuzhiyun #define FRF_BB_PCI_BUSERR_INT_CHAR_EN_LBN 43 581*4882a593Smuzhiyun #define FRF_BB_PCI_BUSERR_INT_CHAR_EN_WIDTH 1 582*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_CHAR_EN_LBN 43 583*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_CHAR_EN_WIDTH 1 584*4882a593Smuzhiyun #define FRF_BZ_SRAM_OOB_INT_CHAR_EN_LBN 42 585*4882a593Smuzhiyun #define FRF_BZ_SRAM_OOB_INT_CHAR_EN_WIDTH 1 586*4882a593Smuzhiyun #define FRF_BZ_BUFID_OOB_INT_CHAR_EN_LBN 41 587*4882a593Smuzhiyun #define FRF_BZ_BUFID_OOB_INT_CHAR_EN_WIDTH 1 588*4882a593Smuzhiyun #define FRF_BZ_MEM_PERR_INT_CHAR_EN_LBN 40 589*4882a593Smuzhiyun #define FRF_BZ_MEM_PERR_INT_CHAR_EN_WIDTH 1 590*4882a593Smuzhiyun #define FRF_BZ_RBUF_OWN_INT_CHAR_EN_LBN 39 591*4882a593Smuzhiyun #define FRF_BZ_RBUF_OWN_INT_CHAR_EN_WIDTH 1 592*4882a593Smuzhiyun #define FRF_BZ_TBUF_OWN_INT_CHAR_EN_LBN 38 593*4882a593Smuzhiyun #define FRF_BZ_TBUF_OWN_INT_CHAR_EN_WIDTH 1 594*4882a593Smuzhiyun #define FRF_BZ_RDESCQ_OWN_INT_CHAR_EN_LBN 37 595*4882a593Smuzhiyun #define FRF_BZ_RDESCQ_OWN_INT_CHAR_EN_WIDTH 1 596*4882a593Smuzhiyun #define FRF_BZ_TDESCQ_OWN_INT_CHAR_EN_LBN 36 597*4882a593Smuzhiyun #define FRF_BZ_TDESCQ_OWN_INT_CHAR_EN_WIDTH 1 598*4882a593Smuzhiyun #define FRF_BZ_EVQ_OWN_INT_CHAR_EN_LBN 35 599*4882a593Smuzhiyun #define FRF_BZ_EVQ_OWN_INT_CHAR_EN_WIDTH 1 600*4882a593Smuzhiyun #define FRF_BZ_EVF_OFLO_INT_CHAR_EN_LBN 34 601*4882a593Smuzhiyun #define FRF_BZ_EVF_OFLO_INT_CHAR_EN_WIDTH 1 602*4882a593Smuzhiyun #define FRF_BZ_ILL_ADR_INT_CHAR_EN_LBN 33 603*4882a593Smuzhiyun #define FRF_BZ_ILL_ADR_INT_CHAR_EN_WIDTH 1 604*4882a593Smuzhiyun #define FRF_BZ_SRM_PERR_INT_CHAR_EN_LBN 32 605*4882a593Smuzhiyun #define FRF_BZ_SRM_PERR_INT_CHAR_EN_WIDTH 1 606*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_CHAR_LBN 12 607*4882a593Smuzhiyun #define FRF_CZ_SRAM_PERR_INT_P_CHAR_WIDTH 1 608*4882a593Smuzhiyun #define FRF_BB_PCI_BUSERR_INT_CHAR_LBN 11 609*4882a593Smuzhiyun #define FRF_BB_PCI_BUSERR_INT_CHAR_WIDTH 1 610*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_CHAR_LBN 11 611*4882a593Smuzhiyun #define FRF_CZ_MBU_PERR_INT_CHAR_WIDTH 1 612*4882a593Smuzhiyun #define FRF_BZ_SRAM_OOB_INT_CHAR_LBN 10 613*4882a593Smuzhiyun #define FRF_BZ_SRAM_OOB_INT_CHAR_WIDTH 1 614*4882a593Smuzhiyun #define FRF_BZ_BUFID_DC_OOB_INT_CHAR_LBN 9 615*4882a593Smuzhiyun #define FRF_BZ_BUFID_DC_OOB_INT_CHAR_WIDTH 1 616*4882a593Smuzhiyun #define FRF_BZ_MEM_PERR_INT_CHAR_LBN 8 617*4882a593Smuzhiyun #define FRF_BZ_MEM_PERR_INT_CHAR_WIDTH 1 618*4882a593Smuzhiyun #define FRF_BZ_RBUF_OWN_INT_CHAR_LBN 7 619*4882a593Smuzhiyun #define FRF_BZ_RBUF_OWN_INT_CHAR_WIDTH 1 620*4882a593Smuzhiyun #define FRF_BZ_TBUF_OWN_INT_CHAR_LBN 6 621*4882a593Smuzhiyun #define FRF_BZ_TBUF_OWN_INT_CHAR_WIDTH 1 622*4882a593Smuzhiyun #define FRF_BZ_RDESCQ_OWN_INT_CHAR_LBN 5 623*4882a593Smuzhiyun #define FRF_BZ_RDESCQ_OWN_INT_CHAR_WIDTH 1 624*4882a593Smuzhiyun #define FRF_BZ_TDESCQ_OWN_INT_CHAR_LBN 4 625*4882a593Smuzhiyun #define FRF_BZ_TDESCQ_OWN_INT_CHAR_WIDTH 1 626*4882a593Smuzhiyun #define FRF_BZ_EVQ_OWN_INT_CHAR_LBN 3 627*4882a593Smuzhiyun #define FRF_BZ_EVQ_OWN_INT_CHAR_WIDTH 1 628*4882a593Smuzhiyun #define FRF_BZ_EVF_OFLO_INT_CHAR_LBN 2 629*4882a593Smuzhiyun #define FRF_BZ_EVF_OFLO_INT_CHAR_WIDTH 1 630*4882a593Smuzhiyun #define FRF_BZ_ILL_ADR_INT_CHAR_LBN 1 631*4882a593Smuzhiyun #define FRF_BZ_ILL_ADR_INT_CHAR_WIDTH 1 632*4882a593Smuzhiyun #define FRF_BZ_SRM_PERR_INT_CHAR_LBN 0 633*4882a593Smuzhiyun #define FRF_BZ_SRM_PERR_INT_CHAR_WIDTH 1 634*4882a593Smuzhiyun 635*4882a593Smuzhiyun /* DP_CTRL_REG: Datapath control register */ 636*4882a593Smuzhiyun #define FR_BZ_DP_CTRL 0x00000250 637*4882a593Smuzhiyun #define FRF_BZ_FLS_EVQ_ID_LBN 0 638*4882a593Smuzhiyun #define FRF_BZ_FLS_EVQ_ID_WIDTH 12 639*4882a593Smuzhiyun 640*4882a593Smuzhiyun /* MEM_STAT_REG: Memory status register */ 641*4882a593Smuzhiyun #define FR_AZ_MEM_STAT 0x00000260 642*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_VEC_LBN 53 643*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_VEC_WIDTH 38 644*4882a593Smuzhiyun #define FRF_AB_MBIST_CORR_LBN 38 645*4882a593Smuzhiyun #define FRF_AB_MBIST_CORR_WIDTH 15 646*4882a593Smuzhiyun #define FRF_AB_MBIST_ERR_LBN 0 647*4882a593Smuzhiyun #define FRF_AB_MBIST_ERR_WIDTH 40 648*4882a593Smuzhiyun #define FRF_CZ_MEM_PERR_VEC_LBN 0 649*4882a593Smuzhiyun #define FRF_CZ_MEM_PERR_VEC_WIDTH 35 650*4882a593Smuzhiyun 651*4882a593Smuzhiyun /* CS_DEBUG_REG: Debug register */ 652*4882a593Smuzhiyun #define FR_AZ_CS_DEBUG 0x00000270 653*4882a593Smuzhiyun #define FRF_AB_GLB_DEBUG2_SEL_LBN 50 654*4882a593Smuzhiyun #define FRF_AB_GLB_DEBUG2_SEL_WIDTH 3 655*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL2_LBN 47 656*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL2_WIDTH 3 657*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL1_LBN 44 658*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL1_WIDTH 3 659*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL0_LBN 41 660*4882a593Smuzhiyun #define FRF_AB_DEBUG_BLK_SEL0_WIDTH 3 661*4882a593Smuzhiyun #define FRF_CZ_CS_PORT_NUM_LBN 40 662*4882a593Smuzhiyun #define FRF_CZ_CS_PORT_NUM_WIDTH 2 663*4882a593Smuzhiyun #define FRF_AB_MISC_DEBUG_ADDR_LBN 36 664*4882a593Smuzhiyun #define FRF_AB_MISC_DEBUG_ADDR_WIDTH 5 665*4882a593Smuzhiyun #define FRF_AB_SERDES_DEBUG_ADDR_LBN 31 666*4882a593Smuzhiyun #define FRF_AB_SERDES_DEBUG_ADDR_WIDTH 5 667*4882a593Smuzhiyun #define FRF_CZ_CS_PORT_FPE_LBN 1 668*4882a593Smuzhiyun #define FRF_CZ_CS_PORT_FPE_WIDTH 35 669*4882a593Smuzhiyun #define FRF_AB_EM_DEBUG_ADDR_LBN 26 670*4882a593Smuzhiyun #define FRF_AB_EM_DEBUG_ADDR_WIDTH 5 671*4882a593Smuzhiyun #define FRF_AB_SR_DEBUG_ADDR_LBN 21 672*4882a593Smuzhiyun #define FRF_AB_SR_DEBUG_ADDR_WIDTH 5 673*4882a593Smuzhiyun #define FRF_AB_EV_DEBUG_ADDR_LBN 16 674*4882a593Smuzhiyun #define FRF_AB_EV_DEBUG_ADDR_WIDTH 5 675*4882a593Smuzhiyun #define FRF_AB_RX_DEBUG_ADDR_LBN 11 676*4882a593Smuzhiyun #define FRF_AB_RX_DEBUG_ADDR_WIDTH 5 677*4882a593Smuzhiyun #define FRF_AB_TX_DEBUG_ADDR_LBN 6 678*4882a593Smuzhiyun #define FRF_AB_TX_DEBUG_ADDR_WIDTH 5 679*4882a593Smuzhiyun #define FRF_AB_CS_BIU_DEBUG_ADDR_LBN 1 680*4882a593Smuzhiyun #define FRF_AB_CS_BIU_DEBUG_ADDR_WIDTH 5 681*4882a593Smuzhiyun #define FRF_AZ_CS_DEBUG_EN_LBN 0 682*4882a593Smuzhiyun #define FRF_AZ_CS_DEBUG_EN_WIDTH 1 683*4882a593Smuzhiyun 684*4882a593Smuzhiyun /* DRIVER_REG: Driver scratch register [0-7] */ 685*4882a593Smuzhiyun #define FR_AZ_DRIVER 0x00000280 686*4882a593Smuzhiyun #define FR_AZ_DRIVER_STEP 16 687*4882a593Smuzhiyun #define FR_AZ_DRIVER_ROWS 8 688*4882a593Smuzhiyun #define FRF_AZ_DRIVER_DW0_LBN 0 689*4882a593Smuzhiyun #define FRF_AZ_DRIVER_DW0_WIDTH 32 690*4882a593Smuzhiyun 691*4882a593Smuzhiyun /* ALTERA_BUILD_REG: Altera build register */ 692*4882a593Smuzhiyun #define FR_AZ_ALTERA_BUILD 0x00000300 693*4882a593Smuzhiyun #define FRF_AZ_ALTERA_BUILD_VER_LBN 0 694*4882a593Smuzhiyun #define FRF_AZ_ALTERA_BUILD_VER_WIDTH 32 695*4882a593Smuzhiyun 696*4882a593Smuzhiyun /* CSR_SPARE_REG: Spare register */ 697*4882a593Smuzhiyun #define FR_AZ_CSR_SPARE 0x00000310 698*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_EN_LBN 64 699*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_EN_WIDTH 38 700*4882a593Smuzhiyun #define FRF_CZ_MEM_PERR_EN_LBN 64 701*4882a593Smuzhiyun #define FRF_CZ_MEM_PERR_EN_WIDTH 35 702*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_EN_TX_DATA_LBN 72 703*4882a593Smuzhiyun #define FRF_AB_MEM_PERR_EN_TX_DATA_WIDTH 2 704*4882a593Smuzhiyun #define FRF_AZ_CSR_SPARE_BITS_LBN 0 705*4882a593Smuzhiyun #define FRF_AZ_CSR_SPARE_BITS_WIDTH 32 706*4882a593Smuzhiyun 707*4882a593Smuzhiyun /* PCIE_SD_CTL0123_REG: PCIE SerDes control register 0 to 3 */ 708*4882a593Smuzhiyun #define FR_AB_PCIE_SD_CTL0123 0x00000320 709*4882a593Smuzhiyun #define FRF_AB_PCIE_TESTSIG_H_LBN 96 710*4882a593Smuzhiyun #define FRF_AB_PCIE_TESTSIG_H_WIDTH 19 711*4882a593Smuzhiyun #define FRF_AB_PCIE_TESTSIG_L_LBN 64 712*4882a593Smuzhiyun #define FRF_AB_PCIE_TESTSIG_L_WIDTH 19 713*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSET_LBN 56 714*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSET_WIDTH 8 715*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSETEN_H_LBN 55 716*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSETEN_H_WIDTH 1 717*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSETEN_L_LBN 54 718*4882a593Smuzhiyun #define FRF_AB_PCIE_OFFSETEN_L_WIDTH 1 719*4882a593Smuzhiyun #define FRF_AB_PCIE_HIVMODE_H_LBN 53 720*4882a593Smuzhiyun #define FRF_AB_PCIE_HIVMODE_H_WIDTH 1 721*4882a593Smuzhiyun #define FRF_AB_PCIE_HIVMODE_L_LBN 52 722*4882a593Smuzhiyun #define FRF_AB_PCIE_HIVMODE_L_WIDTH 1 723*4882a593Smuzhiyun #define FRF_AB_PCIE_PARRESET_H_LBN 51 724*4882a593Smuzhiyun #define FRF_AB_PCIE_PARRESET_H_WIDTH 1 725*4882a593Smuzhiyun #define FRF_AB_PCIE_PARRESET_L_LBN 50 726*4882a593Smuzhiyun #define FRF_AB_PCIE_PARRESET_L_WIDTH 1 727*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBKWDRV_H_LBN 49 728*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBKWDRV_H_WIDTH 1 729*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBKWDRV_L_LBN 48 730*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBKWDRV_L_WIDTH 1 731*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBK_LBN 40 732*4882a593Smuzhiyun #define FRF_AB_PCIE_LPBK_WIDTH 8 733*4882a593Smuzhiyun #define FRF_AB_PCIE_PARLPBK_LBN 32 734*4882a593Smuzhiyun #define FRF_AB_PCIE_PARLPBK_WIDTH 8 735*4882a593Smuzhiyun #define FRF_AB_PCIE_RXTERMADJ_H_LBN 30 736*4882a593Smuzhiyun #define FRF_AB_PCIE_RXTERMADJ_H_WIDTH 2 737*4882a593Smuzhiyun #define FRF_AB_PCIE_RXTERMADJ_L_LBN 28 738*4882a593Smuzhiyun #define FRF_AB_PCIE_RXTERMADJ_L_WIDTH 2 739*4882a593Smuzhiyun #define FFE_AB_PCIE_RXTERMADJ_MIN15PCNT 3 740*4882a593Smuzhiyun #define FFE_AB_PCIE_RXTERMADJ_PL10PCNT 2 741*4882a593Smuzhiyun #define FFE_AB_PCIE_RXTERMADJ_MIN17PCNT 1 742*4882a593Smuzhiyun #define FFE_AB_PCIE_RXTERMADJ_NOMNL 0 743*4882a593Smuzhiyun #define FRF_AB_PCIE_TXTERMADJ_H_LBN 26 744*4882a593Smuzhiyun #define FRF_AB_PCIE_TXTERMADJ_H_WIDTH 2 745*4882a593Smuzhiyun #define FRF_AB_PCIE_TXTERMADJ_L_LBN 24 746*4882a593Smuzhiyun #define FRF_AB_PCIE_TXTERMADJ_L_WIDTH 2 747*4882a593Smuzhiyun #define FFE_AB_PCIE_TXTERMADJ_MIN15PCNT 3 748*4882a593Smuzhiyun #define FFE_AB_PCIE_TXTERMADJ_PL10PCNT 2 749*4882a593Smuzhiyun #define FFE_AB_PCIE_TXTERMADJ_MIN17PCNT 1 750*4882a593Smuzhiyun #define FFE_AB_PCIE_TXTERMADJ_NOMNL 0 751*4882a593Smuzhiyun #define FRF_AB_PCIE_RXEQCTL_H_LBN 18 752*4882a593Smuzhiyun #define FRF_AB_PCIE_RXEQCTL_H_WIDTH 2 753*4882a593Smuzhiyun #define FRF_AB_PCIE_RXEQCTL_L_LBN 16 754*4882a593Smuzhiyun #define FRF_AB_PCIE_RXEQCTL_L_WIDTH 2 755*4882a593Smuzhiyun #define FFE_AB_PCIE_RXEQCTL_OFF_ALT 3 756*4882a593Smuzhiyun #define FFE_AB_PCIE_RXEQCTL_OFF 2 757*4882a593Smuzhiyun #define FFE_AB_PCIE_RXEQCTL_MIN 1 758*4882a593Smuzhiyun #define FFE_AB_PCIE_RXEQCTL_MAX 0 759*4882a593Smuzhiyun #define FRF_AB_PCIE_HIDRV_LBN 8 760*4882a593Smuzhiyun #define FRF_AB_PCIE_HIDRV_WIDTH 8 761*4882a593Smuzhiyun #define FRF_AB_PCIE_LODRV_LBN 0 762*4882a593Smuzhiyun #define FRF_AB_PCIE_LODRV_WIDTH 8 763*4882a593Smuzhiyun 764*4882a593Smuzhiyun /* PCIE_SD_CTL45_REG: PCIE SerDes control register 4 and 5 */ 765*4882a593Smuzhiyun #define FR_AB_PCIE_SD_CTL45 0x00000330 766*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX7_LBN 60 767*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX7_WIDTH 4 768*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX6_LBN 56 769*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX6_WIDTH 4 770*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX5_LBN 52 771*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX5_WIDTH 4 772*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX4_LBN 48 773*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX4_WIDTH 4 774*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX3_LBN 44 775*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX3_WIDTH 4 776*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX2_LBN 40 777*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX2_WIDTH 4 778*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX1_LBN 36 779*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX1_WIDTH 4 780*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX0_LBN 32 781*4882a593Smuzhiyun #define FRF_AB_PCIE_DTX0_WIDTH 4 782*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ7_LBN 28 783*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ7_WIDTH 4 784*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ6_LBN 24 785*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ6_WIDTH 4 786*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ5_LBN 20 787*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ5_WIDTH 4 788*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ4_LBN 16 789*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ4_WIDTH 4 790*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ3_LBN 12 791*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ3_WIDTH 4 792*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ2_LBN 8 793*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ2_WIDTH 4 794*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ1_LBN 4 795*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ1_WIDTH 4 796*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ0_LBN 0 797*4882a593Smuzhiyun #define FRF_AB_PCIE_DEQ0_WIDTH 4 798*4882a593Smuzhiyun 799*4882a593Smuzhiyun /* PCIE_PCS_CTL_STAT_REG: PCIE PCS control and status register */ 800*4882a593Smuzhiyun #define FR_AB_PCIE_PCS_CTL_STAT 0x00000340 801*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRCOUNT0_H_LBN 52 802*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRCOUNT0_H_WIDTH 4 803*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRCOUNT0_L_LBN 48 804*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRCOUNT0_L_WIDTH 4 805*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERR_LBN 40 806*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERR_WIDTH 8 807*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRH0_LBN 32 808*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRH0_WIDTH 8 809*4882a593Smuzhiyun #define FRF_AB_PCIE_FASTINIT_H_LBN 15 810*4882a593Smuzhiyun #define FRF_AB_PCIE_FASTINIT_H_WIDTH 1 811*4882a593Smuzhiyun #define FRF_AB_PCIE_FASTINIT_L_LBN 14 812*4882a593Smuzhiyun #define FRF_AB_PCIE_FASTINIT_L_WIDTH 1 813*4882a593Smuzhiyun #define FRF_AB_PCIE_CTCDISABLE_H_LBN 13 814*4882a593Smuzhiyun #define FRF_AB_PCIE_CTCDISABLE_H_WIDTH 1 815*4882a593Smuzhiyun #define FRF_AB_PCIE_CTCDISABLE_L_LBN 12 816*4882a593Smuzhiyun #define FRF_AB_PCIE_CTCDISABLE_L_WIDTH 1 817*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSYNC_H_LBN 11 818*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSYNC_H_WIDTH 1 819*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSYNC_L_LBN 10 820*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSYNC_L_WIDTH 1 821*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRACK_H_LBN 9 822*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRACK_H_WIDTH 1 823*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRACK_L_LBN 8 824*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSERRACK_L_WIDTH 1 825*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSEL_LBN 0 826*4882a593Smuzhiyun #define FRF_AB_PCIE_PRBSSEL_WIDTH 8 827*4882a593Smuzhiyun 828*4882a593Smuzhiyun /* DEBUG_DATA_OUT_REG: Live Debug and Debug 2 out ports */ 829*4882a593Smuzhiyun #define FR_BB_DEBUG_DATA_OUT 0x00000350 830*4882a593Smuzhiyun #define FRF_BB_DEBUG2_PORT_LBN 25 831*4882a593Smuzhiyun #define FRF_BB_DEBUG2_PORT_WIDTH 15 832*4882a593Smuzhiyun #define FRF_BB_DEBUG1_PORT_LBN 0 833*4882a593Smuzhiyun #define FRF_BB_DEBUG1_PORT_WIDTH 25 834*4882a593Smuzhiyun 835*4882a593Smuzhiyun /* EVQ_RPTR_REGP0: Event queue read pointer register */ 836*4882a593Smuzhiyun #define FR_BZ_EVQ_RPTR_P0 0x00000400 837*4882a593Smuzhiyun #define FR_BZ_EVQ_RPTR_P0_STEP 8192 838*4882a593Smuzhiyun #define FR_BZ_EVQ_RPTR_P0_ROWS 1024 839*4882a593Smuzhiyun /* EVQ_RPTR_REG_KER: Event queue read pointer register */ 840*4882a593Smuzhiyun #define FR_AA_EVQ_RPTR_KER 0x00011b00 841*4882a593Smuzhiyun #define FR_AA_EVQ_RPTR_KER_STEP 4 842*4882a593Smuzhiyun #define FR_AA_EVQ_RPTR_KER_ROWS 4 843*4882a593Smuzhiyun /* EVQ_RPTR_REG: Event queue read pointer register */ 844*4882a593Smuzhiyun #define FR_BZ_EVQ_RPTR 0x00fa0000 845*4882a593Smuzhiyun #define FR_BZ_EVQ_RPTR_STEP 16 846*4882a593Smuzhiyun #define FR_BB_EVQ_RPTR_ROWS 4096 847*4882a593Smuzhiyun #define FR_CZ_EVQ_RPTR_ROWS 1024 848*4882a593Smuzhiyun /* EVQ_RPTR_REGP123: Event queue read pointer register */ 849*4882a593Smuzhiyun #define FR_BB_EVQ_RPTR_P123 0x01000400 850*4882a593Smuzhiyun #define FR_BB_EVQ_RPTR_P123_STEP 8192 851*4882a593Smuzhiyun #define FR_BB_EVQ_RPTR_P123_ROWS 3072 852*4882a593Smuzhiyun #define FRF_AZ_EVQ_RPTR_VLD_LBN 15 853*4882a593Smuzhiyun #define FRF_AZ_EVQ_RPTR_VLD_WIDTH 1 854*4882a593Smuzhiyun #define FRF_AZ_EVQ_RPTR_LBN 0 855*4882a593Smuzhiyun #define FRF_AZ_EVQ_RPTR_WIDTH 15 856*4882a593Smuzhiyun 857*4882a593Smuzhiyun /* TIMER_COMMAND_REGP0: Timer Command Registers */ 858*4882a593Smuzhiyun #define FR_BZ_TIMER_COMMAND_P0 0x00000420 859*4882a593Smuzhiyun #define FR_BZ_TIMER_COMMAND_P0_STEP 8192 860*4882a593Smuzhiyun #define FR_BZ_TIMER_COMMAND_P0_ROWS 1024 861*4882a593Smuzhiyun /* TIMER_COMMAND_REG_KER: Timer Command Registers */ 862*4882a593Smuzhiyun #define FR_AA_TIMER_COMMAND_KER 0x00000420 863*4882a593Smuzhiyun #define FR_AA_TIMER_COMMAND_KER_STEP 8192 864*4882a593Smuzhiyun #define FR_AA_TIMER_COMMAND_KER_ROWS 4 865*4882a593Smuzhiyun /* TIMER_COMMAND_REGP123: Timer Command Registers */ 866*4882a593Smuzhiyun #define FR_BB_TIMER_COMMAND_P123 0x01000420 867*4882a593Smuzhiyun #define FR_BB_TIMER_COMMAND_P123_STEP 8192 868*4882a593Smuzhiyun #define FR_BB_TIMER_COMMAND_P123_ROWS 3072 869*4882a593Smuzhiyun #define FRF_CZ_TC_TIMER_MODE_LBN 14 870*4882a593Smuzhiyun #define FRF_CZ_TC_TIMER_MODE_WIDTH 2 871*4882a593Smuzhiyun #define FRF_AB_TC_TIMER_MODE_LBN 12 872*4882a593Smuzhiyun #define FRF_AB_TC_TIMER_MODE_WIDTH 2 873*4882a593Smuzhiyun #define FRF_CZ_TC_TIMER_VAL_LBN 0 874*4882a593Smuzhiyun #define FRF_CZ_TC_TIMER_VAL_WIDTH 14 875*4882a593Smuzhiyun #define FRF_AB_TC_TIMER_VAL_LBN 0 876*4882a593Smuzhiyun #define FRF_AB_TC_TIMER_VAL_WIDTH 12 877*4882a593Smuzhiyun 878*4882a593Smuzhiyun /* DRV_EV_REG: Driver generated event register */ 879*4882a593Smuzhiyun #define FR_AZ_DRV_EV 0x00000440 880*4882a593Smuzhiyun #define FRF_AZ_DRV_EV_QID_LBN 64 881*4882a593Smuzhiyun #define FRF_AZ_DRV_EV_QID_WIDTH 12 882*4882a593Smuzhiyun #define FRF_AZ_DRV_EV_DATA_LBN 0 883*4882a593Smuzhiyun #define FRF_AZ_DRV_EV_DATA_WIDTH 64 884*4882a593Smuzhiyun 885*4882a593Smuzhiyun /* EVQ_CTL_REG: Event queue control register */ 886*4882a593Smuzhiyun #define FR_AZ_EVQ_CTL 0x00000450 887*4882a593Smuzhiyun #define FRF_CZ_RX_EVQ_WAKEUP_MASK_LBN 15 888*4882a593Smuzhiyun #define FRF_CZ_RX_EVQ_WAKEUP_MASK_WIDTH 10 889*4882a593Smuzhiyun #define FRF_BB_RX_EVQ_WAKEUP_MASK_LBN 15 890*4882a593Smuzhiyun #define FRF_BB_RX_EVQ_WAKEUP_MASK_WIDTH 6 891*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWNERR_CTL_LBN 14 892*4882a593Smuzhiyun #define FRF_AZ_EVQ_OWNERR_CTL_WIDTH 1 893*4882a593Smuzhiyun #define FRF_AZ_EVQ_FIFO_AF_TH_LBN 7 894*4882a593Smuzhiyun #define FRF_AZ_EVQ_FIFO_AF_TH_WIDTH 7 895*4882a593Smuzhiyun #define FRF_AZ_EVQ_FIFO_NOTAF_TH_LBN 0 896*4882a593Smuzhiyun #define FRF_AZ_EVQ_FIFO_NOTAF_TH_WIDTH 7 897*4882a593Smuzhiyun 898*4882a593Smuzhiyun /* EVQ_CNT1_REG: Event counter 1 register */ 899*4882a593Smuzhiyun #define FR_AZ_EVQ_CNT1 0x00000460 900*4882a593Smuzhiyun #define FRF_AZ_EVQ_CNT_PRE_FIFO_LBN 120 901*4882a593Smuzhiyun #define FRF_AZ_EVQ_CNT_PRE_FIFO_WIDTH 7 902*4882a593Smuzhiyun #define FRF_AZ_EVQ_CNT_TOBIU_LBN 100 903*4882a593Smuzhiyun #define FRF_AZ_EVQ_CNT_TOBIU_WIDTH 20 904*4882a593Smuzhiyun #define FRF_AZ_EVQ_TX_REQ_CNT_LBN 80 905*4882a593Smuzhiyun #define FRF_AZ_EVQ_TX_REQ_CNT_WIDTH 20 906*4882a593Smuzhiyun #define FRF_AZ_EVQ_RX_REQ_CNT_LBN 60 907*4882a593Smuzhiyun #define FRF_AZ_EVQ_RX_REQ_CNT_WIDTH 20 908*4882a593Smuzhiyun #define FRF_AZ_EVQ_EM_REQ_CNT_LBN 40 909*4882a593Smuzhiyun #define FRF_AZ_EVQ_EM_REQ_CNT_WIDTH 20 910*4882a593Smuzhiyun #define FRF_AZ_EVQ_CSR_REQ_CNT_LBN 20 911*4882a593Smuzhiyun #define FRF_AZ_EVQ_CSR_REQ_CNT_WIDTH 20 912*4882a593Smuzhiyun #define FRF_AZ_EVQ_ERR_REQ_CNT_LBN 0 913*4882a593Smuzhiyun #define FRF_AZ_EVQ_ERR_REQ_CNT_WIDTH 20 914*4882a593Smuzhiyun 915*4882a593Smuzhiyun /* EVQ_CNT2_REG: Event counter 2 register */ 916*4882a593Smuzhiyun #define FR_AZ_EVQ_CNT2 0x00000470 917*4882a593Smuzhiyun #define FRF_AZ_EVQ_UPD_REQ_CNT_LBN 104 918*4882a593Smuzhiyun #define FRF_AZ_EVQ_UPD_REQ_CNT_WIDTH 20 919*4882a593Smuzhiyun #define FRF_AZ_EVQ_CLR_REQ_CNT_LBN 84 920*4882a593Smuzhiyun #define FRF_AZ_EVQ_CLR_REQ_CNT_WIDTH 20 921*4882a593Smuzhiyun #define FRF_AZ_EVQ_RDY_CNT_LBN 80 922*4882a593Smuzhiyun #define FRF_AZ_EVQ_RDY_CNT_WIDTH 4 923*4882a593Smuzhiyun #define FRF_AZ_EVQ_WU_REQ_CNT_LBN 60 924*4882a593Smuzhiyun #define FRF_AZ_EVQ_WU_REQ_CNT_WIDTH 20 925*4882a593Smuzhiyun #define FRF_AZ_EVQ_WET_REQ_CNT_LBN 40 926*4882a593Smuzhiyun #define FRF_AZ_EVQ_WET_REQ_CNT_WIDTH 20 927*4882a593Smuzhiyun #define FRF_AZ_EVQ_INIT_REQ_CNT_LBN 20 928*4882a593Smuzhiyun #define FRF_AZ_EVQ_INIT_REQ_CNT_WIDTH 20 929*4882a593Smuzhiyun #define FRF_AZ_EVQ_TM_REQ_CNT_LBN 0 930*4882a593Smuzhiyun #define FRF_AZ_EVQ_TM_REQ_CNT_WIDTH 20 931*4882a593Smuzhiyun 932*4882a593Smuzhiyun /* USR_EV_REG: Event mailbox register */ 933*4882a593Smuzhiyun #define FR_CZ_USR_EV 0x00000540 934*4882a593Smuzhiyun #define FR_CZ_USR_EV_STEP 8192 935*4882a593Smuzhiyun #define FR_CZ_USR_EV_ROWS 1024 936*4882a593Smuzhiyun #define FRF_CZ_USR_EV_DATA_LBN 0 937*4882a593Smuzhiyun #define FRF_CZ_USR_EV_DATA_WIDTH 32 938*4882a593Smuzhiyun 939*4882a593Smuzhiyun /* BUF_TBL_CFG_REG: Buffer table configuration register */ 940*4882a593Smuzhiyun #define FR_AZ_BUF_TBL_CFG 0x00000600 941*4882a593Smuzhiyun #define FRF_AZ_BUF_TBL_MODE_LBN 3 942*4882a593Smuzhiyun #define FRF_AZ_BUF_TBL_MODE_WIDTH 1 943*4882a593Smuzhiyun 944*4882a593Smuzhiyun /* SRM_RX_DC_CFG_REG: SRAM receive descriptor cache configuration register */ 945*4882a593Smuzhiyun #define FR_AZ_SRM_RX_DC_CFG 0x00000610 946*4882a593Smuzhiyun #define FRF_AZ_SRM_CLK_TMP_EN_LBN 21 947*4882a593Smuzhiyun #define FRF_AZ_SRM_CLK_TMP_EN_WIDTH 1 948*4882a593Smuzhiyun #define FRF_AZ_SRM_RX_DC_BASE_ADR_LBN 0 949*4882a593Smuzhiyun #define FRF_AZ_SRM_RX_DC_BASE_ADR_WIDTH 21 950*4882a593Smuzhiyun 951*4882a593Smuzhiyun /* SRM_TX_DC_CFG_REG: SRAM transmit descriptor cache configuration register */ 952*4882a593Smuzhiyun #define FR_AZ_SRM_TX_DC_CFG 0x00000620 953*4882a593Smuzhiyun #define FRF_AZ_SRM_TX_DC_BASE_ADR_LBN 0 954*4882a593Smuzhiyun #define FRF_AZ_SRM_TX_DC_BASE_ADR_WIDTH 21 955*4882a593Smuzhiyun 956*4882a593Smuzhiyun /* SRM_CFG_REG: SRAM configuration register */ 957*4882a593Smuzhiyun #define FR_AZ_SRM_CFG 0x00000630 958*4882a593Smuzhiyun #define FRF_AZ_SRM_OOB_ADR_INTEN_LBN 5 959*4882a593Smuzhiyun #define FRF_AZ_SRM_OOB_ADR_INTEN_WIDTH 1 960*4882a593Smuzhiyun #define FRF_AZ_SRM_OOB_BUF_INTEN_LBN 4 961*4882a593Smuzhiyun #define FRF_AZ_SRM_OOB_BUF_INTEN_WIDTH 1 962*4882a593Smuzhiyun #define FRF_AZ_SRM_INIT_EN_LBN 3 963*4882a593Smuzhiyun #define FRF_AZ_SRM_INIT_EN_WIDTH 1 964*4882a593Smuzhiyun #define FRF_AZ_SRM_NUM_BANK_LBN 2 965*4882a593Smuzhiyun #define FRF_AZ_SRM_NUM_BANK_WIDTH 1 966*4882a593Smuzhiyun #define FRF_AZ_SRM_BANK_SIZE_LBN 0 967*4882a593Smuzhiyun #define FRF_AZ_SRM_BANK_SIZE_WIDTH 2 968*4882a593Smuzhiyun 969*4882a593Smuzhiyun /* BUF_TBL_UPD_REG: Buffer table update register */ 970*4882a593Smuzhiyun #define FR_AZ_BUF_TBL_UPD 0x00000650 971*4882a593Smuzhiyun #define FRF_AZ_BUF_UPD_CMD_LBN 63 972*4882a593Smuzhiyun #define FRF_AZ_BUF_UPD_CMD_WIDTH 1 973*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_CMD_LBN 62 974*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_CMD_WIDTH 1 975*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_END_ID_LBN 32 976*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_END_ID_WIDTH 20 977*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_START_ID_LBN 0 978*4882a593Smuzhiyun #define FRF_AZ_BUF_CLR_START_ID_WIDTH 20 979*4882a593Smuzhiyun 980*4882a593Smuzhiyun /* SRM_UPD_EVQ_REG: Buffer table update register */ 981*4882a593Smuzhiyun #define FR_AZ_SRM_UPD_EVQ 0x00000660 982*4882a593Smuzhiyun #define FRF_AZ_SRM_UPD_EVQ_ID_LBN 0 983*4882a593Smuzhiyun #define FRF_AZ_SRM_UPD_EVQ_ID_WIDTH 12 984*4882a593Smuzhiyun 985*4882a593Smuzhiyun /* SRAM_PARITY_REG: SRAM parity register. */ 986*4882a593Smuzhiyun #define FR_AZ_SRAM_PARITY 0x00000670 987*4882a593Smuzhiyun #define FRF_CZ_BYPASS_ECC_LBN 3 988*4882a593Smuzhiyun #define FRF_CZ_BYPASS_ECC_WIDTH 1 989*4882a593Smuzhiyun #define FRF_CZ_SEC_INT_LBN 2 990*4882a593Smuzhiyun #define FRF_CZ_SEC_INT_WIDTH 1 991*4882a593Smuzhiyun #define FRF_CZ_FORCE_SRAM_DOUBLE_ERR_LBN 1 992*4882a593Smuzhiyun #define FRF_CZ_FORCE_SRAM_DOUBLE_ERR_WIDTH 1 993*4882a593Smuzhiyun #define FRF_AB_FORCE_SRAM_PERR_LBN 0 994*4882a593Smuzhiyun #define FRF_AB_FORCE_SRAM_PERR_WIDTH 1 995*4882a593Smuzhiyun #define FRF_CZ_FORCE_SRAM_SINGLE_ERR_LBN 0 996*4882a593Smuzhiyun #define FRF_CZ_FORCE_SRAM_SINGLE_ERR_WIDTH 1 997*4882a593Smuzhiyun 998*4882a593Smuzhiyun /* RX_CFG_REG: Receive configuration register */ 999*4882a593Smuzhiyun #define FR_AZ_RX_CFG 0x00000800 1000*4882a593Smuzhiyun #define FRF_CZ_RX_MIN_KBUF_SIZE_LBN 72 1001*4882a593Smuzhiyun #define FRF_CZ_RX_MIN_KBUF_SIZE_WIDTH 14 1002*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_EN_LBN 71 1003*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_EN_WIDTH 1 1004*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_PLD_BUF_SIZE_LBN 62 1005*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_PLD_BUF_SIZE_WIDTH 9 1006*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_HDR_BUF_SIZE_LBN 53 1007*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_HDR_BUF_SIZE_WIDTH 9 1008*4882a593Smuzhiyun #define FRF_CZ_RX_PRE_RFF_IPG_LBN 49 1009*4882a593Smuzhiyun #define FRF_CZ_RX_PRE_RFF_IPG_WIDTH 4 1010*4882a593Smuzhiyun #define FRF_BZ_RX_TCP_SUP_LBN 48 1011*4882a593Smuzhiyun #define FRF_BZ_RX_TCP_SUP_WIDTH 1 1012*4882a593Smuzhiyun #define FRF_BZ_RX_INGR_EN_LBN 47 1013*4882a593Smuzhiyun #define FRF_BZ_RX_INGR_EN_WIDTH 1 1014*4882a593Smuzhiyun #define FRF_BZ_RX_IP_HASH_LBN 46 1015*4882a593Smuzhiyun #define FRF_BZ_RX_IP_HASH_WIDTH 1 1016*4882a593Smuzhiyun #define FRF_BZ_RX_HASH_ALG_LBN 45 1017*4882a593Smuzhiyun #define FRF_BZ_RX_HASH_ALG_WIDTH 1 1018*4882a593Smuzhiyun #define FRF_BZ_RX_HASH_INSRT_HDR_LBN 44 1019*4882a593Smuzhiyun #define FRF_BZ_RX_HASH_INSRT_HDR_WIDTH 1 1020*4882a593Smuzhiyun #define FRF_BZ_RX_DESC_PUSH_EN_LBN 43 1021*4882a593Smuzhiyun #define FRF_BZ_RX_DESC_PUSH_EN_WIDTH 1 1022*4882a593Smuzhiyun #define FRF_BZ_RX_RDW_PATCH_EN_LBN 42 1023*4882a593Smuzhiyun #define FRF_BZ_RX_RDW_PATCH_EN_WIDTH 1 1024*4882a593Smuzhiyun #define FRF_BB_RX_PCI_BURST_SIZE_LBN 39 1025*4882a593Smuzhiyun #define FRF_BB_RX_PCI_BURST_SIZE_WIDTH 3 1026*4882a593Smuzhiyun #define FRF_BZ_RX_OWNERR_CTL_LBN 38 1027*4882a593Smuzhiyun #define FRF_BZ_RX_OWNERR_CTL_WIDTH 1 1028*4882a593Smuzhiyun #define FRF_BZ_RX_XON_TX_TH_LBN 33 1029*4882a593Smuzhiyun #define FRF_BZ_RX_XON_TX_TH_WIDTH 5 1030*4882a593Smuzhiyun #define FRF_AA_RX_DESC_PUSH_EN_LBN 35 1031*4882a593Smuzhiyun #define FRF_AA_RX_DESC_PUSH_EN_WIDTH 1 1032*4882a593Smuzhiyun #define FRF_AA_RX_RDW_PATCH_EN_LBN 34 1033*4882a593Smuzhiyun #define FRF_AA_RX_RDW_PATCH_EN_WIDTH 1 1034*4882a593Smuzhiyun #define FRF_AA_RX_PCI_BURST_SIZE_LBN 31 1035*4882a593Smuzhiyun #define FRF_AA_RX_PCI_BURST_SIZE_WIDTH 3 1036*4882a593Smuzhiyun #define FRF_BZ_RX_XOFF_TX_TH_LBN 28 1037*4882a593Smuzhiyun #define FRF_BZ_RX_XOFF_TX_TH_WIDTH 5 1038*4882a593Smuzhiyun #define FRF_AA_RX_OWNERR_CTL_LBN 30 1039*4882a593Smuzhiyun #define FRF_AA_RX_OWNERR_CTL_WIDTH 1 1040*4882a593Smuzhiyun #define FRF_AA_RX_XON_TX_TH_LBN 25 1041*4882a593Smuzhiyun #define FRF_AA_RX_XON_TX_TH_WIDTH 5 1042*4882a593Smuzhiyun #define FRF_BZ_RX_USR_BUF_SIZE_LBN 19 1043*4882a593Smuzhiyun #define FRF_BZ_RX_USR_BUF_SIZE_WIDTH 9 1044*4882a593Smuzhiyun #define FRF_AA_RX_XOFF_TX_TH_LBN 20 1045*4882a593Smuzhiyun #define FRF_AA_RX_XOFF_TX_TH_WIDTH 5 1046*4882a593Smuzhiyun #define FRF_AA_RX_USR_BUF_SIZE_LBN 11 1047*4882a593Smuzhiyun #define FRF_AA_RX_USR_BUF_SIZE_WIDTH 9 1048*4882a593Smuzhiyun #define FRF_BZ_RX_XON_MAC_TH_LBN 10 1049*4882a593Smuzhiyun #define FRF_BZ_RX_XON_MAC_TH_WIDTH 9 1050*4882a593Smuzhiyun #define FRF_AA_RX_XON_MAC_TH_LBN 6 1051*4882a593Smuzhiyun #define FRF_AA_RX_XON_MAC_TH_WIDTH 5 1052*4882a593Smuzhiyun #define FRF_BZ_RX_XOFF_MAC_TH_LBN 1 1053*4882a593Smuzhiyun #define FRF_BZ_RX_XOFF_MAC_TH_WIDTH 9 1054*4882a593Smuzhiyun #define FRF_AA_RX_XOFF_MAC_TH_LBN 1 1055*4882a593Smuzhiyun #define FRF_AA_RX_XOFF_MAC_TH_WIDTH 5 1056*4882a593Smuzhiyun #define FRF_AZ_RX_XOFF_MAC_EN_LBN 0 1057*4882a593Smuzhiyun #define FRF_AZ_RX_XOFF_MAC_EN_WIDTH 1 1058*4882a593Smuzhiyun 1059*4882a593Smuzhiyun /* RX_FILTER_CTL_REG: Receive filter control registers */ 1060*4882a593Smuzhiyun #define FR_BZ_RX_FILTER_CTL 0x00000810 1061*4882a593Smuzhiyun #define FRF_CZ_ETHERNET_WILDCARD_SEARCH_LIMIT_LBN 94 1062*4882a593Smuzhiyun #define FRF_CZ_ETHERNET_WILDCARD_SEARCH_LIMIT_WIDTH 8 1063*4882a593Smuzhiyun #define FRF_CZ_ETHERNET_FULL_SEARCH_LIMIT_LBN 86 1064*4882a593Smuzhiyun #define FRF_CZ_ETHERNET_FULL_SEARCH_LIMIT_WIDTH 8 1065*4882a593Smuzhiyun #define FRF_CZ_RX_FILTER_ALL_VLAN_ETHERTYPES_LBN 85 1066*4882a593Smuzhiyun #define FRF_CZ_RX_FILTER_ALL_VLAN_ETHERTYPES_WIDTH 1 1067*4882a593Smuzhiyun #define FRF_CZ_RX_VLAN_MATCH_ETHERTYPE_LBN 69 1068*4882a593Smuzhiyun #define FRF_CZ_RX_VLAN_MATCH_ETHERTYPE_WIDTH 16 1069*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_Q_ID_LBN 57 1070*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_Q_ID_WIDTH 12 1071*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_RSS_ENABLED_LBN 56 1072*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_RSS_ENABLED_WIDTH 1 1073*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_IP_OVERRIDE_LBN 55 1074*4882a593Smuzhiyun #define FRF_CZ_MULTICAST_NOMATCH_IP_OVERRIDE_WIDTH 1 1075*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_Q_ID_LBN 43 1076*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_Q_ID_WIDTH 12 1077*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_RSS_ENABLED_LBN 42 1078*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_RSS_ENABLED_WIDTH 1 1079*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_IP_OVERRIDE_LBN 41 1080*4882a593Smuzhiyun #define FRF_CZ_UNICAST_NOMATCH_IP_OVERRIDE_WIDTH 1 1081*4882a593Smuzhiyun #define FRF_BZ_SCATTER_ENBL_NO_MATCH_Q_LBN 40 1082*4882a593Smuzhiyun #define FRF_BZ_SCATTER_ENBL_NO_MATCH_Q_WIDTH 1 1083*4882a593Smuzhiyun #define FRF_BZ_UDP_FULL_SRCH_LIMIT_LBN 32 1084*4882a593Smuzhiyun #define FRF_BZ_UDP_FULL_SRCH_LIMIT_WIDTH 8 1085*4882a593Smuzhiyun #define FRF_BZ_NUM_KER_LBN 24 1086*4882a593Smuzhiyun #define FRF_BZ_NUM_KER_WIDTH 2 1087*4882a593Smuzhiyun #define FRF_BZ_UDP_WILD_SRCH_LIMIT_LBN 16 1088*4882a593Smuzhiyun #define FRF_BZ_UDP_WILD_SRCH_LIMIT_WIDTH 8 1089*4882a593Smuzhiyun #define FRF_BZ_TCP_WILD_SRCH_LIMIT_LBN 8 1090*4882a593Smuzhiyun #define FRF_BZ_TCP_WILD_SRCH_LIMIT_WIDTH 8 1091*4882a593Smuzhiyun #define FRF_BZ_TCP_FULL_SRCH_LIMIT_LBN 0 1092*4882a593Smuzhiyun #define FRF_BZ_TCP_FULL_SRCH_LIMIT_WIDTH 8 1093*4882a593Smuzhiyun 1094*4882a593Smuzhiyun /* RX_FLUSH_DESCQ_REG: Receive flush descriptor queue register */ 1095*4882a593Smuzhiyun #define FR_AZ_RX_FLUSH_DESCQ 0x00000820 1096*4882a593Smuzhiyun #define FRF_AZ_RX_FLUSH_DESCQ_CMD_LBN 24 1097*4882a593Smuzhiyun #define FRF_AZ_RX_FLUSH_DESCQ_CMD_WIDTH 1 1098*4882a593Smuzhiyun #define FRF_AZ_RX_FLUSH_DESCQ_LBN 0 1099*4882a593Smuzhiyun #define FRF_AZ_RX_FLUSH_DESCQ_WIDTH 12 1100*4882a593Smuzhiyun 1101*4882a593Smuzhiyun /* RX_DESC_UPD_REGP0: Receive descriptor update register. */ 1102*4882a593Smuzhiyun #define FR_BZ_RX_DESC_UPD_P0 0x00000830 1103*4882a593Smuzhiyun #define FR_BZ_RX_DESC_UPD_P0_STEP 8192 1104*4882a593Smuzhiyun #define FR_BZ_RX_DESC_UPD_P0_ROWS 1024 1105*4882a593Smuzhiyun /* RX_DESC_UPD_REG_KER: Receive descriptor update register. */ 1106*4882a593Smuzhiyun #define FR_AA_RX_DESC_UPD_KER 0x00000830 1107*4882a593Smuzhiyun #define FR_AA_RX_DESC_UPD_KER_STEP 8192 1108*4882a593Smuzhiyun #define FR_AA_RX_DESC_UPD_KER_ROWS 4 1109*4882a593Smuzhiyun /* RX_DESC_UPD_REGP123: Receive descriptor update register. */ 1110*4882a593Smuzhiyun #define FR_BB_RX_DESC_UPD_P123 0x01000830 1111*4882a593Smuzhiyun #define FR_BB_RX_DESC_UPD_P123_STEP 8192 1112*4882a593Smuzhiyun #define FR_BB_RX_DESC_UPD_P123_ROWS 3072 1113*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_WPTR_LBN 96 1114*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_WPTR_WIDTH 12 1115*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_PUSH_CMD_LBN 95 1116*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_PUSH_CMD_WIDTH 1 1117*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_LBN 0 1118*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_WIDTH 64 1119*4882a593Smuzhiyun 1120*4882a593Smuzhiyun /* RX_DC_CFG_REG: Receive descriptor cache configuration register */ 1121*4882a593Smuzhiyun #define FR_AZ_RX_DC_CFG 0x00000840 1122*4882a593Smuzhiyun #define FRF_AB_RX_MAX_PF_LBN 2 1123*4882a593Smuzhiyun #define FRF_AB_RX_MAX_PF_WIDTH 2 1124*4882a593Smuzhiyun #define FRF_AZ_RX_DC_SIZE_LBN 0 1125*4882a593Smuzhiyun #define FRF_AZ_RX_DC_SIZE_WIDTH 2 1126*4882a593Smuzhiyun #define FFE_AZ_RX_DC_SIZE_64 3 1127*4882a593Smuzhiyun #define FFE_AZ_RX_DC_SIZE_32 2 1128*4882a593Smuzhiyun #define FFE_AZ_RX_DC_SIZE_16 1 1129*4882a593Smuzhiyun #define FFE_AZ_RX_DC_SIZE_8 0 1130*4882a593Smuzhiyun 1131*4882a593Smuzhiyun /* RX_DC_PF_WM_REG: Receive descriptor cache pre-fetch watermark register */ 1132*4882a593Smuzhiyun #define FR_AZ_RX_DC_PF_WM 0x00000850 1133*4882a593Smuzhiyun #define FRF_AZ_RX_DC_PF_HWM_LBN 6 1134*4882a593Smuzhiyun #define FRF_AZ_RX_DC_PF_HWM_WIDTH 6 1135*4882a593Smuzhiyun #define FRF_AZ_RX_DC_PF_LWM_LBN 0 1136*4882a593Smuzhiyun #define FRF_AZ_RX_DC_PF_LWM_WIDTH 6 1137*4882a593Smuzhiyun 1138*4882a593Smuzhiyun /* RX_RSS_TKEY_REG: RSS Toeplitz hash key */ 1139*4882a593Smuzhiyun #define FR_BZ_RX_RSS_TKEY 0x00000860 1140*4882a593Smuzhiyun #define FRF_BZ_RX_RSS_TKEY_HI_LBN 64 1141*4882a593Smuzhiyun #define FRF_BZ_RX_RSS_TKEY_HI_WIDTH 64 1142*4882a593Smuzhiyun #define FRF_BZ_RX_RSS_TKEY_LO_LBN 0 1143*4882a593Smuzhiyun #define FRF_BZ_RX_RSS_TKEY_LO_WIDTH 64 1144*4882a593Smuzhiyun 1145*4882a593Smuzhiyun /* RX_NODESC_DROP_REG: Receive dropped packet counter register */ 1146*4882a593Smuzhiyun #define FR_AZ_RX_NODESC_DROP 0x00000880 1147*4882a593Smuzhiyun #define FRF_CZ_RX_NODESC_DROP_CNT_LBN 0 1148*4882a593Smuzhiyun #define FRF_CZ_RX_NODESC_DROP_CNT_WIDTH 32 1149*4882a593Smuzhiyun #define FRF_AB_RX_NODESC_DROP_CNT_LBN 0 1150*4882a593Smuzhiyun #define FRF_AB_RX_NODESC_DROP_CNT_WIDTH 16 1151*4882a593Smuzhiyun 1152*4882a593Smuzhiyun /* RX_SELF_RST_REG: Receive self reset register */ 1153*4882a593Smuzhiyun #define FR_AA_RX_SELF_RST 0x00000890 1154*4882a593Smuzhiyun #define FRF_AA_RX_ISCSI_DIS_LBN 17 1155*4882a593Smuzhiyun #define FRF_AA_RX_ISCSI_DIS_WIDTH 1 1156*4882a593Smuzhiyun #define FRF_AA_RX_SW_RST_REG_LBN 16 1157*4882a593Smuzhiyun #define FRF_AA_RX_SW_RST_REG_WIDTH 1 1158*4882a593Smuzhiyun #define FRF_AA_RX_NODESC_WAIT_DIS_LBN 9 1159*4882a593Smuzhiyun #define FRF_AA_RX_NODESC_WAIT_DIS_WIDTH 1 1160*4882a593Smuzhiyun #define FRF_AA_RX_SELF_RST_EN_LBN 8 1161*4882a593Smuzhiyun #define FRF_AA_RX_SELF_RST_EN_WIDTH 1 1162*4882a593Smuzhiyun #define FRF_AA_RX_MAX_PF_LAT_LBN 4 1163*4882a593Smuzhiyun #define FRF_AA_RX_MAX_PF_LAT_WIDTH 4 1164*4882a593Smuzhiyun #define FRF_AA_RX_MAX_LU_LAT_LBN 0 1165*4882a593Smuzhiyun #define FRF_AA_RX_MAX_LU_LAT_WIDTH 4 1166*4882a593Smuzhiyun 1167*4882a593Smuzhiyun /* RX_DEBUG_REG: undocumented register */ 1168*4882a593Smuzhiyun #define FR_AZ_RX_DEBUG 0x000008a0 1169*4882a593Smuzhiyun #define FRF_AZ_RX_DEBUG_LBN 0 1170*4882a593Smuzhiyun #define FRF_AZ_RX_DEBUG_WIDTH 64 1171*4882a593Smuzhiyun 1172*4882a593Smuzhiyun /* RX_PUSH_DROP_REG: Receive descriptor push dropped counter register */ 1173*4882a593Smuzhiyun #define FR_AZ_RX_PUSH_DROP 0x000008b0 1174*4882a593Smuzhiyun #define FRF_AZ_RX_PUSH_DROP_CNT_LBN 0 1175*4882a593Smuzhiyun #define FRF_AZ_RX_PUSH_DROP_CNT_WIDTH 32 1176*4882a593Smuzhiyun 1177*4882a593Smuzhiyun /* RX_RSS_IPV6_REG1: IPv6 RSS Toeplitz hash key low bytes */ 1178*4882a593Smuzhiyun #define FR_CZ_RX_RSS_IPV6_REG1 0x000008d0 1179*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_LO_LBN 0 1180*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_LO_WIDTH 128 1181*4882a593Smuzhiyun 1182*4882a593Smuzhiyun /* RX_RSS_IPV6_REG2: IPv6 RSS Toeplitz hash key middle bytes */ 1183*4882a593Smuzhiyun #define FR_CZ_RX_RSS_IPV6_REG2 0x000008e0 1184*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_MID_LBN 0 1185*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_MID_WIDTH 128 1186*4882a593Smuzhiyun 1187*4882a593Smuzhiyun /* RX_RSS_IPV6_REG3: IPv6 RSS Toeplitz hash key upper bytes and IPv6 RSS settings */ 1188*4882a593Smuzhiyun #define FR_CZ_RX_RSS_IPV6_REG3 0x000008f0 1189*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_THASH_ENABLE_LBN 66 1190*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_THASH_ENABLE_WIDTH 1 1191*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_IP_THASH_ENABLE_LBN 65 1192*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_IP_THASH_ENABLE_WIDTH 1 1193*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TCP_SUPPRESS_LBN 64 1194*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TCP_SUPPRESS_WIDTH 1 1195*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_HI_LBN 0 1196*4882a593Smuzhiyun #define FRF_CZ_RX_RSS_IPV6_TKEY_HI_WIDTH 64 1197*4882a593Smuzhiyun 1198*4882a593Smuzhiyun /* TX_FLUSH_DESCQ_REG: Transmit flush descriptor queue register */ 1199*4882a593Smuzhiyun #define FR_AZ_TX_FLUSH_DESCQ 0x00000a00 1200*4882a593Smuzhiyun #define FRF_AZ_TX_FLUSH_DESCQ_CMD_LBN 12 1201*4882a593Smuzhiyun #define FRF_AZ_TX_FLUSH_DESCQ_CMD_WIDTH 1 1202*4882a593Smuzhiyun #define FRF_AZ_TX_FLUSH_DESCQ_LBN 0 1203*4882a593Smuzhiyun #define FRF_AZ_TX_FLUSH_DESCQ_WIDTH 12 1204*4882a593Smuzhiyun 1205*4882a593Smuzhiyun /* TX_DESC_UPD_REGP0: Transmit descriptor update register. */ 1206*4882a593Smuzhiyun #define FR_BZ_TX_DESC_UPD_P0 0x00000a10 1207*4882a593Smuzhiyun #define FR_BZ_TX_DESC_UPD_P0_STEP 8192 1208*4882a593Smuzhiyun #define FR_BZ_TX_DESC_UPD_P0_ROWS 1024 1209*4882a593Smuzhiyun /* TX_DESC_UPD_REG_KER: Transmit descriptor update register. */ 1210*4882a593Smuzhiyun #define FR_AA_TX_DESC_UPD_KER 0x00000a10 1211*4882a593Smuzhiyun #define FR_AA_TX_DESC_UPD_KER_STEP 8192 1212*4882a593Smuzhiyun #define FR_AA_TX_DESC_UPD_KER_ROWS 8 1213*4882a593Smuzhiyun /* TX_DESC_UPD_REGP123: Transmit descriptor update register. */ 1214*4882a593Smuzhiyun #define FR_BB_TX_DESC_UPD_P123 0x01000a10 1215*4882a593Smuzhiyun #define FR_BB_TX_DESC_UPD_P123_STEP 8192 1216*4882a593Smuzhiyun #define FR_BB_TX_DESC_UPD_P123_ROWS 3072 1217*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_WPTR_LBN 96 1218*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_WPTR_WIDTH 12 1219*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_PUSH_CMD_LBN 95 1220*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_PUSH_CMD_WIDTH 1 1221*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_LBN 0 1222*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_WIDTH 95 1223*4882a593Smuzhiyun 1224*4882a593Smuzhiyun /* TX_DC_CFG_REG: Transmit descriptor cache configuration register */ 1225*4882a593Smuzhiyun #define FR_AZ_TX_DC_CFG 0x00000a20 1226*4882a593Smuzhiyun #define FRF_AZ_TX_DC_SIZE_LBN 0 1227*4882a593Smuzhiyun #define FRF_AZ_TX_DC_SIZE_WIDTH 2 1228*4882a593Smuzhiyun #define FFE_AZ_TX_DC_SIZE_32 2 1229*4882a593Smuzhiyun #define FFE_AZ_TX_DC_SIZE_16 1 1230*4882a593Smuzhiyun #define FFE_AZ_TX_DC_SIZE_8 0 1231*4882a593Smuzhiyun 1232*4882a593Smuzhiyun /* TX_CHKSM_CFG_REG: Transmit checksum configuration register */ 1233*4882a593Smuzhiyun #define FR_AA_TX_CHKSM_CFG 0x00000a30 1234*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_96_127_LBN 96 1235*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_96_127_WIDTH 32 1236*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_64_95_LBN 64 1237*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_64_95_WIDTH 32 1238*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_32_63_LBN 32 1239*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_32_63_WIDTH 32 1240*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_0_31_LBN 0 1241*4882a593Smuzhiyun #define FRF_AA_TX_Q_CHKSM_DIS_0_31_WIDTH 32 1242*4882a593Smuzhiyun 1243*4882a593Smuzhiyun /* TX_CFG_REG: Transmit configuration register */ 1244*4882a593Smuzhiyun #define FR_AZ_TX_CFG 0x00000a50 1245*4882a593Smuzhiyun #define FRF_CZ_TX_CONT_LOOKUP_THRESH_RANGE_LBN 114 1246*4882a593Smuzhiyun #define FRF_CZ_TX_CONT_LOOKUP_THRESH_RANGE_WIDTH 8 1247*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_TEST_MODE_BIT_LBN 113 1248*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_TEST_MODE_BIT_WIDTH 1 1249*4882a593Smuzhiyun #define FRF_CZ_TX_ETH_FILTER_WILD_SEARCH_RANGE_LBN 105 1250*4882a593Smuzhiyun #define FRF_CZ_TX_ETH_FILTER_WILD_SEARCH_RANGE_WIDTH 8 1251*4882a593Smuzhiyun #define FRF_CZ_TX_ETH_FILTER_FULL_SEARCH_RANGE_LBN 97 1252*4882a593Smuzhiyun #define FRF_CZ_TX_ETH_FILTER_FULL_SEARCH_RANGE_WIDTH 8 1253*4882a593Smuzhiyun #define FRF_CZ_TX_UDPIP_FILTER_WILD_SEARCH_RANGE_LBN 89 1254*4882a593Smuzhiyun #define FRF_CZ_TX_UDPIP_FILTER_WILD_SEARCH_RANGE_WIDTH 8 1255*4882a593Smuzhiyun #define FRF_CZ_TX_UDPIP_FILTER_FULL_SEARCH_RANGE_LBN 81 1256*4882a593Smuzhiyun #define FRF_CZ_TX_UDPIP_FILTER_FULL_SEARCH_RANGE_WIDTH 8 1257*4882a593Smuzhiyun #define FRF_CZ_TX_TCPIP_FILTER_WILD_SEARCH_RANGE_LBN 73 1258*4882a593Smuzhiyun #define FRF_CZ_TX_TCPIP_FILTER_WILD_SEARCH_RANGE_WIDTH 8 1259*4882a593Smuzhiyun #define FRF_CZ_TX_TCPIP_FILTER_FULL_SEARCH_RANGE_LBN 65 1260*4882a593Smuzhiyun #define FRF_CZ_TX_TCPIP_FILTER_FULL_SEARCH_RANGE_WIDTH 8 1261*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_ALL_VLAN_ETHERTYPES_BIT_LBN 64 1262*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_ALL_VLAN_ETHERTYPES_BIT_WIDTH 1 1263*4882a593Smuzhiyun #define FRF_CZ_TX_VLAN_MATCH_ETHERTYPE_RANGE_LBN 48 1264*4882a593Smuzhiyun #define FRF_CZ_TX_VLAN_MATCH_ETHERTYPE_RANGE_WIDTH 16 1265*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_EN_BIT_LBN 47 1266*4882a593Smuzhiyun #define FRF_CZ_TX_FILTER_EN_BIT_WIDTH 1 1267*4882a593Smuzhiyun #define FRF_AZ_TX_IP_ID_P0_OFS_LBN 16 1268*4882a593Smuzhiyun #define FRF_AZ_TX_IP_ID_P0_OFS_WIDTH 15 1269*4882a593Smuzhiyun #define FRF_AZ_TX_NO_EOP_DISC_EN_LBN 5 1270*4882a593Smuzhiyun #define FRF_AZ_TX_NO_EOP_DISC_EN_WIDTH 1 1271*4882a593Smuzhiyun #define FRF_AZ_TX_P1_PRI_EN_LBN 4 1272*4882a593Smuzhiyun #define FRF_AZ_TX_P1_PRI_EN_WIDTH 1 1273*4882a593Smuzhiyun #define FRF_AZ_TX_OWNERR_CTL_LBN 2 1274*4882a593Smuzhiyun #define FRF_AZ_TX_OWNERR_CTL_WIDTH 1 1275*4882a593Smuzhiyun #define FRF_AA_TX_NON_IP_DROP_DIS_LBN 1 1276*4882a593Smuzhiyun #define FRF_AA_TX_NON_IP_DROP_DIS_WIDTH 1 1277*4882a593Smuzhiyun #define FRF_AZ_TX_IP_ID_REP_EN_LBN 0 1278*4882a593Smuzhiyun #define FRF_AZ_TX_IP_ID_REP_EN_WIDTH 1 1279*4882a593Smuzhiyun 1280*4882a593Smuzhiyun /* TX_PUSH_DROP_REG: Transmit push dropped register */ 1281*4882a593Smuzhiyun #define FR_AZ_TX_PUSH_DROP 0x00000a60 1282*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_DROP_CNT_LBN 0 1283*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_DROP_CNT_WIDTH 32 1284*4882a593Smuzhiyun 1285*4882a593Smuzhiyun /* TX_RESERVED_REG: Transmit configuration register */ 1286*4882a593Smuzhiyun #define FR_AZ_TX_RESERVED 0x00000a80 1287*4882a593Smuzhiyun #define FRF_AZ_TX_EVT_CNT_LBN 121 1288*4882a593Smuzhiyun #define FRF_AZ_TX_EVT_CNT_WIDTH 7 1289*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_AGE_CNT_LBN 119 1290*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_AGE_CNT_WIDTH 2 1291*4882a593Smuzhiyun #define FRF_AZ_TX_RD_COMP_TMR_LBN 96 1292*4882a593Smuzhiyun #define FRF_AZ_TX_RD_COMP_TMR_WIDTH 23 1293*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_EN_LBN 89 1294*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_EN_WIDTH 1 1295*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_CHK_DIS_LBN 88 1296*4882a593Smuzhiyun #define FRF_AZ_TX_PUSH_CHK_DIS_WIDTH 1 1297*4882a593Smuzhiyun #define FRF_AZ_TX_D_FF_FULL_P0_LBN 85 1298*4882a593Smuzhiyun #define FRF_AZ_TX_D_FF_FULL_P0_WIDTH 1 1299*4882a593Smuzhiyun #define FRF_AZ_TX_DMAR_ST_P0_LBN 81 1300*4882a593Smuzhiyun #define FRF_AZ_TX_DMAR_ST_P0_WIDTH 1 1301*4882a593Smuzhiyun #define FRF_AZ_TX_DMAQ_ST_LBN 78 1302*4882a593Smuzhiyun #define FRF_AZ_TX_DMAQ_ST_WIDTH 1 1303*4882a593Smuzhiyun #define FRF_AZ_TX_RX_SPACER_LBN 64 1304*4882a593Smuzhiyun #define FRF_AZ_TX_RX_SPACER_WIDTH 8 1305*4882a593Smuzhiyun #define FRF_AZ_TX_DROP_ABORT_EN_LBN 60 1306*4882a593Smuzhiyun #define FRF_AZ_TX_DROP_ABORT_EN_WIDTH 1 1307*4882a593Smuzhiyun #define FRF_AZ_TX_SOFT_EVT_EN_LBN 59 1308*4882a593Smuzhiyun #define FRF_AZ_TX_SOFT_EVT_EN_WIDTH 1 1309*4882a593Smuzhiyun #define FRF_AZ_TX_PS_EVT_DIS_LBN 58 1310*4882a593Smuzhiyun #define FRF_AZ_TX_PS_EVT_DIS_WIDTH 1 1311*4882a593Smuzhiyun #define FRF_AZ_TX_RX_SPACER_EN_LBN 57 1312*4882a593Smuzhiyun #define FRF_AZ_TX_RX_SPACER_EN_WIDTH 1 1313*4882a593Smuzhiyun #define FRF_AZ_TX_XP_TIMER_LBN 52 1314*4882a593Smuzhiyun #define FRF_AZ_TX_XP_TIMER_WIDTH 5 1315*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_SPACER_LBN 44 1316*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_SPACER_WIDTH 8 1317*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_WD_TMR_LBN 22 1318*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_WD_TMR_WIDTH 22 1319*4882a593Smuzhiyun #define FRF_AZ_TX_ONLY1TAG_LBN 21 1320*4882a593Smuzhiyun #define FRF_AZ_TX_ONLY1TAG_WIDTH 1 1321*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_THRESHOLD_LBN 19 1322*4882a593Smuzhiyun #define FRF_AZ_TX_PREF_THRESHOLD_WIDTH 2 1323*4882a593Smuzhiyun #define FRF_AZ_TX_ONE_PKT_PER_Q_LBN 18 1324*4882a593Smuzhiyun #define FRF_AZ_TX_ONE_PKT_PER_Q_WIDTH 1 1325*4882a593Smuzhiyun #define FRF_AZ_TX_DIS_NON_IP_EV_LBN 17 1326*4882a593Smuzhiyun #define FRF_AZ_TX_DIS_NON_IP_EV_WIDTH 1 1327*4882a593Smuzhiyun #define FRF_AA_TX_DMA_FF_THR_LBN 16 1328*4882a593Smuzhiyun #define FRF_AA_TX_DMA_FF_THR_WIDTH 1 1329*4882a593Smuzhiyun #define FRF_AZ_TX_DMA_SPACER_LBN 8 1330*4882a593Smuzhiyun #define FRF_AZ_TX_DMA_SPACER_WIDTH 8 1331*4882a593Smuzhiyun #define FRF_AA_TX_TCP_DIS_LBN 7 1332*4882a593Smuzhiyun #define FRF_AA_TX_TCP_DIS_WIDTH 1 1333*4882a593Smuzhiyun #define FRF_BZ_TX_FLUSH_MIN_LEN_EN_LBN 7 1334*4882a593Smuzhiyun #define FRF_BZ_TX_FLUSH_MIN_LEN_EN_WIDTH 1 1335*4882a593Smuzhiyun #define FRF_AA_TX_IP_DIS_LBN 6 1336*4882a593Smuzhiyun #define FRF_AA_TX_IP_DIS_WIDTH 1 1337*4882a593Smuzhiyun #define FRF_AZ_TX_MAX_CPL_LBN 2 1338*4882a593Smuzhiyun #define FRF_AZ_TX_MAX_CPL_WIDTH 2 1339*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_CPL_16 3 1340*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_CPL_8 2 1341*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_CPL_4 1 1342*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_CPL_NOLIMIT 0 1343*4882a593Smuzhiyun #define FRF_AZ_TX_MAX_PREF_LBN 0 1344*4882a593Smuzhiyun #define FRF_AZ_TX_MAX_PREF_WIDTH 2 1345*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_PREF_32 3 1346*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_PREF_16 2 1347*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_PREF_8 1 1348*4882a593Smuzhiyun #define FFE_AZ_TX_MAX_PREF_OFF 0 1349*4882a593Smuzhiyun 1350*4882a593Smuzhiyun /* TX_PACE_REG: Transmit pace control register */ 1351*4882a593Smuzhiyun #define FR_BZ_TX_PACE 0x00000a90 1352*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_SB_NOT_AF_LBN 19 1353*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_SB_NOT_AF_WIDTH 10 1354*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_SB_AF_LBN 9 1355*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_SB_AF_WIDTH 10 1356*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_FB_BASE_LBN 5 1357*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_FB_BASE_WIDTH 4 1358*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_BIN_TH_LBN 0 1359*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_BIN_TH_WIDTH 5 1360*4882a593Smuzhiyun 1361*4882a593Smuzhiyun /* TX_PACE_DROP_QID_REG: PACE Drop QID Counter */ 1362*4882a593Smuzhiyun #define FR_BZ_TX_PACE_DROP_QID 0x00000aa0 1363*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_QID_DRP_CNT_LBN 0 1364*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_QID_DRP_CNT_WIDTH 16 1365*4882a593Smuzhiyun 1366*4882a593Smuzhiyun /* TX_VLAN_REG: Transmit VLAN tag register */ 1367*4882a593Smuzhiyun #define FR_BB_TX_VLAN 0x00000ae0 1368*4882a593Smuzhiyun #define FRF_BB_TX_VLAN_EN_LBN 127 1369*4882a593Smuzhiyun #define FRF_BB_TX_VLAN_EN_WIDTH 1 1370*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_PORT1_EN_LBN 125 1371*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_PORT1_EN_WIDTH 1 1372*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_PORT0_EN_LBN 124 1373*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_PORT0_EN_WIDTH 1 1374*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_LBN 112 1375*4882a593Smuzhiyun #define FRF_BB_TX_VLAN7_WIDTH 12 1376*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_PORT1_EN_LBN 109 1377*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_PORT1_EN_WIDTH 1 1378*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_PORT0_EN_LBN 108 1379*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_PORT0_EN_WIDTH 1 1380*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_LBN 96 1381*4882a593Smuzhiyun #define FRF_BB_TX_VLAN6_WIDTH 12 1382*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_PORT1_EN_LBN 93 1383*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_PORT1_EN_WIDTH 1 1384*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_PORT0_EN_LBN 92 1385*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_PORT0_EN_WIDTH 1 1386*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_LBN 80 1387*4882a593Smuzhiyun #define FRF_BB_TX_VLAN5_WIDTH 12 1388*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_PORT1_EN_LBN 77 1389*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_PORT1_EN_WIDTH 1 1390*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_PORT0_EN_LBN 76 1391*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_PORT0_EN_WIDTH 1 1392*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_LBN 64 1393*4882a593Smuzhiyun #define FRF_BB_TX_VLAN4_WIDTH 12 1394*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_PORT1_EN_LBN 61 1395*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_PORT1_EN_WIDTH 1 1396*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_PORT0_EN_LBN 60 1397*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_PORT0_EN_WIDTH 1 1398*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_LBN 48 1399*4882a593Smuzhiyun #define FRF_BB_TX_VLAN3_WIDTH 12 1400*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_PORT1_EN_LBN 45 1401*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_PORT1_EN_WIDTH 1 1402*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_PORT0_EN_LBN 44 1403*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_PORT0_EN_WIDTH 1 1404*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_LBN 32 1405*4882a593Smuzhiyun #define FRF_BB_TX_VLAN2_WIDTH 12 1406*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_PORT1_EN_LBN 29 1407*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_PORT1_EN_WIDTH 1 1408*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_PORT0_EN_LBN 28 1409*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_PORT0_EN_WIDTH 1 1410*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_LBN 16 1411*4882a593Smuzhiyun #define FRF_BB_TX_VLAN1_WIDTH 12 1412*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_PORT1_EN_LBN 13 1413*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_PORT1_EN_WIDTH 1 1414*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_PORT0_EN_LBN 12 1415*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_PORT0_EN_WIDTH 1 1416*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_LBN 0 1417*4882a593Smuzhiyun #define FRF_BB_TX_VLAN0_WIDTH 12 1418*4882a593Smuzhiyun 1419*4882a593Smuzhiyun /* TX_IPFIL_PORTEN_REG: Transmit filter control register */ 1420*4882a593Smuzhiyun #define FR_BZ_TX_IPFIL_PORTEN 0x00000af0 1421*4882a593Smuzhiyun #define FRF_BZ_TX_MADR0_FIL_EN_LBN 64 1422*4882a593Smuzhiyun #define FRF_BZ_TX_MADR0_FIL_EN_WIDTH 1 1423*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL31_PORT_EN_LBN 62 1424*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL31_PORT_EN_WIDTH 1 1425*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL30_PORT_EN_LBN 60 1426*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL30_PORT_EN_WIDTH 1 1427*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL29_PORT_EN_LBN 58 1428*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL29_PORT_EN_WIDTH 1 1429*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL28_PORT_EN_LBN 56 1430*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL28_PORT_EN_WIDTH 1 1431*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL27_PORT_EN_LBN 54 1432*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL27_PORT_EN_WIDTH 1 1433*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL26_PORT_EN_LBN 52 1434*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL26_PORT_EN_WIDTH 1 1435*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL25_PORT_EN_LBN 50 1436*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL25_PORT_EN_WIDTH 1 1437*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL24_PORT_EN_LBN 48 1438*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL24_PORT_EN_WIDTH 1 1439*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL23_PORT_EN_LBN 46 1440*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL23_PORT_EN_WIDTH 1 1441*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL22_PORT_EN_LBN 44 1442*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL22_PORT_EN_WIDTH 1 1443*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL21_PORT_EN_LBN 42 1444*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL21_PORT_EN_WIDTH 1 1445*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL20_PORT_EN_LBN 40 1446*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL20_PORT_EN_WIDTH 1 1447*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL19_PORT_EN_LBN 38 1448*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL19_PORT_EN_WIDTH 1 1449*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL18_PORT_EN_LBN 36 1450*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL18_PORT_EN_WIDTH 1 1451*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL17_PORT_EN_LBN 34 1452*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL17_PORT_EN_WIDTH 1 1453*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL16_PORT_EN_LBN 32 1454*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL16_PORT_EN_WIDTH 1 1455*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL15_PORT_EN_LBN 30 1456*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL15_PORT_EN_WIDTH 1 1457*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL14_PORT_EN_LBN 28 1458*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL14_PORT_EN_WIDTH 1 1459*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL13_PORT_EN_LBN 26 1460*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL13_PORT_EN_WIDTH 1 1461*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL12_PORT_EN_LBN 24 1462*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL12_PORT_EN_WIDTH 1 1463*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL11_PORT_EN_LBN 22 1464*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL11_PORT_EN_WIDTH 1 1465*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL10_PORT_EN_LBN 20 1466*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL10_PORT_EN_WIDTH 1 1467*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL9_PORT_EN_LBN 18 1468*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL9_PORT_EN_WIDTH 1 1469*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL8_PORT_EN_LBN 16 1470*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL8_PORT_EN_WIDTH 1 1471*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL7_PORT_EN_LBN 14 1472*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL7_PORT_EN_WIDTH 1 1473*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL6_PORT_EN_LBN 12 1474*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL6_PORT_EN_WIDTH 1 1475*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL5_PORT_EN_LBN 10 1476*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL5_PORT_EN_WIDTH 1 1477*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL4_PORT_EN_LBN 8 1478*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL4_PORT_EN_WIDTH 1 1479*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL3_PORT_EN_LBN 6 1480*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL3_PORT_EN_WIDTH 1 1481*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL2_PORT_EN_LBN 4 1482*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL2_PORT_EN_WIDTH 1 1483*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL1_PORT_EN_LBN 2 1484*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL1_PORT_EN_WIDTH 1 1485*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL0_PORT_EN_LBN 0 1486*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL0_PORT_EN_WIDTH 1 1487*4882a593Smuzhiyun 1488*4882a593Smuzhiyun /* TX_IPFIL_TBL: Transmit IP source address filter table */ 1489*4882a593Smuzhiyun #define FR_BB_TX_IPFIL_TBL 0x00000b00 1490*4882a593Smuzhiyun #define FR_BB_TX_IPFIL_TBL_STEP 16 1491*4882a593Smuzhiyun #define FR_BB_TX_IPFIL_TBL_ROWS 16 1492*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL_MASK_1_LBN 96 1493*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL_MASK_1_WIDTH 32 1494*4882a593Smuzhiyun #define FRF_BB_TX_IP_SRC_ADR_1_LBN 64 1495*4882a593Smuzhiyun #define FRF_BB_TX_IP_SRC_ADR_1_WIDTH 32 1496*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL_MASK_0_LBN 32 1497*4882a593Smuzhiyun #define FRF_BB_TX_IPFIL_MASK_0_WIDTH 32 1498*4882a593Smuzhiyun #define FRF_BB_TX_IP_SRC_ADR_0_LBN 0 1499*4882a593Smuzhiyun #define FRF_BB_TX_IP_SRC_ADR_0_WIDTH 32 1500*4882a593Smuzhiyun 1501*4882a593Smuzhiyun /* MD_TXD_REG: PHY management transmit data register */ 1502*4882a593Smuzhiyun #define FR_AB_MD_TXD 0x00000c00 1503*4882a593Smuzhiyun #define FRF_AB_MD_TXD_LBN 0 1504*4882a593Smuzhiyun #define FRF_AB_MD_TXD_WIDTH 16 1505*4882a593Smuzhiyun 1506*4882a593Smuzhiyun /* MD_RXD_REG: PHY management receive data register */ 1507*4882a593Smuzhiyun #define FR_AB_MD_RXD 0x00000c10 1508*4882a593Smuzhiyun #define FRF_AB_MD_RXD_LBN 0 1509*4882a593Smuzhiyun #define FRF_AB_MD_RXD_WIDTH 16 1510*4882a593Smuzhiyun 1511*4882a593Smuzhiyun /* MD_CS_REG: PHY management configuration & status register */ 1512*4882a593Smuzhiyun #define FR_AB_MD_CS 0x00000c20 1513*4882a593Smuzhiyun #define FRF_AB_MD_RD_EN_CMD_LBN 15 1514*4882a593Smuzhiyun #define FRF_AB_MD_RD_EN_CMD_WIDTH 1 1515*4882a593Smuzhiyun #define FRF_AB_MD_WR_EN_CMD_LBN 14 1516*4882a593Smuzhiyun #define FRF_AB_MD_WR_EN_CMD_WIDTH 1 1517*4882a593Smuzhiyun #define FRF_AB_MD_ADDR_CMD_LBN 13 1518*4882a593Smuzhiyun #define FRF_AB_MD_ADDR_CMD_WIDTH 1 1519*4882a593Smuzhiyun #define FRF_AB_MD_PT_LBN 7 1520*4882a593Smuzhiyun #define FRF_AB_MD_PT_WIDTH 3 1521*4882a593Smuzhiyun #define FRF_AB_MD_PL_LBN 6 1522*4882a593Smuzhiyun #define FRF_AB_MD_PL_WIDTH 1 1523*4882a593Smuzhiyun #define FRF_AB_MD_INT_CLR_LBN 5 1524*4882a593Smuzhiyun #define FRF_AB_MD_INT_CLR_WIDTH 1 1525*4882a593Smuzhiyun #define FRF_AB_MD_GC_LBN 4 1526*4882a593Smuzhiyun #define FRF_AB_MD_GC_WIDTH 1 1527*4882a593Smuzhiyun #define FRF_AB_MD_PRSP_LBN 3 1528*4882a593Smuzhiyun #define FRF_AB_MD_PRSP_WIDTH 1 1529*4882a593Smuzhiyun #define FRF_AB_MD_RIC_LBN 2 1530*4882a593Smuzhiyun #define FRF_AB_MD_RIC_WIDTH 1 1531*4882a593Smuzhiyun #define FRF_AB_MD_RDC_LBN 1 1532*4882a593Smuzhiyun #define FRF_AB_MD_RDC_WIDTH 1 1533*4882a593Smuzhiyun #define FRF_AB_MD_WRC_LBN 0 1534*4882a593Smuzhiyun #define FRF_AB_MD_WRC_WIDTH 1 1535*4882a593Smuzhiyun 1536*4882a593Smuzhiyun /* MD_PHY_ADR_REG: PHY management PHY address register */ 1537*4882a593Smuzhiyun #define FR_AB_MD_PHY_ADR 0x00000c30 1538*4882a593Smuzhiyun #define FRF_AB_MD_PHY_ADR_LBN 0 1539*4882a593Smuzhiyun #define FRF_AB_MD_PHY_ADR_WIDTH 16 1540*4882a593Smuzhiyun 1541*4882a593Smuzhiyun /* MD_ID_REG: PHY management ID register */ 1542*4882a593Smuzhiyun #define FR_AB_MD_ID 0x00000c40 1543*4882a593Smuzhiyun #define FRF_AB_MD_PRT_ADR_LBN 11 1544*4882a593Smuzhiyun #define FRF_AB_MD_PRT_ADR_WIDTH 5 1545*4882a593Smuzhiyun #define FRF_AB_MD_DEV_ADR_LBN 6 1546*4882a593Smuzhiyun #define FRF_AB_MD_DEV_ADR_WIDTH 5 1547*4882a593Smuzhiyun 1548*4882a593Smuzhiyun /* MD_STAT_REG: PHY management status & mask register */ 1549*4882a593Smuzhiyun #define FR_AB_MD_STAT 0x00000c50 1550*4882a593Smuzhiyun #define FRF_AB_MD_PINT_LBN 4 1551*4882a593Smuzhiyun #define FRF_AB_MD_PINT_WIDTH 1 1552*4882a593Smuzhiyun #define FRF_AB_MD_DONE_LBN 3 1553*4882a593Smuzhiyun #define FRF_AB_MD_DONE_WIDTH 1 1554*4882a593Smuzhiyun #define FRF_AB_MD_BSERR_LBN 2 1555*4882a593Smuzhiyun #define FRF_AB_MD_BSERR_WIDTH 1 1556*4882a593Smuzhiyun #define FRF_AB_MD_LNFL_LBN 1 1557*4882a593Smuzhiyun #define FRF_AB_MD_LNFL_WIDTH 1 1558*4882a593Smuzhiyun #define FRF_AB_MD_BSY_LBN 0 1559*4882a593Smuzhiyun #define FRF_AB_MD_BSY_WIDTH 1 1560*4882a593Smuzhiyun 1561*4882a593Smuzhiyun /* MAC_STAT_DMA_REG: Port MAC statistical counter DMA register */ 1562*4882a593Smuzhiyun #define FR_AB_MAC_STAT_DMA 0x00000c60 1563*4882a593Smuzhiyun #define FRF_AB_MAC_STAT_DMA_CMD_LBN 48 1564*4882a593Smuzhiyun #define FRF_AB_MAC_STAT_DMA_CMD_WIDTH 1 1565*4882a593Smuzhiyun #define FRF_AB_MAC_STAT_DMA_ADR_LBN 0 1566*4882a593Smuzhiyun #define FRF_AB_MAC_STAT_DMA_ADR_WIDTH 48 1567*4882a593Smuzhiyun 1568*4882a593Smuzhiyun /* MAC_CTRL_REG: Port MAC control register */ 1569*4882a593Smuzhiyun #define FR_AB_MAC_CTRL 0x00000c80 1570*4882a593Smuzhiyun #define FRF_AB_MAC_XOFF_VAL_LBN 16 1571*4882a593Smuzhiyun #define FRF_AB_MAC_XOFF_VAL_WIDTH 16 1572*4882a593Smuzhiyun #define FRF_BB_TXFIFO_DRAIN_EN_LBN 7 1573*4882a593Smuzhiyun #define FRF_BB_TXFIFO_DRAIN_EN_WIDTH 1 1574*4882a593Smuzhiyun #define FRF_AB_MAC_XG_DISTXCRC_LBN 5 1575*4882a593Smuzhiyun #define FRF_AB_MAC_XG_DISTXCRC_WIDTH 1 1576*4882a593Smuzhiyun #define FRF_AB_MAC_BCAD_ACPT_LBN 4 1577*4882a593Smuzhiyun #define FRF_AB_MAC_BCAD_ACPT_WIDTH 1 1578*4882a593Smuzhiyun #define FRF_AB_MAC_UC_PROM_LBN 3 1579*4882a593Smuzhiyun #define FRF_AB_MAC_UC_PROM_WIDTH 1 1580*4882a593Smuzhiyun #define FRF_AB_MAC_LINK_STATUS_LBN 2 1581*4882a593Smuzhiyun #define FRF_AB_MAC_LINK_STATUS_WIDTH 1 1582*4882a593Smuzhiyun #define FRF_AB_MAC_SPEED_LBN 0 1583*4882a593Smuzhiyun #define FRF_AB_MAC_SPEED_WIDTH 2 1584*4882a593Smuzhiyun #define FFE_AB_MAC_SPEED_10G 3 1585*4882a593Smuzhiyun #define FFE_AB_MAC_SPEED_1G 2 1586*4882a593Smuzhiyun #define FFE_AB_MAC_SPEED_100M 1 1587*4882a593Smuzhiyun #define FFE_AB_MAC_SPEED_10M 0 1588*4882a593Smuzhiyun 1589*4882a593Smuzhiyun /* GEN_MODE_REG: General Purpose mode register (external interrupt mask) */ 1590*4882a593Smuzhiyun #define FR_BB_GEN_MODE 0x00000c90 1591*4882a593Smuzhiyun #define FRF_BB_XFP_PHY_INT_POL_SEL_LBN 3 1592*4882a593Smuzhiyun #define FRF_BB_XFP_PHY_INT_POL_SEL_WIDTH 1 1593*4882a593Smuzhiyun #define FRF_BB_XG_PHY_INT_POL_SEL_LBN 2 1594*4882a593Smuzhiyun #define FRF_BB_XG_PHY_INT_POL_SEL_WIDTH 1 1595*4882a593Smuzhiyun #define FRF_BB_XFP_PHY_INT_MASK_LBN 1 1596*4882a593Smuzhiyun #define FRF_BB_XFP_PHY_INT_MASK_WIDTH 1 1597*4882a593Smuzhiyun #define FRF_BB_XG_PHY_INT_MASK_LBN 0 1598*4882a593Smuzhiyun #define FRF_BB_XG_PHY_INT_MASK_WIDTH 1 1599*4882a593Smuzhiyun 1600*4882a593Smuzhiyun /* MAC_MC_HASH_REG0: Multicast address hash table */ 1601*4882a593Smuzhiyun #define FR_AB_MAC_MC_HASH_REG0 0x00000ca0 1602*4882a593Smuzhiyun #define FRF_AB_MAC_MCAST_HASH0_LBN 0 1603*4882a593Smuzhiyun #define FRF_AB_MAC_MCAST_HASH0_WIDTH 128 1604*4882a593Smuzhiyun 1605*4882a593Smuzhiyun /* MAC_MC_HASH_REG1: Multicast address hash table */ 1606*4882a593Smuzhiyun #define FR_AB_MAC_MC_HASH_REG1 0x00000cb0 1607*4882a593Smuzhiyun #define FRF_AB_MAC_MCAST_HASH1_LBN 0 1608*4882a593Smuzhiyun #define FRF_AB_MAC_MCAST_HASH1_WIDTH 128 1609*4882a593Smuzhiyun 1610*4882a593Smuzhiyun /* GM_CFG1_REG: GMAC configuration register 1 */ 1611*4882a593Smuzhiyun #define FR_AB_GM_CFG1 0x00000e00 1612*4882a593Smuzhiyun #define FRF_AB_GM_SW_RST_LBN 31 1613*4882a593Smuzhiyun #define FRF_AB_GM_SW_RST_WIDTH 1 1614*4882a593Smuzhiyun #define FRF_AB_GM_SIM_RST_LBN 30 1615*4882a593Smuzhiyun #define FRF_AB_GM_SIM_RST_WIDTH 1 1616*4882a593Smuzhiyun #define FRF_AB_GM_RST_RX_MAC_CTL_LBN 19 1617*4882a593Smuzhiyun #define FRF_AB_GM_RST_RX_MAC_CTL_WIDTH 1 1618*4882a593Smuzhiyun #define FRF_AB_GM_RST_TX_MAC_CTL_LBN 18 1619*4882a593Smuzhiyun #define FRF_AB_GM_RST_TX_MAC_CTL_WIDTH 1 1620*4882a593Smuzhiyun #define FRF_AB_GM_RST_RX_FUNC_LBN 17 1621*4882a593Smuzhiyun #define FRF_AB_GM_RST_RX_FUNC_WIDTH 1 1622*4882a593Smuzhiyun #define FRF_AB_GM_RST_TX_FUNC_LBN 16 1623*4882a593Smuzhiyun #define FRF_AB_GM_RST_TX_FUNC_WIDTH 1 1624*4882a593Smuzhiyun #define FRF_AB_GM_LOOP_LBN 8 1625*4882a593Smuzhiyun #define FRF_AB_GM_LOOP_WIDTH 1 1626*4882a593Smuzhiyun #define FRF_AB_GM_RX_FC_EN_LBN 5 1627*4882a593Smuzhiyun #define FRF_AB_GM_RX_FC_EN_WIDTH 1 1628*4882a593Smuzhiyun #define FRF_AB_GM_TX_FC_EN_LBN 4 1629*4882a593Smuzhiyun #define FRF_AB_GM_TX_FC_EN_WIDTH 1 1630*4882a593Smuzhiyun #define FRF_AB_GM_SYNC_RXEN_LBN 3 1631*4882a593Smuzhiyun #define FRF_AB_GM_SYNC_RXEN_WIDTH 1 1632*4882a593Smuzhiyun #define FRF_AB_GM_RX_EN_LBN 2 1633*4882a593Smuzhiyun #define FRF_AB_GM_RX_EN_WIDTH 1 1634*4882a593Smuzhiyun #define FRF_AB_GM_SYNC_TXEN_LBN 1 1635*4882a593Smuzhiyun #define FRF_AB_GM_SYNC_TXEN_WIDTH 1 1636*4882a593Smuzhiyun #define FRF_AB_GM_TX_EN_LBN 0 1637*4882a593Smuzhiyun #define FRF_AB_GM_TX_EN_WIDTH 1 1638*4882a593Smuzhiyun 1639*4882a593Smuzhiyun /* GM_CFG2_REG: GMAC configuration register 2 */ 1640*4882a593Smuzhiyun #define FR_AB_GM_CFG2 0x00000e10 1641*4882a593Smuzhiyun #define FRF_AB_GM_PAMBL_LEN_LBN 12 1642*4882a593Smuzhiyun #define FRF_AB_GM_PAMBL_LEN_WIDTH 4 1643*4882a593Smuzhiyun #define FRF_AB_GM_IF_MODE_LBN 8 1644*4882a593Smuzhiyun #define FRF_AB_GM_IF_MODE_WIDTH 2 1645*4882a593Smuzhiyun #define FFE_AB_IF_MODE_BYTE_MODE 2 1646*4882a593Smuzhiyun #define FFE_AB_IF_MODE_NIBBLE_MODE 1 1647*4882a593Smuzhiyun #define FRF_AB_GM_HUGE_FRM_EN_LBN 5 1648*4882a593Smuzhiyun #define FRF_AB_GM_HUGE_FRM_EN_WIDTH 1 1649*4882a593Smuzhiyun #define FRF_AB_GM_LEN_CHK_LBN 4 1650*4882a593Smuzhiyun #define FRF_AB_GM_LEN_CHK_WIDTH 1 1651*4882a593Smuzhiyun #define FRF_AB_GM_PAD_CRC_EN_LBN 2 1652*4882a593Smuzhiyun #define FRF_AB_GM_PAD_CRC_EN_WIDTH 1 1653*4882a593Smuzhiyun #define FRF_AB_GM_CRC_EN_LBN 1 1654*4882a593Smuzhiyun #define FRF_AB_GM_CRC_EN_WIDTH 1 1655*4882a593Smuzhiyun #define FRF_AB_GM_FD_LBN 0 1656*4882a593Smuzhiyun #define FRF_AB_GM_FD_WIDTH 1 1657*4882a593Smuzhiyun 1658*4882a593Smuzhiyun /* GM_IPG_REG: GMAC IPG register */ 1659*4882a593Smuzhiyun #define FR_AB_GM_IPG 0x00000e20 1660*4882a593Smuzhiyun #define FRF_AB_GM_NONB2B_IPG1_LBN 24 1661*4882a593Smuzhiyun #define FRF_AB_GM_NONB2B_IPG1_WIDTH 7 1662*4882a593Smuzhiyun #define FRF_AB_GM_NONB2B_IPG2_LBN 16 1663*4882a593Smuzhiyun #define FRF_AB_GM_NONB2B_IPG2_WIDTH 7 1664*4882a593Smuzhiyun #define FRF_AB_GM_MIN_IPG_ENF_LBN 8 1665*4882a593Smuzhiyun #define FRF_AB_GM_MIN_IPG_ENF_WIDTH 8 1666*4882a593Smuzhiyun #define FRF_AB_GM_B2B_IPG_LBN 0 1667*4882a593Smuzhiyun #define FRF_AB_GM_B2B_IPG_WIDTH 7 1668*4882a593Smuzhiyun 1669*4882a593Smuzhiyun /* GM_HD_REG: GMAC half duplex register */ 1670*4882a593Smuzhiyun #define FR_AB_GM_HD 0x00000e30 1671*4882a593Smuzhiyun #define FRF_AB_GM_ALT_BOFF_VAL_LBN 20 1672*4882a593Smuzhiyun #define FRF_AB_GM_ALT_BOFF_VAL_WIDTH 4 1673*4882a593Smuzhiyun #define FRF_AB_GM_ALT_BOFF_EN_LBN 19 1674*4882a593Smuzhiyun #define FRF_AB_GM_ALT_BOFF_EN_WIDTH 1 1675*4882a593Smuzhiyun #define FRF_AB_GM_BP_NO_BOFF_LBN 18 1676*4882a593Smuzhiyun #define FRF_AB_GM_BP_NO_BOFF_WIDTH 1 1677*4882a593Smuzhiyun #define FRF_AB_GM_DIS_BOFF_LBN 17 1678*4882a593Smuzhiyun #define FRF_AB_GM_DIS_BOFF_WIDTH 1 1679*4882a593Smuzhiyun #define FRF_AB_GM_EXDEF_TX_EN_LBN 16 1680*4882a593Smuzhiyun #define FRF_AB_GM_EXDEF_TX_EN_WIDTH 1 1681*4882a593Smuzhiyun #define FRF_AB_GM_RTRY_LIMIT_LBN 12 1682*4882a593Smuzhiyun #define FRF_AB_GM_RTRY_LIMIT_WIDTH 4 1683*4882a593Smuzhiyun #define FRF_AB_GM_COL_WIN_LBN 0 1684*4882a593Smuzhiyun #define FRF_AB_GM_COL_WIN_WIDTH 10 1685*4882a593Smuzhiyun 1686*4882a593Smuzhiyun /* GM_MAX_FLEN_REG: GMAC maximum frame length register */ 1687*4882a593Smuzhiyun #define FR_AB_GM_MAX_FLEN 0x00000e40 1688*4882a593Smuzhiyun #define FRF_AB_GM_MAX_FLEN_LBN 0 1689*4882a593Smuzhiyun #define FRF_AB_GM_MAX_FLEN_WIDTH 16 1690*4882a593Smuzhiyun 1691*4882a593Smuzhiyun /* GM_TEST_REG: GMAC test register */ 1692*4882a593Smuzhiyun #define FR_AB_GM_TEST 0x00000e70 1693*4882a593Smuzhiyun #define FRF_AB_GM_MAX_BOFF_LBN 3 1694*4882a593Smuzhiyun #define FRF_AB_GM_MAX_BOFF_WIDTH 1 1695*4882a593Smuzhiyun #define FRF_AB_GM_REG_TX_FLOW_EN_LBN 2 1696*4882a593Smuzhiyun #define FRF_AB_GM_REG_TX_FLOW_EN_WIDTH 1 1697*4882a593Smuzhiyun #define FRF_AB_GM_TEST_PAUSE_LBN 1 1698*4882a593Smuzhiyun #define FRF_AB_GM_TEST_PAUSE_WIDTH 1 1699*4882a593Smuzhiyun #define FRF_AB_GM_SHORT_SLOT_LBN 0 1700*4882a593Smuzhiyun #define FRF_AB_GM_SHORT_SLOT_WIDTH 1 1701*4882a593Smuzhiyun 1702*4882a593Smuzhiyun /* GM_ADR1_REG: GMAC station address register 1 */ 1703*4882a593Smuzhiyun #define FR_AB_GM_ADR1 0x00000f00 1704*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B0_LBN 24 1705*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B0_WIDTH 8 1706*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B1_LBN 16 1707*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B1_WIDTH 8 1708*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B2_LBN 8 1709*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B2_WIDTH 8 1710*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B3_LBN 0 1711*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B3_WIDTH 8 1712*4882a593Smuzhiyun 1713*4882a593Smuzhiyun /* GM_ADR2_REG: GMAC station address register 2 */ 1714*4882a593Smuzhiyun #define FR_AB_GM_ADR2 0x00000f10 1715*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B4_LBN 24 1716*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B4_WIDTH 8 1717*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B5_LBN 16 1718*4882a593Smuzhiyun #define FRF_AB_GM_ADR_B5_WIDTH 8 1719*4882a593Smuzhiyun 1720*4882a593Smuzhiyun /* GMF_CFG0_REG: GMAC FIFO configuration register 0 */ 1721*4882a593Smuzhiyun #define FR_AB_GMF_CFG0 0x00000f20 1722*4882a593Smuzhiyun #define FRF_AB_GMF_FTFENRPLY_LBN 20 1723*4882a593Smuzhiyun #define FRF_AB_GMF_FTFENRPLY_WIDTH 1 1724*4882a593Smuzhiyun #define FRF_AB_GMF_STFENRPLY_LBN 19 1725*4882a593Smuzhiyun #define FRF_AB_GMF_STFENRPLY_WIDTH 1 1726*4882a593Smuzhiyun #define FRF_AB_GMF_FRFENRPLY_LBN 18 1727*4882a593Smuzhiyun #define FRF_AB_GMF_FRFENRPLY_WIDTH 1 1728*4882a593Smuzhiyun #define FRF_AB_GMF_SRFENRPLY_LBN 17 1729*4882a593Smuzhiyun #define FRF_AB_GMF_SRFENRPLY_WIDTH 1 1730*4882a593Smuzhiyun #define FRF_AB_GMF_WTMENRPLY_LBN 16 1731*4882a593Smuzhiyun #define FRF_AB_GMF_WTMENRPLY_WIDTH 1 1732*4882a593Smuzhiyun #define FRF_AB_GMF_FTFENREQ_LBN 12 1733*4882a593Smuzhiyun #define FRF_AB_GMF_FTFENREQ_WIDTH 1 1734*4882a593Smuzhiyun #define FRF_AB_GMF_STFENREQ_LBN 11 1735*4882a593Smuzhiyun #define FRF_AB_GMF_STFENREQ_WIDTH 1 1736*4882a593Smuzhiyun #define FRF_AB_GMF_FRFENREQ_LBN 10 1737*4882a593Smuzhiyun #define FRF_AB_GMF_FRFENREQ_WIDTH 1 1738*4882a593Smuzhiyun #define FRF_AB_GMF_SRFENREQ_LBN 9 1739*4882a593Smuzhiyun #define FRF_AB_GMF_SRFENREQ_WIDTH 1 1740*4882a593Smuzhiyun #define FRF_AB_GMF_WTMENREQ_LBN 8 1741*4882a593Smuzhiyun #define FRF_AB_GMF_WTMENREQ_WIDTH 1 1742*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTFT_LBN 4 1743*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTFT_WIDTH 1 1744*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTST_LBN 3 1745*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTST_WIDTH 1 1746*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTFR_LBN 2 1747*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTFR_WIDTH 1 1748*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTSR_LBN 1 1749*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTSR_WIDTH 1 1750*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTWT_LBN 0 1751*4882a593Smuzhiyun #define FRF_AB_GMF_HSTRSTWT_WIDTH 1 1752*4882a593Smuzhiyun 1753*4882a593Smuzhiyun /* GMF_CFG1_REG: GMAC FIFO configuration register 1 */ 1754*4882a593Smuzhiyun #define FR_AB_GMF_CFG1 0x00000f30 1755*4882a593Smuzhiyun #define FRF_AB_GMF_CFGFRTH_LBN 16 1756*4882a593Smuzhiyun #define FRF_AB_GMF_CFGFRTH_WIDTH 5 1757*4882a593Smuzhiyun #define FRF_AB_GMF_CFGXOFFRTX_LBN 0 1758*4882a593Smuzhiyun #define FRF_AB_GMF_CFGXOFFRTX_WIDTH 16 1759*4882a593Smuzhiyun 1760*4882a593Smuzhiyun /* GMF_CFG2_REG: GMAC FIFO configuration register 2 */ 1761*4882a593Smuzhiyun #define FR_AB_GMF_CFG2 0x00000f40 1762*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHWM_LBN 16 1763*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHWM_WIDTH 6 1764*4882a593Smuzhiyun #define FRF_AB_GMF_CFGLWM_LBN 0 1765*4882a593Smuzhiyun #define FRF_AB_GMF_CFGLWM_WIDTH 6 1766*4882a593Smuzhiyun 1767*4882a593Smuzhiyun /* GMF_CFG3_REG: GMAC FIFO configuration register 3 */ 1768*4882a593Smuzhiyun #define FR_AB_GMF_CFG3 0x00000f50 1769*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHWMFT_LBN 16 1770*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHWMFT_WIDTH 6 1771*4882a593Smuzhiyun #define FRF_AB_GMF_CFGFTTH_LBN 0 1772*4882a593Smuzhiyun #define FRF_AB_GMF_CFGFTTH_WIDTH 6 1773*4882a593Smuzhiyun 1774*4882a593Smuzhiyun /* GMF_CFG4_REG: GMAC FIFO configuration register 4 */ 1775*4882a593Smuzhiyun #define FR_AB_GMF_CFG4 0x00000f60 1776*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRM_LBN 0 1777*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRM_WIDTH 18 1778*4882a593Smuzhiyun 1779*4882a593Smuzhiyun /* GMF_CFG5_REG: GMAC FIFO configuration register 5 */ 1780*4882a593Smuzhiyun #define FR_AB_GMF_CFG5 0x00000f70 1781*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHDPLX_LBN 22 1782*4882a593Smuzhiyun #define FRF_AB_GMF_CFGHDPLX_WIDTH 1 1783*4882a593Smuzhiyun #define FRF_AB_GMF_SRFULL_LBN 21 1784*4882a593Smuzhiyun #define FRF_AB_GMF_SRFULL_WIDTH 1 1785*4882a593Smuzhiyun #define FRF_AB_GMF_HSTSRFULLCLR_LBN 20 1786*4882a593Smuzhiyun #define FRF_AB_GMF_HSTSRFULLCLR_WIDTH 1 1787*4882a593Smuzhiyun #define FRF_AB_GMF_CFGBYTMODE_LBN 19 1788*4882a593Smuzhiyun #define FRF_AB_GMF_CFGBYTMODE_WIDTH 1 1789*4882a593Smuzhiyun #define FRF_AB_GMF_HSTDRPLT64_LBN 18 1790*4882a593Smuzhiyun #define FRF_AB_GMF_HSTDRPLT64_WIDTH 1 1791*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRMDC_LBN 0 1792*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRMDC_WIDTH 18 1793*4882a593Smuzhiyun 1794*4882a593Smuzhiyun /* TX_SRC_MAC_TBL: Transmit IP source address filter table */ 1795*4882a593Smuzhiyun #define FR_BB_TX_SRC_MAC_TBL 0x00001000 1796*4882a593Smuzhiyun #define FR_BB_TX_SRC_MAC_TBL_STEP 16 1797*4882a593Smuzhiyun #define FR_BB_TX_SRC_MAC_TBL_ROWS 16 1798*4882a593Smuzhiyun #define FRF_BB_TX_SRC_MAC_ADR_1_LBN 64 1799*4882a593Smuzhiyun #define FRF_BB_TX_SRC_MAC_ADR_1_WIDTH 48 1800*4882a593Smuzhiyun #define FRF_BB_TX_SRC_MAC_ADR_0_LBN 0 1801*4882a593Smuzhiyun #define FRF_BB_TX_SRC_MAC_ADR_0_WIDTH 48 1802*4882a593Smuzhiyun 1803*4882a593Smuzhiyun /* TX_SRC_MAC_CTL_REG: Transmit MAC source address filter control */ 1804*4882a593Smuzhiyun #define FR_BB_TX_SRC_MAC_CTL 0x00001100 1805*4882a593Smuzhiyun #define FRF_BB_TX_SRC_DROP_CTR_LBN 16 1806*4882a593Smuzhiyun #define FRF_BB_TX_SRC_DROP_CTR_WIDTH 16 1807*4882a593Smuzhiyun #define FRF_BB_TX_SRC_FLTR_EN_LBN 15 1808*4882a593Smuzhiyun #define FRF_BB_TX_SRC_FLTR_EN_WIDTH 1 1809*4882a593Smuzhiyun #define FRF_BB_TX_DROP_CTR_CLR_LBN 12 1810*4882a593Smuzhiyun #define FRF_BB_TX_DROP_CTR_CLR_WIDTH 1 1811*4882a593Smuzhiyun #define FRF_BB_TX_MAC_QID_SEL_LBN 0 1812*4882a593Smuzhiyun #define FRF_BB_TX_MAC_QID_SEL_WIDTH 3 1813*4882a593Smuzhiyun 1814*4882a593Smuzhiyun /* XM_ADR_LO_REG: XGMAC address register low */ 1815*4882a593Smuzhiyun #define FR_AB_XM_ADR_LO 0x00001200 1816*4882a593Smuzhiyun #define FRF_AB_XM_ADR_LO_LBN 0 1817*4882a593Smuzhiyun #define FRF_AB_XM_ADR_LO_WIDTH 32 1818*4882a593Smuzhiyun 1819*4882a593Smuzhiyun /* XM_ADR_HI_REG: XGMAC address register high */ 1820*4882a593Smuzhiyun #define FR_AB_XM_ADR_HI 0x00001210 1821*4882a593Smuzhiyun #define FRF_AB_XM_ADR_HI_LBN 0 1822*4882a593Smuzhiyun #define FRF_AB_XM_ADR_HI_WIDTH 16 1823*4882a593Smuzhiyun 1824*4882a593Smuzhiyun /* XM_GLB_CFG_REG: XGMAC global configuration */ 1825*4882a593Smuzhiyun #define FR_AB_XM_GLB_CFG 0x00001220 1826*4882a593Smuzhiyun #define FRF_AB_XM_RMTFLT_GEN_LBN 17 1827*4882a593Smuzhiyun #define FRF_AB_XM_RMTFLT_GEN_WIDTH 1 1828*4882a593Smuzhiyun #define FRF_AB_XM_DEBUG_MODE_LBN 16 1829*4882a593Smuzhiyun #define FRF_AB_XM_DEBUG_MODE_WIDTH 1 1830*4882a593Smuzhiyun #define FRF_AB_XM_RX_STAT_EN_LBN 11 1831*4882a593Smuzhiyun #define FRF_AB_XM_RX_STAT_EN_WIDTH 1 1832*4882a593Smuzhiyun #define FRF_AB_XM_TX_STAT_EN_LBN 10 1833*4882a593Smuzhiyun #define FRF_AB_XM_TX_STAT_EN_WIDTH 1 1834*4882a593Smuzhiyun #define FRF_AB_XM_RX_JUMBO_MODE_LBN 6 1835*4882a593Smuzhiyun #define FRF_AB_XM_RX_JUMBO_MODE_WIDTH 1 1836*4882a593Smuzhiyun #define FRF_AB_XM_WAN_MODE_LBN 5 1837*4882a593Smuzhiyun #define FRF_AB_XM_WAN_MODE_WIDTH 1 1838*4882a593Smuzhiyun #define FRF_AB_XM_INTCLR_MODE_LBN 3 1839*4882a593Smuzhiyun #define FRF_AB_XM_INTCLR_MODE_WIDTH 1 1840*4882a593Smuzhiyun #define FRF_AB_XM_CORE_RST_LBN 0 1841*4882a593Smuzhiyun #define FRF_AB_XM_CORE_RST_WIDTH 1 1842*4882a593Smuzhiyun 1843*4882a593Smuzhiyun /* XM_TX_CFG_REG: XGMAC transmit configuration */ 1844*4882a593Smuzhiyun #define FR_AB_XM_TX_CFG 0x00001230 1845*4882a593Smuzhiyun #define FRF_AB_XM_TX_PROG_LBN 24 1846*4882a593Smuzhiyun #define FRF_AB_XM_TX_PROG_WIDTH 1 1847*4882a593Smuzhiyun #define FRF_AB_XM_IPG_LBN 16 1848*4882a593Smuzhiyun #define FRF_AB_XM_IPG_WIDTH 4 1849*4882a593Smuzhiyun #define FRF_AB_XM_FCNTL_LBN 10 1850*4882a593Smuzhiyun #define FRF_AB_XM_FCNTL_WIDTH 1 1851*4882a593Smuzhiyun #define FRF_AB_XM_TXCRC_LBN 8 1852*4882a593Smuzhiyun #define FRF_AB_XM_TXCRC_WIDTH 1 1853*4882a593Smuzhiyun #define FRF_AB_XM_EDRC_LBN 6 1854*4882a593Smuzhiyun #define FRF_AB_XM_EDRC_WIDTH 1 1855*4882a593Smuzhiyun #define FRF_AB_XM_AUTO_PAD_LBN 5 1856*4882a593Smuzhiyun #define FRF_AB_XM_AUTO_PAD_WIDTH 1 1857*4882a593Smuzhiyun #define FRF_AB_XM_TX_PRMBL_LBN 2 1858*4882a593Smuzhiyun #define FRF_AB_XM_TX_PRMBL_WIDTH 1 1859*4882a593Smuzhiyun #define FRF_AB_XM_TXEN_LBN 1 1860*4882a593Smuzhiyun #define FRF_AB_XM_TXEN_WIDTH 1 1861*4882a593Smuzhiyun #define FRF_AB_XM_TX_RST_LBN 0 1862*4882a593Smuzhiyun #define FRF_AB_XM_TX_RST_WIDTH 1 1863*4882a593Smuzhiyun 1864*4882a593Smuzhiyun /* XM_RX_CFG_REG: XGMAC receive configuration */ 1865*4882a593Smuzhiyun #define FR_AB_XM_RX_CFG 0x00001240 1866*4882a593Smuzhiyun #define FRF_AB_XM_PASS_LENERR_LBN 26 1867*4882a593Smuzhiyun #define FRF_AB_XM_PASS_LENERR_WIDTH 1 1868*4882a593Smuzhiyun #define FRF_AB_XM_PASS_CRC_ERR_LBN 25 1869*4882a593Smuzhiyun #define FRF_AB_XM_PASS_CRC_ERR_WIDTH 1 1870*4882a593Smuzhiyun #define FRF_AB_XM_PASS_PRMBLE_ERR_LBN 24 1871*4882a593Smuzhiyun #define FRF_AB_XM_PASS_PRMBLE_ERR_WIDTH 1 1872*4882a593Smuzhiyun #define FRF_AB_XM_REJ_BCAST_LBN 20 1873*4882a593Smuzhiyun #define FRF_AB_XM_REJ_BCAST_WIDTH 1 1874*4882a593Smuzhiyun #define FRF_AB_XM_ACPT_ALL_MCAST_LBN 11 1875*4882a593Smuzhiyun #define FRF_AB_XM_ACPT_ALL_MCAST_WIDTH 1 1876*4882a593Smuzhiyun #define FRF_AB_XM_ACPT_ALL_UCAST_LBN 9 1877*4882a593Smuzhiyun #define FRF_AB_XM_ACPT_ALL_UCAST_WIDTH 1 1878*4882a593Smuzhiyun #define FRF_AB_XM_AUTO_DEPAD_LBN 8 1879*4882a593Smuzhiyun #define FRF_AB_XM_AUTO_DEPAD_WIDTH 1 1880*4882a593Smuzhiyun #define FRF_AB_XM_RXCRC_LBN 3 1881*4882a593Smuzhiyun #define FRF_AB_XM_RXCRC_WIDTH 1 1882*4882a593Smuzhiyun #define FRF_AB_XM_RX_PRMBL_LBN 2 1883*4882a593Smuzhiyun #define FRF_AB_XM_RX_PRMBL_WIDTH 1 1884*4882a593Smuzhiyun #define FRF_AB_XM_RXEN_LBN 1 1885*4882a593Smuzhiyun #define FRF_AB_XM_RXEN_WIDTH 1 1886*4882a593Smuzhiyun #define FRF_AB_XM_RX_RST_LBN 0 1887*4882a593Smuzhiyun #define FRF_AB_XM_RX_RST_WIDTH 1 1888*4882a593Smuzhiyun 1889*4882a593Smuzhiyun /* XM_MGT_INT_MASK: documentation to be written for sum_XM_MGT_INT_MASK */ 1890*4882a593Smuzhiyun #define FR_AB_XM_MGT_INT_MASK 0x00001250 1891*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STA_INTR_LBN 16 1892*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STA_INTR_WIDTH 1 1893*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STAT_CNTR_HF_LBN 9 1894*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STAT_CNTR_HF_WIDTH 1 1895*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STAT_CNTR_OF_LBN 8 1896*4882a593Smuzhiyun #define FRF_AB_XM_MSK_STAT_CNTR_OF_WIDTH 1 1897*4882a593Smuzhiyun #define FRF_AB_XM_MSK_PRMBLE_ERR_LBN 2 1898*4882a593Smuzhiyun #define FRF_AB_XM_MSK_PRMBLE_ERR_WIDTH 1 1899*4882a593Smuzhiyun #define FRF_AB_XM_MSK_RMTFLT_LBN 1 1900*4882a593Smuzhiyun #define FRF_AB_XM_MSK_RMTFLT_WIDTH 1 1901*4882a593Smuzhiyun #define FRF_AB_XM_MSK_LCLFLT_LBN 0 1902*4882a593Smuzhiyun #define FRF_AB_XM_MSK_LCLFLT_WIDTH 1 1903*4882a593Smuzhiyun 1904*4882a593Smuzhiyun /* XM_FC_REG: XGMAC flow control register */ 1905*4882a593Smuzhiyun #define FR_AB_XM_FC 0x00001270 1906*4882a593Smuzhiyun #define FRF_AB_XM_PAUSE_TIME_LBN 16 1907*4882a593Smuzhiyun #define FRF_AB_XM_PAUSE_TIME_WIDTH 16 1908*4882a593Smuzhiyun #define FRF_AB_XM_RX_MAC_STAT_LBN 11 1909*4882a593Smuzhiyun #define FRF_AB_XM_RX_MAC_STAT_WIDTH 1 1910*4882a593Smuzhiyun #define FRF_AB_XM_TX_MAC_STAT_LBN 10 1911*4882a593Smuzhiyun #define FRF_AB_XM_TX_MAC_STAT_WIDTH 1 1912*4882a593Smuzhiyun #define FRF_AB_XM_MCNTL_PASS_LBN 8 1913*4882a593Smuzhiyun #define FRF_AB_XM_MCNTL_PASS_WIDTH 2 1914*4882a593Smuzhiyun #define FRF_AB_XM_REJ_CNTL_UCAST_LBN 6 1915*4882a593Smuzhiyun #define FRF_AB_XM_REJ_CNTL_UCAST_WIDTH 1 1916*4882a593Smuzhiyun #define FRF_AB_XM_REJ_CNTL_MCAST_LBN 5 1917*4882a593Smuzhiyun #define FRF_AB_XM_REJ_CNTL_MCAST_WIDTH 1 1918*4882a593Smuzhiyun #define FRF_AB_XM_ZPAUSE_LBN 2 1919*4882a593Smuzhiyun #define FRF_AB_XM_ZPAUSE_WIDTH 1 1920*4882a593Smuzhiyun #define FRF_AB_XM_XMIT_PAUSE_LBN 1 1921*4882a593Smuzhiyun #define FRF_AB_XM_XMIT_PAUSE_WIDTH 1 1922*4882a593Smuzhiyun #define FRF_AB_XM_DIS_FCNTL_LBN 0 1923*4882a593Smuzhiyun #define FRF_AB_XM_DIS_FCNTL_WIDTH 1 1924*4882a593Smuzhiyun 1925*4882a593Smuzhiyun /* XM_PAUSE_TIME_REG: XGMAC pause time register */ 1926*4882a593Smuzhiyun #define FR_AB_XM_PAUSE_TIME 0x00001290 1927*4882a593Smuzhiyun #define FRF_AB_XM_TX_PAUSE_CNT_LBN 16 1928*4882a593Smuzhiyun #define FRF_AB_XM_TX_PAUSE_CNT_WIDTH 16 1929*4882a593Smuzhiyun #define FRF_AB_XM_RX_PAUSE_CNT_LBN 0 1930*4882a593Smuzhiyun #define FRF_AB_XM_RX_PAUSE_CNT_WIDTH 16 1931*4882a593Smuzhiyun 1932*4882a593Smuzhiyun /* XM_TX_PARAM_REG: XGMAC transmit parameter register */ 1933*4882a593Smuzhiyun #define FR_AB_XM_TX_PARAM 0x000012d0 1934*4882a593Smuzhiyun #define FRF_AB_XM_TX_JUMBO_MODE_LBN 31 1935*4882a593Smuzhiyun #define FRF_AB_XM_TX_JUMBO_MODE_WIDTH 1 1936*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_HI_LBN 19 1937*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_HI_WIDTH 11 1938*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_LO_LBN 16 1939*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_LO_WIDTH 3 1940*4882a593Smuzhiyun #define FRF_AB_XM_PAD_CHAR_LBN 0 1941*4882a593Smuzhiyun #define FRF_AB_XM_PAD_CHAR_WIDTH 8 1942*4882a593Smuzhiyun 1943*4882a593Smuzhiyun /* XM_RX_PARAM_REG: XGMAC receive parameter register */ 1944*4882a593Smuzhiyun #define FR_AB_XM_RX_PARAM 0x000012e0 1945*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_HI_LBN 3 1946*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_HI_WIDTH 11 1947*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_LO_LBN 0 1948*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_LO_WIDTH 3 1949*4882a593Smuzhiyun 1950*4882a593Smuzhiyun /* XM_MGT_INT_MSK_REG: XGMAC management interrupt mask register */ 1951*4882a593Smuzhiyun #define FR_AB_XM_MGT_INT_MSK 0x000012f0 1952*4882a593Smuzhiyun #define FRF_AB_XM_STAT_CNTR_OF_LBN 9 1953*4882a593Smuzhiyun #define FRF_AB_XM_STAT_CNTR_OF_WIDTH 1 1954*4882a593Smuzhiyun #define FRF_AB_XM_STAT_CNTR_HF_LBN 8 1955*4882a593Smuzhiyun #define FRF_AB_XM_STAT_CNTR_HF_WIDTH 1 1956*4882a593Smuzhiyun #define FRF_AB_XM_PRMBLE_ERR_LBN 2 1957*4882a593Smuzhiyun #define FRF_AB_XM_PRMBLE_ERR_WIDTH 1 1958*4882a593Smuzhiyun #define FRF_AB_XM_RMTFLT_LBN 1 1959*4882a593Smuzhiyun #define FRF_AB_XM_RMTFLT_WIDTH 1 1960*4882a593Smuzhiyun #define FRF_AB_XM_LCLFLT_LBN 0 1961*4882a593Smuzhiyun #define FRF_AB_XM_LCLFLT_WIDTH 1 1962*4882a593Smuzhiyun 1963*4882a593Smuzhiyun /* XX_PWR_RST_REG: XGXS/XAUI powerdown/reset register */ 1964*4882a593Smuzhiyun #define FR_AB_XX_PWR_RST 0x00001300 1965*4882a593Smuzhiyun #define FRF_AB_XX_PWRDND_SIG_LBN 31 1966*4882a593Smuzhiyun #define FRF_AB_XX_PWRDND_SIG_WIDTH 1 1967*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNC_SIG_LBN 30 1968*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNC_SIG_WIDTH 1 1969*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNB_SIG_LBN 29 1970*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNB_SIG_WIDTH 1 1971*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNA_SIG_LBN 28 1972*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNA_SIG_WIDTH 1 1973*4882a593Smuzhiyun #define FRF_AB_XX_SIM_MODE_LBN 27 1974*4882a593Smuzhiyun #define FRF_AB_XX_SIM_MODE_WIDTH 1 1975*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLCD_SIG_LBN 25 1976*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLCD_SIG_WIDTH 1 1977*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLAB_SIG_LBN 24 1978*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLAB_SIG_WIDTH 1 1979*4882a593Smuzhiyun #define FRF_AB_XX_RESETD_SIG_LBN 23 1980*4882a593Smuzhiyun #define FRF_AB_XX_RESETD_SIG_WIDTH 1 1981*4882a593Smuzhiyun #define FRF_AB_XX_RESETC_SIG_LBN 22 1982*4882a593Smuzhiyun #define FRF_AB_XX_RESETC_SIG_WIDTH 1 1983*4882a593Smuzhiyun #define FRF_AB_XX_RESETB_SIG_LBN 21 1984*4882a593Smuzhiyun #define FRF_AB_XX_RESETB_SIG_WIDTH 1 1985*4882a593Smuzhiyun #define FRF_AB_XX_RESETA_SIG_LBN 20 1986*4882a593Smuzhiyun #define FRF_AB_XX_RESETA_SIG_WIDTH 1 1987*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSRX_SIG_LBN 18 1988*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSRX_SIG_WIDTH 1 1989*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSTX_SIG_LBN 17 1990*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSTX_SIG_WIDTH 1 1991*4882a593Smuzhiyun #define FRF_AB_XX_SD_RST_ACT_LBN 16 1992*4882a593Smuzhiyun #define FRF_AB_XX_SD_RST_ACT_WIDTH 1 1993*4882a593Smuzhiyun #define FRF_AB_XX_PWRDND_EN_LBN 15 1994*4882a593Smuzhiyun #define FRF_AB_XX_PWRDND_EN_WIDTH 1 1995*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNC_EN_LBN 14 1996*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNC_EN_WIDTH 1 1997*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNB_EN_LBN 13 1998*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNB_EN_WIDTH 1 1999*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNA_EN_LBN 12 2000*4882a593Smuzhiyun #define FRF_AB_XX_PWRDNA_EN_WIDTH 1 2001*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLCD_EN_LBN 9 2002*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLCD_EN_WIDTH 1 2003*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLAB_EN_LBN 8 2004*4882a593Smuzhiyun #define FRF_AB_XX_RSTPLLAB_EN_WIDTH 1 2005*4882a593Smuzhiyun #define FRF_AB_XX_RESETD_EN_LBN 7 2006*4882a593Smuzhiyun #define FRF_AB_XX_RESETD_EN_WIDTH 1 2007*4882a593Smuzhiyun #define FRF_AB_XX_RESETC_EN_LBN 6 2008*4882a593Smuzhiyun #define FRF_AB_XX_RESETC_EN_WIDTH 1 2009*4882a593Smuzhiyun #define FRF_AB_XX_RESETB_EN_LBN 5 2010*4882a593Smuzhiyun #define FRF_AB_XX_RESETB_EN_WIDTH 1 2011*4882a593Smuzhiyun #define FRF_AB_XX_RESETA_EN_LBN 4 2012*4882a593Smuzhiyun #define FRF_AB_XX_RESETA_EN_WIDTH 1 2013*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSRX_EN_LBN 2 2014*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSRX_EN_WIDTH 1 2015*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSTX_EN_LBN 1 2016*4882a593Smuzhiyun #define FRF_AB_XX_RSTXGXSTX_EN_WIDTH 1 2017*4882a593Smuzhiyun #define FRF_AB_XX_RST_XX_EN_LBN 0 2018*4882a593Smuzhiyun #define FRF_AB_XX_RST_XX_EN_WIDTH 1 2019*4882a593Smuzhiyun 2020*4882a593Smuzhiyun /* XX_SD_CTL_REG: XGXS/XAUI powerdown/reset control register */ 2021*4882a593Smuzhiyun #define FR_AB_XX_SD_CTL 0x00001310 2022*4882a593Smuzhiyun #define FRF_AB_XX_TERMADJ1_LBN 17 2023*4882a593Smuzhiyun #define FRF_AB_XX_TERMADJ1_WIDTH 1 2024*4882a593Smuzhiyun #define FRF_AB_XX_TERMADJ0_LBN 16 2025*4882a593Smuzhiyun #define FRF_AB_XX_TERMADJ0_WIDTH 1 2026*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVD_LBN 15 2027*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVD_WIDTH 1 2028*4882a593Smuzhiyun #define FRF_AB_XX_LODRVD_LBN 14 2029*4882a593Smuzhiyun #define FRF_AB_XX_LODRVD_WIDTH 1 2030*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVC_LBN 13 2031*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVC_WIDTH 1 2032*4882a593Smuzhiyun #define FRF_AB_XX_LODRVC_LBN 12 2033*4882a593Smuzhiyun #define FRF_AB_XX_LODRVC_WIDTH 1 2034*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVB_LBN 11 2035*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVB_WIDTH 1 2036*4882a593Smuzhiyun #define FRF_AB_XX_LODRVB_LBN 10 2037*4882a593Smuzhiyun #define FRF_AB_XX_LODRVB_WIDTH 1 2038*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVA_LBN 9 2039*4882a593Smuzhiyun #define FRF_AB_XX_HIDRVA_WIDTH 1 2040*4882a593Smuzhiyun #define FRF_AB_XX_LODRVA_LBN 8 2041*4882a593Smuzhiyun #define FRF_AB_XX_LODRVA_WIDTH 1 2042*4882a593Smuzhiyun #define FRF_AB_XX_LPBKD_LBN 3 2043*4882a593Smuzhiyun #define FRF_AB_XX_LPBKD_WIDTH 1 2044*4882a593Smuzhiyun #define FRF_AB_XX_LPBKC_LBN 2 2045*4882a593Smuzhiyun #define FRF_AB_XX_LPBKC_WIDTH 1 2046*4882a593Smuzhiyun #define FRF_AB_XX_LPBKB_LBN 1 2047*4882a593Smuzhiyun #define FRF_AB_XX_LPBKB_WIDTH 1 2048*4882a593Smuzhiyun #define FRF_AB_XX_LPBKA_LBN 0 2049*4882a593Smuzhiyun #define FRF_AB_XX_LPBKA_WIDTH 1 2050*4882a593Smuzhiyun 2051*4882a593Smuzhiyun /* XX_TXDRV_CTL_REG: XAUI SerDes transmit drive control register */ 2052*4882a593Smuzhiyun #define FR_AB_XX_TXDRV_CTL 0x00001320 2053*4882a593Smuzhiyun #define FRF_AB_XX_DEQD_LBN 28 2054*4882a593Smuzhiyun #define FRF_AB_XX_DEQD_WIDTH 4 2055*4882a593Smuzhiyun #define FRF_AB_XX_DEQC_LBN 24 2056*4882a593Smuzhiyun #define FRF_AB_XX_DEQC_WIDTH 4 2057*4882a593Smuzhiyun #define FRF_AB_XX_DEQB_LBN 20 2058*4882a593Smuzhiyun #define FRF_AB_XX_DEQB_WIDTH 4 2059*4882a593Smuzhiyun #define FRF_AB_XX_DEQA_LBN 16 2060*4882a593Smuzhiyun #define FRF_AB_XX_DEQA_WIDTH 4 2061*4882a593Smuzhiyun #define FRF_AB_XX_DTXD_LBN 12 2062*4882a593Smuzhiyun #define FRF_AB_XX_DTXD_WIDTH 4 2063*4882a593Smuzhiyun #define FRF_AB_XX_DTXC_LBN 8 2064*4882a593Smuzhiyun #define FRF_AB_XX_DTXC_WIDTH 4 2065*4882a593Smuzhiyun #define FRF_AB_XX_DTXB_LBN 4 2066*4882a593Smuzhiyun #define FRF_AB_XX_DTXB_WIDTH 4 2067*4882a593Smuzhiyun #define FRF_AB_XX_DTXA_LBN 0 2068*4882a593Smuzhiyun #define FRF_AB_XX_DTXA_WIDTH 4 2069*4882a593Smuzhiyun 2070*4882a593Smuzhiyun /* XX_PRBS_CTL_REG: documentation to be written for sum_XX_PRBS_CTL_REG */ 2071*4882a593Smuzhiyun #define FR_AB_XX_PRBS_CTL 0x00001330 2072*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_SEL_LBN 30 2073*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_SEL_WIDTH 2 2074*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_INV_LBN 29 2075*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_INV_WIDTH 1 2076*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_CHKEN_LBN 28 2077*4882a593Smuzhiyun #define FRF_AB_XX_CH3_RX_PRBS_CHKEN_WIDTH 1 2078*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_SEL_LBN 26 2079*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_SEL_WIDTH 2 2080*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_INV_LBN 25 2081*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_INV_WIDTH 1 2082*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_CHKEN_LBN 24 2083*4882a593Smuzhiyun #define FRF_AB_XX_CH2_RX_PRBS_CHKEN_WIDTH 1 2084*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_SEL_LBN 22 2085*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_SEL_WIDTH 2 2086*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_INV_LBN 21 2087*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_INV_WIDTH 1 2088*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_CHKEN_LBN 20 2089*4882a593Smuzhiyun #define FRF_AB_XX_CH1_RX_PRBS_CHKEN_WIDTH 1 2090*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_SEL_LBN 18 2091*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_SEL_WIDTH 2 2092*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_INV_LBN 17 2093*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_INV_WIDTH 1 2094*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_CHKEN_LBN 16 2095*4882a593Smuzhiyun #define FRF_AB_XX_CH0_RX_PRBS_CHKEN_WIDTH 1 2096*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_SEL_LBN 14 2097*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_SEL_WIDTH 2 2098*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_INV_LBN 13 2099*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_INV_WIDTH 1 2100*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_CHKEN_LBN 12 2101*4882a593Smuzhiyun #define FRF_AB_XX_CH3_TX_PRBS_CHKEN_WIDTH 1 2102*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_SEL_LBN 10 2103*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_SEL_WIDTH 2 2104*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_INV_LBN 9 2105*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_INV_WIDTH 1 2106*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_CHKEN_LBN 8 2107*4882a593Smuzhiyun #define FRF_AB_XX_CH2_TX_PRBS_CHKEN_WIDTH 1 2108*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_SEL_LBN 6 2109*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_SEL_WIDTH 2 2110*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_INV_LBN 5 2111*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_INV_WIDTH 1 2112*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_CHKEN_LBN 4 2113*4882a593Smuzhiyun #define FRF_AB_XX_CH1_TX_PRBS_CHKEN_WIDTH 1 2114*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_SEL_LBN 2 2115*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_SEL_WIDTH 2 2116*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_INV_LBN 1 2117*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_INV_WIDTH 1 2118*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_CHKEN_LBN 0 2119*4882a593Smuzhiyun #define FRF_AB_XX_CH0_TX_PRBS_CHKEN_WIDTH 1 2120*4882a593Smuzhiyun 2121*4882a593Smuzhiyun /* XX_PRBS_CHK_REG: documentation to be written for sum_XX_PRBS_CHK_REG */ 2122*4882a593Smuzhiyun #define FR_AB_XX_PRBS_CHK 0x00001340 2123*4882a593Smuzhiyun #define FRF_AB_XX_REV_LB_EN_LBN 16 2124*4882a593Smuzhiyun #define FRF_AB_XX_REV_LB_EN_WIDTH 1 2125*4882a593Smuzhiyun #define FRF_AB_XX_CH3_DEG_DET_LBN 15 2126*4882a593Smuzhiyun #define FRF_AB_XX_CH3_DEG_DET_WIDTH 1 2127*4882a593Smuzhiyun #define FRF_AB_XX_CH3_LFSR_LOCK_IND_LBN 14 2128*4882a593Smuzhiyun #define FRF_AB_XX_CH3_LFSR_LOCK_IND_WIDTH 1 2129*4882a593Smuzhiyun #define FRF_AB_XX_CH3_PRBS_FRUN_LBN 13 2130*4882a593Smuzhiyun #define FRF_AB_XX_CH3_PRBS_FRUN_WIDTH 1 2131*4882a593Smuzhiyun #define FRF_AB_XX_CH3_ERR_CHK_LBN 12 2132*4882a593Smuzhiyun #define FRF_AB_XX_CH3_ERR_CHK_WIDTH 1 2133*4882a593Smuzhiyun #define FRF_AB_XX_CH2_DEG_DET_LBN 11 2134*4882a593Smuzhiyun #define FRF_AB_XX_CH2_DEG_DET_WIDTH 1 2135*4882a593Smuzhiyun #define FRF_AB_XX_CH2_LFSR_LOCK_IND_LBN 10 2136*4882a593Smuzhiyun #define FRF_AB_XX_CH2_LFSR_LOCK_IND_WIDTH 1 2137*4882a593Smuzhiyun #define FRF_AB_XX_CH2_PRBS_FRUN_LBN 9 2138*4882a593Smuzhiyun #define FRF_AB_XX_CH2_PRBS_FRUN_WIDTH 1 2139*4882a593Smuzhiyun #define FRF_AB_XX_CH2_ERR_CHK_LBN 8 2140*4882a593Smuzhiyun #define FRF_AB_XX_CH2_ERR_CHK_WIDTH 1 2141*4882a593Smuzhiyun #define FRF_AB_XX_CH1_DEG_DET_LBN 7 2142*4882a593Smuzhiyun #define FRF_AB_XX_CH1_DEG_DET_WIDTH 1 2143*4882a593Smuzhiyun #define FRF_AB_XX_CH1_LFSR_LOCK_IND_LBN 6 2144*4882a593Smuzhiyun #define FRF_AB_XX_CH1_LFSR_LOCK_IND_WIDTH 1 2145*4882a593Smuzhiyun #define FRF_AB_XX_CH1_PRBS_FRUN_LBN 5 2146*4882a593Smuzhiyun #define FRF_AB_XX_CH1_PRBS_FRUN_WIDTH 1 2147*4882a593Smuzhiyun #define FRF_AB_XX_CH1_ERR_CHK_LBN 4 2148*4882a593Smuzhiyun #define FRF_AB_XX_CH1_ERR_CHK_WIDTH 1 2149*4882a593Smuzhiyun #define FRF_AB_XX_CH0_DEG_DET_LBN 3 2150*4882a593Smuzhiyun #define FRF_AB_XX_CH0_DEG_DET_WIDTH 1 2151*4882a593Smuzhiyun #define FRF_AB_XX_CH0_LFSR_LOCK_IND_LBN 2 2152*4882a593Smuzhiyun #define FRF_AB_XX_CH0_LFSR_LOCK_IND_WIDTH 1 2153*4882a593Smuzhiyun #define FRF_AB_XX_CH0_PRBS_FRUN_LBN 1 2154*4882a593Smuzhiyun #define FRF_AB_XX_CH0_PRBS_FRUN_WIDTH 1 2155*4882a593Smuzhiyun #define FRF_AB_XX_CH0_ERR_CHK_LBN 0 2156*4882a593Smuzhiyun #define FRF_AB_XX_CH0_ERR_CHK_WIDTH 1 2157*4882a593Smuzhiyun 2158*4882a593Smuzhiyun /* XX_PRBS_ERR_REG: documentation to be written for sum_XX_PRBS_ERR_REG */ 2159*4882a593Smuzhiyun #define FR_AB_XX_PRBS_ERR 0x00001350 2160*4882a593Smuzhiyun #define FRF_AB_XX_CH3_PRBS_ERR_CNT_LBN 24 2161*4882a593Smuzhiyun #define FRF_AB_XX_CH3_PRBS_ERR_CNT_WIDTH 8 2162*4882a593Smuzhiyun #define FRF_AB_XX_CH2_PRBS_ERR_CNT_LBN 16 2163*4882a593Smuzhiyun #define FRF_AB_XX_CH2_PRBS_ERR_CNT_WIDTH 8 2164*4882a593Smuzhiyun #define FRF_AB_XX_CH1_PRBS_ERR_CNT_LBN 8 2165*4882a593Smuzhiyun #define FRF_AB_XX_CH1_PRBS_ERR_CNT_WIDTH 8 2166*4882a593Smuzhiyun #define FRF_AB_XX_CH0_PRBS_ERR_CNT_LBN 0 2167*4882a593Smuzhiyun #define FRF_AB_XX_CH0_PRBS_ERR_CNT_WIDTH 8 2168*4882a593Smuzhiyun 2169*4882a593Smuzhiyun /* XX_CORE_STAT_REG: XAUI XGXS core status register */ 2170*4882a593Smuzhiyun #define FR_AB_XX_CORE_STAT 0x00001360 2171*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG3_LBN 31 2172*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG3_WIDTH 1 2173*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG3_VAL_LBN 30 2174*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG3_VAL_WIDTH 1 2175*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG2_LBN 29 2176*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG2_WIDTH 1 2177*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG2_VAL_LBN 28 2178*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG2_VAL_WIDTH 1 2179*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG1_LBN 27 2180*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG1_WIDTH 1 2181*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG1_VAL_LBN 26 2182*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG1_VAL_WIDTH 1 2183*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG0_LBN 25 2184*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG0_WIDTH 1 2185*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG0_VAL_LBN 24 2186*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG0_VAL_WIDTH 1 2187*4882a593Smuzhiyun #define FRF_AB_XX_XGXS_LB_EN_LBN 23 2188*4882a593Smuzhiyun #define FRF_AB_XX_XGXS_LB_EN_WIDTH 1 2189*4882a593Smuzhiyun #define FRF_AB_XX_XGMII_LB_EN_LBN 22 2190*4882a593Smuzhiyun #define FRF_AB_XX_XGMII_LB_EN_WIDTH 1 2191*4882a593Smuzhiyun #define FRF_AB_XX_MATCH_FAULT_LBN 21 2192*4882a593Smuzhiyun #define FRF_AB_XX_MATCH_FAULT_WIDTH 1 2193*4882a593Smuzhiyun #define FRF_AB_XX_ALIGN_DONE_LBN 20 2194*4882a593Smuzhiyun #define FRF_AB_XX_ALIGN_DONE_WIDTH 1 2195*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT3_LBN 19 2196*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT3_WIDTH 1 2197*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT2_LBN 18 2198*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT2_WIDTH 1 2199*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT1_LBN 17 2200*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT1_WIDTH 1 2201*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT0_LBN 16 2202*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT0_WIDTH 1 2203*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH3_LBN 15 2204*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH3_WIDTH 1 2205*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH2_LBN 14 2206*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH2_WIDTH 1 2207*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH1_LBN 13 2208*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH1_WIDTH 1 2209*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH0_LBN 12 2210*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_CH0_WIDTH 1 2211*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH3_LBN 11 2212*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH3_WIDTH 1 2213*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH2_LBN 10 2214*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH2_WIDTH 1 2215*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH1_LBN 9 2216*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH1_WIDTH 1 2217*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH0_LBN 8 2218*4882a593Smuzhiyun #define FRF_AB_XX_CGRP_ALIGN_CH0_WIDTH 1 2219*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH3_LBN 7 2220*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH3_WIDTH 1 2221*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH2_LBN 6 2222*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH2_WIDTH 1 2223*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH1_LBN 5 2224*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH1_WIDTH 1 2225*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH0_LBN 4 2226*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_CH0_WIDTH 1 2227*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH3_LBN 3 2228*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH3_WIDTH 1 2229*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH2_LBN 2 2230*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH2_WIDTH 1 2231*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH1_LBN 1 2232*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH1_WIDTH 1 2233*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH0_LBN 0 2234*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_CH0_WIDTH 1 2235*4882a593Smuzhiyun 2236*4882a593Smuzhiyun /* RX_DESC_PTR_TBL_KER: Receive descriptor pointer table */ 2237*4882a593Smuzhiyun #define FR_AA_RX_DESC_PTR_TBL_KER 0x00011800 2238*4882a593Smuzhiyun #define FR_AA_RX_DESC_PTR_TBL_KER_STEP 16 2239*4882a593Smuzhiyun #define FR_AA_RX_DESC_PTR_TBL_KER_ROWS 4 2240*4882a593Smuzhiyun /* RX_DESC_PTR_TBL: Receive descriptor pointer table */ 2241*4882a593Smuzhiyun #define FR_BZ_RX_DESC_PTR_TBL 0x00f40000 2242*4882a593Smuzhiyun #define FR_BZ_RX_DESC_PTR_TBL_STEP 16 2243*4882a593Smuzhiyun #define FR_BB_RX_DESC_PTR_TBL_ROWS 4096 2244*4882a593Smuzhiyun #define FR_CZ_RX_DESC_PTR_TBL_ROWS 1024 2245*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_LBN 90 2246*4882a593Smuzhiyun #define FRF_CZ_RX_HDR_SPLIT_WIDTH 1 2247*4882a593Smuzhiyun #define FRF_AA_RX_RESET_LBN 89 2248*4882a593Smuzhiyun #define FRF_AA_RX_RESET_WIDTH 1 2249*4882a593Smuzhiyun #define FRF_AZ_RX_ISCSI_DDIG_EN_LBN 88 2250*4882a593Smuzhiyun #define FRF_AZ_RX_ISCSI_DDIG_EN_WIDTH 1 2251*4882a593Smuzhiyun #define FRF_AZ_RX_ISCSI_HDIG_EN_LBN 87 2252*4882a593Smuzhiyun #define FRF_AZ_RX_ISCSI_HDIG_EN_WIDTH 1 2253*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_PREF_ACT_LBN 86 2254*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_PREF_ACT_WIDTH 1 2255*4882a593Smuzhiyun #define FRF_AZ_RX_DC_HW_RPTR_LBN 80 2256*4882a593Smuzhiyun #define FRF_AZ_RX_DC_HW_RPTR_WIDTH 6 2257*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_HW_RPTR_LBN 68 2258*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_HW_RPTR_WIDTH 12 2259*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_SW_WPTR_LBN 56 2260*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_SW_WPTR_WIDTH 12 2261*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_BUF_BASE_ID_LBN 36 2262*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_BUF_BASE_ID_WIDTH 20 2263*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_EVQ_ID_LBN 24 2264*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_EVQ_ID_WIDTH 12 2265*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_OWNER_ID_LBN 10 2266*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_OWNER_ID_WIDTH 14 2267*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_LABEL_LBN 5 2268*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_LABEL_WIDTH 5 2269*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_SIZE_LBN 3 2270*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_SIZE_WIDTH 2 2271*4882a593Smuzhiyun #define FFE_AZ_RX_DESCQ_SIZE_4K 3 2272*4882a593Smuzhiyun #define FFE_AZ_RX_DESCQ_SIZE_2K 2 2273*4882a593Smuzhiyun #define FFE_AZ_RX_DESCQ_SIZE_1K 1 2274*4882a593Smuzhiyun #define FFE_AZ_RX_DESCQ_SIZE_512 0 2275*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_TYPE_LBN 2 2276*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_TYPE_WIDTH 1 2277*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_JUMBO_LBN 1 2278*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_JUMBO_WIDTH 1 2279*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_EN_LBN 0 2280*4882a593Smuzhiyun #define FRF_AZ_RX_DESCQ_EN_WIDTH 1 2281*4882a593Smuzhiyun 2282*4882a593Smuzhiyun /* TX_DESC_PTR_TBL_KER: Transmit descriptor pointer */ 2283*4882a593Smuzhiyun #define FR_AA_TX_DESC_PTR_TBL_KER 0x00011900 2284*4882a593Smuzhiyun #define FR_AA_TX_DESC_PTR_TBL_KER_STEP 16 2285*4882a593Smuzhiyun #define FR_AA_TX_DESC_PTR_TBL_KER_ROWS 8 2286*4882a593Smuzhiyun /* TX_DESC_PTR_TBL: Transmit descriptor pointer */ 2287*4882a593Smuzhiyun #define FR_BZ_TX_DESC_PTR_TBL 0x00f50000 2288*4882a593Smuzhiyun #define FR_BZ_TX_DESC_PTR_TBL_STEP 16 2289*4882a593Smuzhiyun #define FR_BB_TX_DESC_PTR_TBL_ROWS 4096 2290*4882a593Smuzhiyun #define FR_CZ_TX_DESC_PTR_TBL_ROWS 1024 2291*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_Q_MASK_WIDTH_LBN 94 2292*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_Q_MASK_WIDTH_WIDTH 2 2293*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_ETH_FILT_EN_LBN 93 2294*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_ETH_FILT_EN_WIDTH 1 2295*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_IP_FILT_EN_LBN 92 2296*4882a593Smuzhiyun #define FRF_CZ_TX_DPT_IP_FILT_EN_WIDTH 1 2297*4882a593Smuzhiyun #define FRF_BZ_TX_NON_IP_DROP_DIS_LBN 91 2298*4882a593Smuzhiyun #define FRF_BZ_TX_NON_IP_DROP_DIS_WIDTH 1 2299*4882a593Smuzhiyun #define FRF_BZ_TX_IP_CHKSM_DIS_LBN 90 2300*4882a593Smuzhiyun #define FRF_BZ_TX_IP_CHKSM_DIS_WIDTH 1 2301*4882a593Smuzhiyun #define FRF_BZ_TX_TCP_CHKSM_DIS_LBN 89 2302*4882a593Smuzhiyun #define FRF_BZ_TX_TCP_CHKSM_DIS_WIDTH 1 2303*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_EN_LBN 88 2304*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_EN_WIDTH 1 2305*4882a593Smuzhiyun #define FRF_AZ_TX_ISCSI_DDIG_EN_LBN 87 2306*4882a593Smuzhiyun #define FRF_AZ_TX_ISCSI_DDIG_EN_WIDTH 1 2307*4882a593Smuzhiyun #define FRF_AZ_TX_ISCSI_HDIG_EN_LBN 86 2308*4882a593Smuzhiyun #define FRF_AZ_TX_ISCSI_HDIG_EN_WIDTH 1 2309*4882a593Smuzhiyun #define FRF_AZ_TX_DC_HW_RPTR_LBN 80 2310*4882a593Smuzhiyun #define FRF_AZ_TX_DC_HW_RPTR_WIDTH 6 2311*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_HW_RPTR_LBN 68 2312*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_HW_RPTR_WIDTH 12 2313*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_SW_WPTR_LBN 56 2314*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_SW_WPTR_WIDTH 12 2315*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_BUF_BASE_ID_LBN 36 2316*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_BUF_BASE_ID_WIDTH 20 2317*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_EVQ_ID_LBN 24 2318*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_EVQ_ID_WIDTH 12 2319*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_OWNER_ID_LBN 10 2320*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_OWNER_ID_WIDTH 14 2321*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_LABEL_LBN 5 2322*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_LABEL_WIDTH 5 2323*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_SIZE_LBN 3 2324*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_SIZE_WIDTH 2 2325*4882a593Smuzhiyun #define FFE_AZ_TX_DESCQ_SIZE_4K 3 2326*4882a593Smuzhiyun #define FFE_AZ_TX_DESCQ_SIZE_2K 2 2327*4882a593Smuzhiyun #define FFE_AZ_TX_DESCQ_SIZE_1K 1 2328*4882a593Smuzhiyun #define FFE_AZ_TX_DESCQ_SIZE_512 0 2329*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_TYPE_LBN 1 2330*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_TYPE_WIDTH 2 2331*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_FLUSH_LBN 0 2332*4882a593Smuzhiyun #define FRF_AZ_TX_DESCQ_FLUSH_WIDTH 1 2333*4882a593Smuzhiyun 2334*4882a593Smuzhiyun /* EVQ_PTR_TBL_KER: Event queue pointer table */ 2335*4882a593Smuzhiyun #define FR_AA_EVQ_PTR_TBL_KER 0x00011a00 2336*4882a593Smuzhiyun #define FR_AA_EVQ_PTR_TBL_KER_STEP 16 2337*4882a593Smuzhiyun #define FR_AA_EVQ_PTR_TBL_KER_ROWS 4 2338*4882a593Smuzhiyun /* EVQ_PTR_TBL: Event queue pointer table */ 2339*4882a593Smuzhiyun #define FR_BZ_EVQ_PTR_TBL 0x00f60000 2340*4882a593Smuzhiyun #define FR_BZ_EVQ_PTR_TBL_STEP 16 2341*4882a593Smuzhiyun #define FR_CZ_EVQ_PTR_TBL_ROWS 1024 2342*4882a593Smuzhiyun #define FR_BB_EVQ_PTR_TBL_ROWS 4096 2343*4882a593Smuzhiyun #define FRF_BZ_EVQ_RPTR_IGN_LBN 40 2344*4882a593Smuzhiyun #define FRF_BZ_EVQ_RPTR_IGN_WIDTH 1 2345*4882a593Smuzhiyun #define FRF_AB_EVQ_WKUP_OR_INT_EN_LBN 39 2346*4882a593Smuzhiyun #define FRF_AB_EVQ_WKUP_OR_INT_EN_WIDTH 1 2347*4882a593Smuzhiyun #define FRF_CZ_EVQ_DOS_PROTECT_EN_LBN 39 2348*4882a593Smuzhiyun #define FRF_CZ_EVQ_DOS_PROTECT_EN_WIDTH 1 2349*4882a593Smuzhiyun #define FRF_AZ_EVQ_NXT_WPTR_LBN 24 2350*4882a593Smuzhiyun #define FRF_AZ_EVQ_NXT_WPTR_WIDTH 15 2351*4882a593Smuzhiyun #define FRF_AZ_EVQ_EN_LBN 23 2352*4882a593Smuzhiyun #define FRF_AZ_EVQ_EN_WIDTH 1 2353*4882a593Smuzhiyun #define FRF_AZ_EVQ_SIZE_LBN 20 2354*4882a593Smuzhiyun #define FRF_AZ_EVQ_SIZE_WIDTH 3 2355*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_32K 6 2356*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_16K 5 2357*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_8K 4 2358*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_4K 3 2359*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_2K 2 2360*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_1K 1 2361*4882a593Smuzhiyun #define FFE_AZ_EVQ_SIZE_512 0 2362*4882a593Smuzhiyun #define FRF_AZ_EVQ_BUF_BASE_ID_LBN 0 2363*4882a593Smuzhiyun #define FRF_AZ_EVQ_BUF_BASE_ID_WIDTH 20 2364*4882a593Smuzhiyun 2365*4882a593Smuzhiyun /* BUF_HALF_TBL_KER: Buffer table in half buffer table mode direct access by driver */ 2366*4882a593Smuzhiyun #define FR_AA_BUF_HALF_TBL_KER 0x00018000 2367*4882a593Smuzhiyun #define FR_AA_BUF_HALF_TBL_KER_STEP 8 2368*4882a593Smuzhiyun #define FR_AA_BUF_HALF_TBL_KER_ROWS 4096 2369*4882a593Smuzhiyun /* BUF_HALF_TBL: Buffer table in half buffer table mode direct access by driver */ 2370*4882a593Smuzhiyun #define FR_BZ_BUF_HALF_TBL 0x00800000 2371*4882a593Smuzhiyun #define FR_BZ_BUF_HALF_TBL_STEP 8 2372*4882a593Smuzhiyun #define FR_CZ_BUF_HALF_TBL_ROWS 147456 2373*4882a593Smuzhiyun #define FR_BB_BUF_HALF_TBL_ROWS 524288 2374*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_HBUF_ODD_LBN 44 2375*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_HBUF_ODD_WIDTH 20 2376*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_HBUF_ODD_LBN 32 2377*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_HBUF_ODD_WIDTH 12 2378*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_HBUF_EVEN_LBN 12 2379*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_HBUF_EVEN_WIDTH 20 2380*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_HBUF_EVEN_LBN 0 2381*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_HBUF_EVEN_WIDTH 12 2382*4882a593Smuzhiyun 2383*4882a593Smuzhiyun /* BUF_FULL_TBL_KER: Buffer table in full buffer table mode direct access by driver */ 2384*4882a593Smuzhiyun #define FR_AA_BUF_FULL_TBL_KER 0x00018000 2385*4882a593Smuzhiyun #define FR_AA_BUF_FULL_TBL_KER_STEP 8 2386*4882a593Smuzhiyun #define FR_AA_BUF_FULL_TBL_KER_ROWS 4096 2387*4882a593Smuzhiyun /* BUF_FULL_TBL: Buffer table in full buffer table mode direct access by driver */ 2388*4882a593Smuzhiyun #define FR_BZ_BUF_FULL_TBL 0x00800000 2389*4882a593Smuzhiyun #define FR_BZ_BUF_FULL_TBL_STEP 8 2390*4882a593Smuzhiyun #define FR_CZ_BUF_FULL_TBL_ROWS 147456 2391*4882a593Smuzhiyun #define FR_BB_BUF_FULL_TBL_ROWS 917504 2392*4882a593Smuzhiyun #define FRF_AZ_BUF_FULL_UNUSED_LBN 51 2393*4882a593Smuzhiyun #define FRF_AZ_BUF_FULL_UNUSED_WIDTH 13 2394*4882a593Smuzhiyun #define FRF_AZ_IP_DAT_BUF_SIZE_LBN 50 2395*4882a593Smuzhiyun #define FRF_AZ_IP_DAT_BUF_SIZE_WIDTH 1 2396*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_REGION_LBN 48 2397*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_REGION_WIDTH 2 2398*4882a593Smuzhiyun #define FFE_AZ_BUF_ADR_REGN3 3 2399*4882a593Smuzhiyun #define FFE_AZ_BUF_ADR_REGN2 2 2400*4882a593Smuzhiyun #define FFE_AZ_BUF_ADR_REGN1 1 2401*4882a593Smuzhiyun #define FFE_AZ_BUF_ADR_REGN0 0 2402*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_FBUF_LBN 14 2403*4882a593Smuzhiyun #define FRF_AZ_BUF_ADR_FBUF_WIDTH 34 2404*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_FBUF_LBN 0 2405*4882a593Smuzhiyun #define FRF_AZ_BUF_OWNER_ID_FBUF_WIDTH 14 2406*4882a593Smuzhiyun 2407*4882a593Smuzhiyun /* RX_FILTER_TBL0: TCP/IPv4 Receive filter table */ 2408*4882a593Smuzhiyun #define FR_BZ_RX_FILTER_TBL0 0x00f00000 2409*4882a593Smuzhiyun #define FR_BZ_RX_FILTER_TBL0_STEP 32 2410*4882a593Smuzhiyun #define FR_BZ_RX_FILTER_TBL0_ROWS 8192 2411*4882a593Smuzhiyun /* RX_FILTER_TBL1: TCP/IPv4 Receive filter table */ 2412*4882a593Smuzhiyun #define FR_BB_RX_FILTER_TBL1 0x00f00010 2413*4882a593Smuzhiyun #define FR_BB_RX_FILTER_TBL1_STEP 32 2414*4882a593Smuzhiyun #define FR_BB_RX_FILTER_TBL1_ROWS 8192 2415*4882a593Smuzhiyun #define FRF_BZ_RSS_EN_LBN 110 2416*4882a593Smuzhiyun #define FRF_BZ_RSS_EN_WIDTH 1 2417*4882a593Smuzhiyun #define FRF_BZ_SCATTER_EN_LBN 109 2418*4882a593Smuzhiyun #define FRF_BZ_SCATTER_EN_WIDTH 1 2419*4882a593Smuzhiyun #define FRF_BZ_TCP_UDP_LBN 108 2420*4882a593Smuzhiyun #define FRF_BZ_TCP_UDP_WIDTH 1 2421*4882a593Smuzhiyun #define FRF_BZ_RXQ_ID_LBN 96 2422*4882a593Smuzhiyun #define FRF_BZ_RXQ_ID_WIDTH 12 2423*4882a593Smuzhiyun #define FRF_BZ_DEST_IP_LBN 64 2424*4882a593Smuzhiyun #define FRF_BZ_DEST_IP_WIDTH 32 2425*4882a593Smuzhiyun #define FRF_BZ_DEST_PORT_TCP_LBN 48 2426*4882a593Smuzhiyun #define FRF_BZ_DEST_PORT_TCP_WIDTH 16 2427*4882a593Smuzhiyun #define FRF_BZ_SRC_IP_LBN 16 2428*4882a593Smuzhiyun #define FRF_BZ_SRC_IP_WIDTH 32 2429*4882a593Smuzhiyun #define FRF_BZ_SRC_TCP_DEST_UDP_LBN 0 2430*4882a593Smuzhiyun #define FRF_BZ_SRC_TCP_DEST_UDP_WIDTH 16 2431*4882a593Smuzhiyun 2432*4882a593Smuzhiyun /* RX_MAC_FILTER_TBL0: Receive Ethernet filter table */ 2433*4882a593Smuzhiyun #define FR_CZ_RX_MAC_FILTER_TBL0 0x00f00010 2434*4882a593Smuzhiyun #define FR_CZ_RX_MAC_FILTER_TBL0_STEP 32 2435*4882a593Smuzhiyun #define FR_CZ_RX_MAC_FILTER_TBL0_ROWS 512 2436*4882a593Smuzhiyun #define FRF_CZ_RMFT_RSS_EN_LBN 75 2437*4882a593Smuzhiyun #define FRF_CZ_RMFT_RSS_EN_WIDTH 1 2438*4882a593Smuzhiyun #define FRF_CZ_RMFT_SCATTER_EN_LBN 74 2439*4882a593Smuzhiyun #define FRF_CZ_RMFT_SCATTER_EN_WIDTH 1 2440*4882a593Smuzhiyun #define FRF_CZ_RMFT_IP_OVERRIDE_LBN 73 2441*4882a593Smuzhiyun #define FRF_CZ_RMFT_IP_OVERRIDE_WIDTH 1 2442*4882a593Smuzhiyun #define FRF_CZ_RMFT_RXQ_ID_LBN 61 2443*4882a593Smuzhiyun #define FRF_CZ_RMFT_RXQ_ID_WIDTH 12 2444*4882a593Smuzhiyun #define FRF_CZ_RMFT_WILDCARD_MATCH_LBN 60 2445*4882a593Smuzhiyun #define FRF_CZ_RMFT_WILDCARD_MATCH_WIDTH 1 2446*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_LBN 12 2447*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_WIDTH 48 2448*4882a593Smuzhiyun #define FRF_CZ_RMFT_VLAN_ID_LBN 0 2449*4882a593Smuzhiyun #define FRF_CZ_RMFT_VLAN_ID_WIDTH 12 2450*4882a593Smuzhiyun 2451*4882a593Smuzhiyun /* TIMER_TBL: Timer table */ 2452*4882a593Smuzhiyun #define FR_BZ_TIMER_TBL 0x00f70000 2453*4882a593Smuzhiyun #define FR_BZ_TIMER_TBL_STEP 16 2454*4882a593Smuzhiyun #define FR_CZ_TIMER_TBL_ROWS 1024 2455*4882a593Smuzhiyun #define FR_BB_TIMER_TBL_ROWS 4096 2456*4882a593Smuzhiyun #define FRF_CZ_TIMER_Q_EN_LBN 33 2457*4882a593Smuzhiyun #define FRF_CZ_TIMER_Q_EN_WIDTH 1 2458*4882a593Smuzhiyun #define FRF_CZ_INT_ARMD_LBN 32 2459*4882a593Smuzhiyun #define FRF_CZ_INT_ARMD_WIDTH 1 2460*4882a593Smuzhiyun #define FRF_CZ_INT_PEND_LBN 31 2461*4882a593Smuzhiyun #define FRF_CZ_INT_PEND_WIDTH 1 2462*4882a593Smuzhiyun #define FRF_CZ_HOST_NOTIFY_MODE_LBN 30 2463*4882a593Smuzhiyun #define FRF_CZ_HOST_NOTIFY_MODE_WIDTH 1 2464*4882a593Smuzhiyun #define FRF_CZ_RELOAD_TIMER_VAL_LBN 16 2465*4882a593Smuzhiyun #define FRF_CZ_RELOAD_TIMER_VAL_WIDTH 14 2466*4882a593Smuzhiyun #define FRF_CZ_TIMER_MODE_LBN 14 2467*4882a593Smuzhiyun #define FRF_CZ_TIMER_MODE_WIDTH 2 2468*4882a593Smuzhiyun #define FFE_CZ_TIMER_MODE_INT_HLDOFF 3 2469*4882a593Smuzhiyun #define FFE_CZ_TIMER_MODE_TRIG_START 2 2470*4882a593Smuzhiyun #define FFE_CZ_TIMER_MODE_IMMED_START 1 2471*4882a593Smuzhiyun #define FFE_CZ_TIMER_MODE_DIS 0 2472*4882a593Smuzhiyun #define FRF_BB_TIMER_MODE_LBN 12 2473*4882a593Smuzhiyun #define FRF_BB_TIMER_MODE_WIDTH 2 2474*4882a593Smuzhiyun #define FFE_BB_TIMER_MODE_INT_HLDOFF 2 2475*4882a593Smuzhiyun #define FFE_BB_TIMER_MODE_TRIG_START 2 2476*4882a593Smuzhiyun #define FFE_BB_TIMER_MODE_IMMED_START 1 2477*4882a593Smuzhiyun #define FFE_BB_TIMER_MODE_DIS 0 2478*4882a593Smuzhiyun #define FRF_CZ_TIMER_VAL_LBN 0 2479*4882a593Smuzhiyun #define FRF_CZ_TIMER_VAL_WIDTH 14 2480*4882a593Smuzhiyun #define FRF_BB_TIMER_VAL_LBN 0 2481*4882a593Smuzhiyun #define FRF_BB_TIMER_VAL_WIDTH 12 2482*4882a593Smuzhiyun 2483*4882a593Smuzhiyun /* TX_PACE_TBL: Transmit pacing table */ 2484*4882a593Smuzhiyun #define FR_BZ_TX_PACE_TBL 0x00f80000 2485*4882a593Smuzhiyun #define FR_BZ_TX_PACE_TBL_STEP 16 2486*4882a593Smuzhiyun #define FR_CZ_TX_PACE_TBL_ROWS 1024 2487*4882a593Smuzhiyun #define FR_BB_TX_PACE_TBL_ROWS 4096 2488*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_LBN 0 2489*4882a593Smuzhiyun #define FRF_BZ_TX_PACE_WIDTH 5 2490*4882a593Smuzhiyun 2491*4882a593Smuzhiyun /* RX_INDIRECTION_TBL: RX Indirection Table */ 2492*4882a593Smuzhiyun #define FR_BZ_RX_INDIRECTION_TBL 0x00fb0000 2493*4882a593Smuzhiyun #define FR_BZ_RX_INDIRECTION_TBL_STEP 16 2494*4882a593Smuzhiyun #define FR_BZ_RX_INDIRECTION_TBL_ROWS 128 2495*4882a593Smuzhiyun #define FRF_BZ_IT_QUEUE_LBN 0 2496*4882a593Smuzhiyun #define FRF_BZ_IT_QUEUE_WIDTH 6 2497*4882a593Smuzhiyun 2498*4882a593Smuzhiyun /* TX_FILTER_TBL0: TCP/IPv4 Transmit filter table */ 2499*4882a593Smuzhiyun #define FR_CZ_TX_FILTER_TBL0 0x00fc0000 2500*4882a593Smuzhiyun #define FR_CZ_TX_FILTER_TBL0_STEP 16 2501*4882a593Smuzhiyun #define FR_CZ_TX_FILTER_TBL0_ROWS 8192 2502*4882a593Smuzhiyun #define FRF_CZ_TIFT_TCP_UDP_LBN 108 2503*4882a593Smuzhiyun #define FRF_CZ_TIFT_TCP_UDP_WIDTH 1 2504*4882a593Smuzhiyun #define FRF_CZ_TIFT_TXQ_ID_LBN 96 2505*4882a593Smuzhiyun #define FRF_CZ_TIFT_TXQ_ID_WIDTH 12 2506*4882a593Smuzhiyun #define FRF_CZ_TIFT_DEST_IP_LBN 64 2507*4882a593Smuzhiyun #define FRF_CZ_TIFT_DEST_IP_WIDTH 32 2508*4882a593Smuzhiyun #define FRF_CZ_TIFT_DEST_PORT_TCP_LBN 48 2509*4882a593Smuzhiyun #define FRF_CZ_TIFT_DEST_PORT_TCP_WIDTH 16 2510*4882a593Smuzhiyun #define FRF_CZ_TIFT_SRC_IP_LBN 16 2511*4882a593Smuzhiyun #define FRF_CZ_TIFT_SRC_IP_WIDTH 32 2512*4882a593Smuzhiyun #define FRF_CZ_TIFT_SRC_TCP_DEST_UDP_LBN 0 2513*4882a593Smuzhiyun #define FRF_CZ_TIFT_SRC_TCP_DEST_UDP_WIDTH 16 2514*4882a593Smuzhiyun 2515*4882a593Smuzhiyun /* TX_MAC_FILTER_TBL0: Transmit Ethernet filter table */ 2516*4882a593Smuzhiyun #define FR_CZ_TX_MAC_FILTER_TBL0 0x00fe0000 2517*4882a593Smuzhiyun #define FR_CZ_TX_MAC_FILTER_TBL0_STEP 16 2518*4882a593Smuzhiyun #define FR_CZ_TX_MAC_FILTER_TBL0_ROWS 512 2519*4882a593Smuzhiyun #define FRF_CZ_TMFT_TXQ_ID_LBN 61 2520*4882a593Smuzhiyun #define FRF_CZ_TMFT_TXQ_ID_WIDTH 12 2521*4882a593Smuzhiyun #define FRF_CZ_TMFT_WILDCARD_MATCH_LBN 60 2522*4882a593Smuzhiyun #define FRF_CZ_TMFT_WILDCARD_MATCH_WIDTH 1 2523*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_LBN 12 2524*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_WIDTH 48 2525*4882a593Smuzhiyun #define FRF_CZ_TMFT_VLAN_ID_LBN 0 2526*4882a593Smuzhiyun #define FRF_CZ_TMFT_VLAN_ID_WIDTH 12 2527*4882a593Smuzhiyun 2528*4882a593Smuzhiyun /* MC_TREG_SMEM: MC Shared Memory */ 2529*4882a593Smuzhiyun #define FR_CZ_MC_TREG_SMEM 0x00ff0000 2530*4882a593Smuzhiyun #define FR_CZ_MC_TREG_SMEM_STEP 4 2531*4882a593Smuzhiyun #define FR_CZ_MC_TREG_SMEM_ROWS 512 2532*4882a593Smuzhiyun #define FRF_CZ_MC_TREG_SMEM_ROW_LBN 0 2533*4882a593Smuzhiyun #define FRF_CZ_MC_TREG_SMEM_ROW_WIDTH 32 2534*4882a593Smuzhiyun 2535*4882a593Smuzhiyun /* MSIX_VECTOR_TABLE: MSIX Vector Table */ 2536*4882a593Smuzhiyun #define FR_BB_MSIX_VECTOR_TABLE 0x00ff0000 2537*4882a593Smuzhiyun #define FR_BZ_MSIX_VECTOR_TABLE_STEP 16 2538*4882a593Smuzhiyun #define FR_BB_MSIX_VECTOR_TABLE_ROWS 64 2539*4882a593Smuzhiyun /* MSIX_VECTOR_TABLE: MSIX Vector Table */ 2540*4882a593Smuzhiyun #define FR_CZ_MSIX_VECTOR_TABLE 0x00000000 2541*4882a593Smuzhiyun /* FR_BZ_MSIX_VECTOR_TABLE_STEP 16 */ 2542*4882a593Smuzhiyun #define FR_CZ_MSIX_VECTOR_TABLE_ROWS 1024 2543*4882a593Smuzhiyun #define FRF_BZ_MSIX_VECTOR_RESERVED_LBN 97 2544*4882a593Smuzhiyun #define FRF_BZ_MSIX_VECTOR_RESERVED_WIDTH 31 2545*4882a593Smuzhiyun #define FRF_BZ_MSIX_VECTOR_MASK_LBN 96 2546*4882a593Smuzhiyun #define FRF_BZ_MSIX_VECTOR_MASK_WIDTH 1 2547*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_DATA_LBN 64 2548*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_DATA_WIDTH 32 2549*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_ADDRESS_HI_LBN 32 2550*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_ADDRESS_HI_WIDTH 32 2551*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_ADDRESS_LO_LBN 0 2552*4882a593Smuzhiyun #define FRF_BZ_MSIX_MESSAGE_ADDRESS_LO_WIDTH 32 2553*4882a593Smuzhiyun 2554*4882a593Smuzhiyun /* MSIX_PBA_TABLE: MSIX Pending Bit Array */ 2555*4882a593Smuzhiyun #define FR_BB_MSIX_PBA_TABLE 0x00ff2000 2556*4882a593Smuzhiyun #define FR_BZ_MSIX_PBA_TABLE_STEP 4 2557*4882a593Smuzhiyun #define FR_BB_MSIX_PBA_TABLE_ROWS 2 2558*4882a593Smuzhiyun /* MSIX_PBA_TABLE: MSIX Pending Bit Array */ 2559*4882a593Smuzhiyun #define FR_CZ_MSIX_PBA_TABLE 0x00008000 2560*4882a593Smuzhiyun /* FR_BZ_MSIX_PBA_TABLE_STEP 4 */ 2561*4882a593Smuzhiyun #define FR_CZ_MSIX_PBA_TABLE_ROWS 32 2562*4882a593Smuzhiyun #define FRF_BZ_MSIX_PBA_PEND_DWORD_LBN 0 2563*4882a593Smuzhiyun #define FRF_BZ_MSIX_PBA_PEND_DWORD_WIDTH 32 2564*4882a593Smuzhiyun 2565*4882a593Smuzhiyun /* SRM_DBG_REG: SRAM debug access */ 2566*4882a593Smuzhiyun #define FR_BZ_SRM_DBG 0x03000000 2567*4882a593Smuzhiyun #define FR_BZ_SRM_DBG_STEP 8 2568*4882a593Smuzhiyun #define FR_CZ_SRM_DBG_ROWS 262144 2569*4882a593Smuzhiyun #define FR_BB_SRM_DBG_ROWS 2097152 2570*4882a593Smuzhiyun #define FRF_BZ_SRM_DBG_LBN 0 2571*4882a593Smuzhiyun #define FRF_BZ_SRM_DBG_WIDTH 64 2572*4882a593Smuzhiyun 2573*4882a593Smuzhiyun /* TB_MSIX_PBA_TABLE: MSIX Pending Bit Array */ 2574*4882a593Smuzhiyun #define FR_CZ_TB_MSIX_PBA_TABLE 0x00008000 2575*4882a593Smuzhiyun #define FR_CZ_TB_MSIX_PBA_TABLE_STEP 4 2576*4882a593Smuzhiyun #define FR_CZ_TB_MSIX_PBA_TABLE_ROWS 1024 2577*4882a593Smuzhiyun #define FRF_CZ_TB_MSIX_PBA_PEND_DWORD_LBN 0 2578*4882a593Smuzhiyun #define FRF_CZ_TB_MSIX_PBA_PEND_DWORD_WIDTH 32 2579*4882a593Smuzhiyun 2580*4882a593Smuzhiyun /* DRIVER_EV */ 2581*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_SUBCODE_LBN 56 2582*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_SUBCODE_WIDTH 4 2583*4882a593Smuzhiyun #define FSE_BZ_TX_DSC_ERROR_EV 15 2584*4882a593Smuzhiyun #define FSE_BZ_RX_DSC_ERROR_EV 14 2585*4882a593Smuzhiyun #define FSE_AA_RX_RECOVER_EV 11 2586*4882a593Smuzhiyun #define FSE_AZ_TIMER_EV 10 2587*4882a593Smuzhiyun #define FSE_AZ_TX_PKT_NON_TCP_UDP 9 2588*4882a593Smuzhiyun #define FSE_AZ_WAKE_UP_EV 6 2589*4882a593Smuzhiyun #define FSE_AZ_SRM_UPD_DONE_EV 5 2590*4882a593Smuzhiyun #define FSE_AB_EVQ_NOT_EN_EV 3 2591*4882a593Smuzhiyun #define FSE_AZ_EVQ_INIT_DONE_EV 2 2592*4882a593Smuzhiyun #define FSE_AZ_RX_DESCQ_FLS_DONE_EV 1 2593*4882a593Smuzhiyun #define FSE_AZ_TX_DESCQ_FLS_DONE_EV 0 2594*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_SUBDATA_LBN 0 2595*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_SUBDATA_WIDTH 14 2596*4882a593Smuzhiyun 2597*4882a593Smuzhiyun /* EVENT_ENTRY */ 2598*4882a593Smuzhiyun #define FSF_AZ_EV_CODE_LBN 60 2599*4882a593Smuzhiyun #define FSF_AZ_EV_CODE_WIDTH 4 2600*4882a593Smuzhiyun #define FSE_CZ_EV_CODE_MCDI_EV 12 2601*4882a593Smuzhiyun #define FSE_CZ_EV_CODE_USER_EV 8 2602*4882a593Smuzhiyun #define FSE_AZ_EV_CODE_DRV_GEN_EV 7 2603*4882a593Smuzhiyun #define FSE_AZ_EV_CODE_GLOBAL_EV 6 2604*4882a593Smuzhiyun #define FSE_AZ_EV_CODE_DRIVER_EV 5 2605*4882a593Smuzhiyun #define FSE_AZ_EV_CODE_TX_EV 2 2606*4882a593Smuzhiyun #define FSE_AZ_EV_CODE_RX_EV 0 2607*4882a593Smuzhiyun #define FSF_AZ_EV_DATA_LBN 0 2608*4882a593Smuzhiyun #define FSF_AZ_EV_DATA_WIDTH 60 2609*4882a593Smuzhiyun 2610*4882a593Smuzhiyun /* GLOBAL_EV */ 2611*4882a593Smuzhiyun #define FSF_BB_GLB_EV_RX_RECOVERY_LBN 12 2612*4882a593Smuzhiyun #define FSF_BB_GLB_EV_RX_RECOVERY_WIDTH 1 2613*4882a593Smuzhiyun #define FSF_AA_GLB_EV_RX_RECOVERY_LBN 11 2614*4882a593Smuzhiyun #define FSF_AA_GLB_EV_RX_RECOVERY_WIDTH 1 2615*4882a593Smuzhiyun #define FSF_BB_GLB_EV_XG_MGT_INTR_LBN 11 2616*4882a593Smuzhiyun #define FSF_BB_GLB_EV_XG_MGT_INTR_WIDTH 1 2617*4882a593Smuzhiyun #define FSF_AB_GLB_EV_XFP_PHY0_INTR_LBN 10 2618*4882a593Smuzhiyun #define FSF_AB_GLB_EV_XFP_PHY0_INTR_WIDTH 1 2619*4882a593Smuzhiyun #define FSF_AB_GLB_EV_XG_PHY0_INTR_LBN 9 2620*4882a593Smuzhiyun #define FSF_AB_GLB_EV_XG_PHY0_INTR_WIDTH 1 2621*4882a593Smuzhiyun #define FSF_AB_GLB_EV_G_PHY0_INTR_LBN 7 2622*4882a593Smuzhiyun #define FSF_AB_GLB_EV_G_PHY0_INTR_WIDTH 1 2623*4882a593Smuzhiyun 2624*4882a593Smuzhiyun /* LEGACY_INT_VEC */ 2625*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_FATAL_INT_LBN 64 2626*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_FATAL_INT_WIDTH 1 2627*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_INT_Q_LBN 40 2628*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_INT_Q_WIDTH 4 2629*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_INT_FLAG_LBN 32 2630*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_INT_FLAG_WIDTH 1 2631*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_EVQ_FIFO_HF_LBN 1 2632*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_EVQ_FIFO_HF_WIDTH 1 2633*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_EVQ_FIFO_AF_LBN 0 2634*4882a593Smuzhiyun #define FSF_AZ_NET_IVEC_EVQ_FIFO_AF_WIDTH 1 2635*4882a593Smuzhiyun 2636*4882a593Smuzhiyun /* MC_XGMAC_FLTR_RULE_DEF */ 2637*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_MODE_LBN 416 2638*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_MODE_WIDTH 1 2639*4882a593Smuzhiyun #define FSE_CZ_MC_XFRC_MODE_LAYERED 1 2640*4882a593Smuzhiyun #define FSE_CZ_MC_XFRC_MODE_SIMPLE 0 2641*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_HASH_LBN 384 2642*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_HASH_WIDTH 32 2643*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER4_BYTE_MASK_LBN 256 2644*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER4_BYTE_MASK_WIDTH 128 2645*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER3_BYTE_MASK_LBN 128 2646*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER3_BYTE_MASK_WIDTH 128 2647*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER2_OR_SIMPLE_BYTE_MASK_LBN 0 2648*4882a593Smuzhiyun #define FSF_CZ_MC_XFRC_LAYER2_OR_SIMPLE_BYTE_MASK_WIDTH 128 2649*4882a593Smuzhiyun 2650*4882a593Smuzhiyun /* RX_EV */ 2651*4882a593Smuzhiyun #define FSF_CZ_RX_EV_PKT_NOT_PARSED_LBN 58 2652*4882a593Smuzhiyun #define FSF_CZ_RX_EV_PKT_NOT_PARSED_WIDTH 1 2653*4882a593Smuzhiyun #define FSF_CZ_RX_EV_IPV6_PKT_LBN 57 2654*4882a593Smuzhiyun #define FSF_CZ_RX_EV_IPV6_PKT_WIDTH 1 2655*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PKT_OK_LBN 56 2656*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PKT_OK_WIDTH 1 2657*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PAUSE_FRM_ERR_LBN 55 2658*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PAUSE_FRM_ERR_WIDTH 1 2659*4882a593Smuzhiyun #define FSF_AZ_RX_EV_BUF_OWNER_ID_ERR_LBN 54 2660*4882a593Smuzhiyun #define FSF_AZ_RX_EV_BUF_OWNER_ID_ERR_WIDTH 1 2661*4882a593Smuzhiyun #define FSF_AZ_RX_EV_IP_FRAG_ERR_LBN 53 2662*4882a593Smuzhiyun #define FSF_AZ_RX_EV_IP_FRAG_ERR_WIDTH 1 2663*4882a593Smuzhiyun #define FSF_AZ_RX_EV_IP_HDR_CHKSUM_ERR_LBN 52 2664*4882a593Smuzhiyun #define FSF_AZ_RX_EV_IP_HDR_CHKSUM_ERR_WIDTH 1 2665*4882a593Smuzhiyun #define FSF_AZ_RX_EV_TCP_UDP_CHKSUM_ERR_LBN 51 2666*4882a593Smuzhiyun #define FSF_AZ_RX_EV_TCP_UDP_CHKSUM_ERR_WIDTH 1 2667*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ETH_CRC_ERR_LBN 50 2668*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ETH_CRC_ERR_WIDTH 1 2669*4882a593Smuzhiyun #define FSF_AZ_RX_EV_FRM_TRUNC_LBN 49 2670*4882a593Smuzhiyun #define FSF_AZ_RX_EV_FRM_TRUNC_WIDTH 1 2671*4882a593Smuzhiyun #define FSF_AA_RX_EV_DRIB_NIB_LBN 49 2672*4882a593Smuzhiyun #define FSF_AA_RX_EV_DRIB_NIB_WIDTH 1 2673*4882a593Smuzhiyun #define FSF_AZ_RX_EV_TOBE_DISC_LBN 47 2674*4882a593Smuzhiyun #define FSF_AZ_RX_EV_TOBE_DISC_WIDTH 1 2675*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PKT_TYPE_LBN 44 2676*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PKT_TYPE_WIDTH 3 2677*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_VLAN_JUMBO 5 2678*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_VLAN_LLC 4 2679*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_VLAN 3 2680*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_JUMBO 2 2681*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_LLC 1 2682*4882a593Smuzhiyun #define FSE_AZ_RX_EV_PKT_TYPE_ETH 0 2683*4882a593Smuzhiyun #define FSF_AZ_RX_EV_HDR_TYPE_LBN 42 2684*4882a593Smuzhiyun #define FSF_AZ_RX_EV_HDR_TYPE_WIDTH 2 2685*4882a593Smuzhiyun #define FSE_AZ_RX_EV_HDR_TYPE_OTHER 3 2686*4882a593Smuzhiyun #define FSE_AB_RX_EV_HDR_TYPE_IPV4_OTHER 2 2687*4882a593Smuzhiyun #define FSE_CZ_RX_EV_HDR_TYPE_IPV4V6_OTHER 2 2688*4882a593Smuzhiyun #define FSE_AB_RX_EV_HDR_TYPE_IPV4_UDP 1 2689*4882a593Smuzhiyun #define FSE_CZ_RX_EV_HDR_TYPE_IPV4V6_UDP 1 2690*4882a593Smuzhiyun #define FSE_AB_RX_EV_HDR_TYPE_IPV4_TCP 0 2691*4882a593Smuzhiyun #define FSE_CZ_RX_EV_HDR_TYPE_IPV4V6_TCP 0 2692*4882a593Smuzhiyun #define FSF_AZ_RX_EV_DESC_Q_EMPTY_LBN 41 2693*4882a593Smuzhiyun #define FSF_AZ_RX_EV_DESC_Q_EMPTY_WIDTH 1 2694*4882a593Smuzhiyun #define FSF_AZ_RX_EV_MCAST_HASH_MATCH_LBN 40 2695*4882a593Smuzhiyun #define FSF_AZ_RX_EV_MCAST_HASH_MATCH_WIDTH 1 2696*4882a593Smuzhiyun #define FSF_AZ_RX_EV_MCAST_PKT_LBN 39 2697*4882a593Smuzhiyun #define FSF_AZ_RX_EV_MCAST_PKT_WIDTH 1 2698*4882a593Smuzhiyun #define FSF_AA_RX_EV_RECOVERY_FLAG_LBN 37 2699*4882a593Smuzhiyun #define FSF_AA_RX_EV_RECOVERY_FLAG_WIDTH 1 2700*4882a593Smuzhiyun #define FSF_AZ_RX_EV_Q_LABEL_LBN 32 2701*4882a593Smuzhiyun #define FSF_AZ_RX_EV_Q_LABEL_WIDTH 5 2702*4882a593Smuzhiyun #define FSF_AZ_RX_EV_JUMBO_CONT_LBN 31 2703*4882a593Smuzhiyun #define FSF_AZ_RX_EV_JUMBO_CONT_WIDTH 1 2704*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PORT_LBN 30 2705*4882a593Smuzhiyun #define FSF_AZ_RX_EV_PORT_WIDTH 1 2706*4882a593Smuzhiyun #define FSF_AZ_RX_EV_BYTE_CNT_LBN 16 2707*4882a593Smuzhiyun #define FSF_AZ_RX_EV_BYTE_CNT_WIDTH 14 2708*4882a593Smuzhiyun #define FSF_AZ_RX_EV_SOP_LBN 15 2709*4882a593Smuzhiyun #define FSF_AZ_RX_EV_SOP_WIDTH 1 2710*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_PKT_OK_LBN 14 2711*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_PKT_OK_WIDTH 1 2712*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_DDIG_ERR_LBN 13 2713*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_DDIG_ERR_WIDTH 1 2714*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_HDIG_ERR_LBN 12 2715*4882a593Smuzhiyun #define FSF_AZ_RX_EV_ISCSI_HDIG_ERR_WIDTH 1 2716*4882a593Smuzhiyun #define FSF_AZ_RX_EV_DESC_PTR_LBN 0 2717*4882a593Smuzhiyun #define FSF_AZ_RX_EV_DESC_PTR_WIDTH 12 2718*4882a593Smuzhiyun 2719*4882a593Smuzhiyun /* RX_KER_DESC */ 2720*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_SIZE_LBN 48 2721*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_SIZE_WIDTH 14 2722*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_REGION_LBN 46 2723*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_REGION_WIDTH 2 2724*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_ADDR_LBN 0 2725*4882a593Smuzhiyun #define FSF_AZ_RX_KER_BUF_ADDR_WIDTH 46 2726*4882a593Smuzhiyun 2727*4882a593Smuzhiyun /* RX_USER_DESC */ 2728*4882a593Smuzhiyun #define FSF_AZ_RX_USER_2BYTE_OFFSET_LBN 20 2729*4882a593Smuzhiyun #define FSF_AZ_RX_USER_2BYTE_OFFSET_WIDTH 12 2730*4882a593Smuzhiyun #define FSF_AZ_RX_USER_BUF_ID_LBN 0 2731*4882a593Smuzhiyun #define FSF_AZ_RX_USER_BUF_ID_WIDTH 20 2732*4882a593Smuzhiyun 2733*4882a593Smuzhiyun /* TX_EV */ 2734*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PKT_ERR_LBN 38 2735*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PKT_ERR_WIDTH 1 2736*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PKT_TOO_BIG_LBN 37 2737*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PKT_TOO_BIG_WIDTH 1 2738*4882a593Smuzhiyun #define FSF_AZ_TX_EV_Q_LABEL_LBN 32 2739*4882a593Smuzhiyun #define FSF_AZ_TX_EV_Q_LABEL_WIDTH 5 2740*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PORT_LBN 16 2741*4882a593Smuzhiyun #define FSF_AZ_TX_EV_PORT_WIDTH 1 2742*4882a593Smuzhiyun #define FSF_AZ_TX_EV_WQ_FF_FULL_LBN 15 2743*4882a593Smuzhiyun #define FSF_AZ_TX_EV_WQ_FF_FULL_WIDTH 1 2744*4882a593Smuzhiyun #define FSF_AZ_TX_EV_BUF_OWNER_ID_ERR_LBN 14 2745*4882a593Smuzhiyun #define FSF_AZ_TX_EV_BUF_OWNER_ID_ERR_WIDTH 1 2746*4882a593Smuzhiyun #define FSF_AZ_TX_EV_COMP_LBN 12 2747*4882a593Smuzhiyun #define FSF_AZ_TX_EV_COMP_WIDTH 1 2748*4882a593Smuzhiyun #define FSF_AZ_TX_EV_DESC_PTR_LBN 0 2749*4882a593Smuzhiyun #define FSF_AZ_TX_EV_DESC_PTR_WIDTH 12 2750*4882a593Smuzhiyun 2751*4882a593Smuzhiyun /* TX_KER_DESC */ 2752*4882a593Smuzhiyun #define FSF_AZ_TX_KER_CONT_LBN 62 2753*4882a593Smuzhiyun #define FSF_AZ_TX_KER_CONT_WIDTH 1 2754*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BYTE_COUNT_LBN 48 2755*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BYTE_COUNT_WIDTH 14 2756*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BUF_REGION_LBN 46 2757*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BUF_REGION_WIDTH 2 2758*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BUF_ADDR_LBN 0 2759*4882a593Smuzhiyun #define FSF_AZ_TX_KER_BUF_ADDR_WIDTH 46 2760*4882a593Smuzhiyun 2761*4882a593Smuzhiyun /* TX_USER_DESC */ 2762*4882a593Smuzhiyun #define FSF_AZ_TX_USER_SW_EV_EN_LBN 48 2763*4882a593Smuzhiyun #define FSF_AZ_TX_USER_SW_EV_EN_WIDTH 1 2764*4882a593Smuzhiyun #define FSF_AZ_TX_USER_CONT_LBN 46 2765*4882a593Smuzhiyun #define FSF_AZ_TX_USER_CONT_WIDTH 1 2766*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BYTE_CNT_LBN 33 2767*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BYTE_CNT_WIDTH 13 2768*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BUF_ID_LBN 13 2769*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BUF_ID_WIDTH 20 2770*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BYTE_OFS_LBN 0 2771*4882a593Smuzhiyun #define FSF_AZ_TX_USER_BYTE_OFS_WIDTH 13 2772*4882a593Smuzhiyun 2773*4882a593Smuzhiyun /* USER_EV */ 2774*4882a593Smuzhiyun #define FSF_CZ_USER_QID_LBN 32 2775*4882a593Smuzhiyun #define FSF_CZ_USER_QID_WIDTH 10 2776*4882a593Smuzhiyun #define FSF_CZ_USER_EV_REG_VALUE_LBN 0 2777*4882a593Smuzhiyun #define FSF_CZ_USER_EV_REG_VALUE_WIDTH 32 2778*4882a593Smuzhiyun 2779*4882a593Smuzhiyun /************************************************************************** 2780*4882a593Smuzhiyun * 2781*4882a593Smuzhiyun * Falcon B0 PCIe core indirect registers 2782*4882a593Smuzhiyun * 2783*4882a593Smuzhiyun ************************************************************************** 2784*4882a593Smuzhiyun */ 2785*4882a593Smuzhiyun 2786*4882a593Smuzhiyun #define FPCR_BB_PCIE_DEVICE_CTRL_STAT 0x68 2787*4882a593Smuzhiyun 2788*4882a593Smuzhiyun #define FPCR_BB_PCIE_LINK_CTRL_STAT 0x70 2789*4882a593Smuzhiyun 2790*4882a593Smuzhiyun #define FPCR_BB_ACK_RPL_TIMER 0x700 2791*4882a593Smuzhiyun #define FPCRF_BB_ACK_TL_LBN 0 2792*4882a593Smuzhiyun #define FPCRF_BB_ACK_TL_WIDTH 16 2793*4882a593Smuzhiyun #define FPCRF_BB_RPL_TL_LBN 16 2794*4882a593Smuzhiyun #define FPCRF_BB_RPL_TL_WIDTH 16 2795*4882a593Smuzhiyun 2796*4882a593Smuzhiyun #define FPCR_BB_ACK_FREQ 0x70C 2797*4882a593Smuzhiyun #define FPCRF_BB_ACK_FREQ_LBN 0 2798*4882a593Smuzhiyun #define FPCRF_BB_ACK_FREQ_WIDTH 7 2799*4882a593Smuzhiyun 2800*4882a593Smuzhiyun /************************************************************************** 2801*4882a593Smuzhiyun * 2802*4882a593Smuzhiyun * Pseudo-registers and fields 2803*4882a593Smuzhiyun * 2804*4882a593Smuzhiyun ************************************************************************** 2805*4882a593Smuzhiyun */ 2806*4882a593Smuzhiyun 2807*4882a593Smuzhiyun /* Interrupt acknowledge work-around register (A0/A1 only) */ 2808*4882a593Smuzhiyun #define FR_AA_WORK_AROUND_BROKEN_PCI_READS 0x0070 2809*4882a593Smuzhiyun 2810*4882a593Smuzhiyun /* EE_SPI_HCMD_REG: SPI host command register */ 2811*4882a593Smuzhiyun /* Values for the EE_SPI_HCMD_SF_SEL register field */ 2812*4882a593Smuzhiyun #define FFE_AB_SPI_DEVICE_EEPROM 0 2813*4882a593Smuzhiyun #define FFE_AB_SPI_DEVICE_FLASH 1 2814*4882a593Smuzhiyun 2815*4882a593Smuzhiyun /* NIC_STAT_REG: NIC status register */ 2816*4882a593Smuzhiyun #define FRF_AB_STRAP_10G_LBN 2 2817*4882a593Smuzhiyun #define FRF_AB_STRAP_10G_WIDTH 1 2818*4882a593Smuzhiyun #define FRF_AA_STRAP_PCIE_LBN 0 2819*4882a593Smuzhiyun #define FRF_AA_STRAP_PCIE_WIDTH 1 2820*4882a593Smuzhiyun 2821*4882a593Smuzhiyun /* FATAL_INTR_REG_KER: Fatal interrupt register for Kernel */ 2822*4882a593Smuzhiyun #define FRF_AZ_FATAL_INTR_LBN 0 2823*4882a593Smuzhiyun #define FRF_AZ_FATAL_INTR_WIDTH 12 2824*4882a593Smuzhiyun 2825*4882a593Smuzhiyun /* SRM_CFG_REG: SRAM configuration register */ 2826*4882a593Smuzhiyun /* We treat the number of SRAM banks and bank size as a single field */ 2827*4882a593Smuzhiyun #define FRF_AZ_SRM_NB_SZ_LBN FRF_AZ_SRM_BANK_SIZE_LBN 2828*4882a593Smuzhiyun #define FRF_AZ_SRM_NB_SZ_WIDTH \ 2829*4882a593Smuzhiyun (FRF_AZ_SRM_BANK_SIZE_WIDTH + FRF_AZ_SRM_NUM_BANK_WIDTH) 2830*4882a593Smuzhiyun #define FFE_AB_SRM_NB1_SZ2M 0 2831*4882a593Smuzhiyun #define FFE_AB_SRM_NB1_SZ4M 1 2832*4882a593Smuzhiyun #define FFE_AB_SRM_NB1_SZ8M 2 2833*4882a593Smuzhiyun #define FFE_AB_SRM_NB_SZ_DEF 3 2834*4882a593Smuzhiyun #define FFE_AB_SRM_NB2_SZ4M 4 2835*4882a593Smuzhiyun #define FFE_AB_SRM_NB2_SZ8M 5 2836*4882a593Smuzhiyun #define FFE_AB_SRM_NB2_SZ16M 6 2837*4882a593Smuzhiyun #define FFE_AB_SRM_NB_SZ_RES 7 2838*4882a593Smuzhiyun 2839*4882a593Smuzhiyun /* RX_DESC_UPD_REGP0: Receive descriptor update register. */ 2840*4882a593Smuzhiyun /* We write just the last dword of these registers */ 2841*4882a593Smuzhiyun #define FR_AZ_RX_DESC_UPD_DWORD_P0 \ 2842*4882a593Smuzhiyun (BUILD_BUG_ON_ZERO(FR_AA_RX_DESC_UPD_KER != FR_BZ_RX_DESC_UPD_P0) + \ 2843*4882a593Smuzhiyun FR_BZ_RX_DESC_UPD_P0 + 3 * 4) 2844*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_WPTR_DWORD_LBN (FRF_AZ_RX_DESC_WPTR_LBN - 3 * 32) 2845*4882a593Smuzhiyun #define FRF_AZ_RX_DESC_WPTR_DWORD_WIDTH FRF_AZ_RX_DESC_WPTR_WIDTH 2846*4882a593Smuzhiyun 2847*4882a593Smuzhiyun /* TX_DESC_UPD_REGP0: Transmit descriptor update register. */ 2848*4882a593Smuzhiyun #define FR_AZ_TX_DESC_UPD_DWORD_P0 \ 2849*4882a593Smuzhiyun (BUILD_BUG_ON_ZERO(FR_AA_TX_DESC_UPD_KER != FR_BZ_TX_DESC_UPD_P0) + \ 2850*4882a593Smuzhiyun FR_BZ_TX_DESC_UPD_P0 + 3 * 4) 2851*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_WPTR_DWORD_LBN (FRF_AZ_TX_DESC_WPTR_LBN - 3 * 32) 2852*4882a593Smuzhiyun #define FRF_AZ_TX_DESC_WPTR_DWORD_WIDTH FRF_AZ_TX_DESC_WPTR_WIDTH 2853*4882a593Smuzhiyun 2854*4882a593Smuzhiyun /* GMF_CFG4_REG: GMAC FIFO configuration register 4 */ 2855*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRM_PAUSE_LBN 12 2856*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRM_PAUSE_WIDTH 1 2857*4882a593Smuzhiyun 2858*4882a593Smuzhiyun /* GMF_CFG5_REG: GMAC FIFO configuration register 5 */ 2859*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRMDC_PAUSE_LBN 12 2860*4882a593Smuzhiyun #define FRF_AB_GMF_HSTFLTRFRMDC_PAUSE_WIDTH 1 2861*4882a593Smuzhiyun 2862*4882a593Smuzhiyun /* XM_TX_PARAM_REG: XGMAC transmit parameter register */ 2863*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_LBN FRF_AB_XM_MAX_TX_FRM_SIZE_LO_LBN 2864*4882a593Smuzhiyun #define FRF_AB_XM_MAX_TX_FRM_SIZE_WIDTH (FRF_AB_XM_MAX_TX_FRM_SIZE_HI_WIDTH + \ 2865*4882a593Smuzhiyun FRF_AB_XM_MAX_TX_FRM_SIZE_LO_WIDTH) 2866*4882a593Smuzhiyun 2867*4882a593Smuzhiyun /* XM_RX_PARAM_REG: XGMAC receive parameter register */ 2868*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_LBN FRF_AB_XM_MAX_RX_FRM_SIZE_LO_LBN 2869*4882a593Smuzhiyun #define FRF_AB_XM_MAX_RX_FRM_SIZE_WIDTH (FRF_AB_XM_MAX_RX_FRM_SIZE_HI_WIDTH + \ 2870*4882a593Smuzhiyun FRF_AB_XM_MAX_RX_FRM_SIZE_LO_WIDTH) 2871*4882a593Smuzhiyun 2872*4882a593Smuzhiyun /* XX_TXDRV_CTL_REG: XAUI SerDes transmit drive control register */ 2873*4882a593Smuzhiyun /* Default values */ 2874*4882a593Smuzhiyun #define FFE_AB_XX_TXDRV_DEQ_DEF 0xe /* deq=.6 */ 2875*4882a593Smuzhiyun #define FFE_AB_XX_TXDRV_DTX_DEF 0x5 /* 1.25 */ 2876*4882a593Smuzhiyun #define FFE_AB_XX_SD_CTL_DRV_DEF 0 /* 20mA */ 2877*4882a593Smuzhiyun 2878*4882a593Smuzhiyun /* XX_CORE_STAT_REG: XAUI XGXS core status register */ 2879*4882a593Smuzhiyun /* XGXS all-lanes status fields */ 2880*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT_LBN FRF_AB_XX_SYNC_STAT0_LBN 2881*4882a593Smuzhiyun #define FRF_AB_XX_SYNC_STAT_WIDTH 4 2882*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_LBN FRF_AB_XX_COMMA_DET_CH0_LBN 2883*4882a593Smuzhiyun #define FRF_AB_XX_COMMA_DET_WIDTH 4 2884*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_LBN FRF_AB_XX_CHAR_ERR_CH0_LBN 2885*4882a593Smuzhiyun #define FRF_AB_XX_CHAR_ERR_WIDTH 4 2886*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_LBN FRF_AB_XX_DISPERR_CH0_LBN 2887*4882a593Smuzhiyun #define FRF_AB_XX_DISPERR_WIDTH 4 2888*4882a593Smuzhiyun #define FFE_AB_XX_STAT_ALL_LANES 0xf 2889*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG_LBN FRF_AB_XX_FORCE_SIG0_VAL_LBN 2890*4882a593Smuzhiyun #define FRF_AB_XX_FORCE_SIG_WIDTH 8 2891*4882a593Smuzhiyun #define FFE_AB_XX_FORCE_SIG_ALL_LANES 0xff 2892*4882a593Smuzhiyun 2893*4882a593Smuzhiyun /* RX_MAC_FILTER_TBL0 */ 2894*4882a593Smuzhiyun /* RMFT_DEST_MAC is wider than 32 bits */ 2895*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_LO_LBN FRF_CZ_RMFT_DEST_MAC_LBN 2896*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_LO_WIDTH 32 2897*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_HI_LBN (FRF_CZ_RMFT_DEST_MAC_LBN + 32) 2898*4882a593Smuzhiyun #define FRF_CZ_RMFT_DEST_MAC_HI_WIDTH (FRF_CZ_RMFT_DEST_MAC_WIDTH - 32) 2899*4882a593Smuzhiyun 2900*4882a593Smuzhiyun /* TX_MAC_FILTER_TBL0 */ 2901*4882a593Smuzhiyun /* TMFT_SRC_MAC is wider than 32 bits */ 2902*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_LO_LBN FRF_CZ_TMFT_SRC_MAC_LBN 2903*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_LO_WIDTH 32 2904*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_HI_LBN (FRF_CZ_TMFT_SRC_MAC_LBN + 32) 2905*4882a593Smuzhiyun #define FRF_CZ_TMFT_SRC_MAC_HI_WIDTH (FRF_CZ_TMFT_SRC_MAC_WIDTH - 32) 2906*4882a593Smuzhiyun 2907*4882a593Smuzhiyun /* TX_PACE_TBL */ 2908*4882a593Smuzhiyun /* Values >20 are documented as reserved, but will result in a queue going 2909*4882a593Smuzhiyun * into the fast bin with a pace value of zero. */ 2910*4882a593Smuzhiyun #define FFE_BZ_TX_PACE_OFF 0 2911*4882a593Smuzhiyun #define FFE_BZ_TX_PACE_RESERVED 21 2912*4882a593Smuzhiyun 2913*4882a593Smuzhiyun /* DRIVER_EV */ 2914*4882a593Smuzhiyun /* Sub-fields of an RX flush completion event */ 2915*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_RX_FLUSH_FAIL_LBN 12 2916*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_RX_FLUSH_FAIL_WIDTH 1 2917*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_RX_DESCQ_ID_LBN 0 2918*4882a593Smuzhiyun #define FSF_AZ_DRIVER_EV_RX_DESCQ_ID_WIDTH 12 2919*4882a593Smuzhiyun 2920*4882a593Smuzhiyun /* EVENT_ENTRY */ 2921*4882a593Smuzhiyun /* Magic number field for event test */ 2922*4882a593Smuzhiyun #define FSF_AZ_DRV_GEN_EV_MAGIC_LBN 0 2923*4882a593Smuzhiyun #define FSF_AZ_DRV_GEN_EV_MAGIC_WIDTH 32 2924*4882a593Smuzhiyun 2925*4882a593Smuzhiyun /* RX packet prefix */ 2926*4882a593Smuzhiyun #define FS_BZ_RX_PREFIX_HASH_OFST 12 2927*4882a593Smuzhiyun #define FS_BZ_RX_PREFIX_SIZE 16 2928*4882a593Smuzhiyun 2929*4882a593Smuzhiyun #endif /* EFX_FARCH_REGS_H */ 2930