Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*  *********************************************************************
0003     *  SB1250 Board Support Package
0004     *
0005     *  MAC constants and macros         File: sb1250_mac.h
0006     *
0007     *  This module contains constants and macros for the SB1250's
0008     *  ethernet controllers.
0009     *
0010     *  SB1250 specification level:  User's manual 1/02/02
0011     *
0012     *********************************************************************
0013     *
0014     *  Copyright 2000,2001,2002,2003
0015     *  Broadcom Corporation. All rights reserved.
0016     *
0017     ********************************************************************* */
0018 
0019 
0020 #ifndef _SB1250_MAC_H
0021 #define _SB1250_MAC_H
0022 
0023 #include <asm/sibyte/sb1250_defs.h>
0024 
0025 /*  *********************************************************************
0026     *  Ethernet MAC Registers
0027     ********************************************************************* */
0028 
0029 /*
0030  * MAC Configuration Register (Table 9-13)
0031  * Register: MAC_CFG_0
0032  * Register: MAC_CFG_1
0033  * Register: MAC_CFG_2
0034  */
0035 
0036 
0037 #define M_MAC_RESERVED0         _SB_MAKEMASK1(0)
0038 #define M_MAC_TX_HOLD_SOP_EN        _SB_MAKEMASK1(1)
0039 #define M_MAC_RETRY_EN          _SB_MAKEMASK1(2)
0040 #define M_MAC_RET_DRPREQ_EN     _SB_MAKEMASK1(3)
0041 #define M_MAC_RET_UFL_EN        _SB_MAKEMASK1(4)
0042 #define M_MAC_BURST_EN          _SB_MAKEMASK1(5)
0043 
0044 #define S_MAC_TX_PAUSE          _SB_MAKE64(6)
0045 #define M_MAC_TX_PAUSE_CNT      _SB_MAKEMASK(3, S_MAC_TX_PAUSE)
0046 #define V_MAC_TX_PAUSE_CNT(x)       _SB_MAKEVALUE(x, S_MAC_TX_PAUSE)
0047 
0048 #define K_MAC_TX_PAUSE_CNT_512      0
0049 #define K_MAC_TX_PAUSE_CNT_1K       1
0050 #define K_MAC_TX_PAUSE_CNT_2K       2
0051 #define K_MAC_TX_PAUSE_CNT_4K       3
0052 #define K_MAC_TX_PAUSE_CNT_8K       4
0053 #define K_MAC_TX_PAUSE_CNT_16K      5
0054 #define K_MAC_TX_PAUSE_CNT_32K      6
0055 #define K_MAC_TX_PAUSE_CNT_64K      7
0056 
0057 #define V_MAC_TX_PAUSE_CNT_512      V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_512)
0058 #define V_MAC_TX_PAUSE_CNT_1K       V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_1K)
0059 #define V_MAC_TX_PAUSE_CNT_2K       V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_2K)
0060 #define V_MAC_TX_PAUSE_CNT_4K       V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_4K)
0061 #define V_MAC_TX_PAUSE_CNT_8K       V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_8K)
0062 #define V_MAC_TX_PAUSE_CNT_16K      V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_16K)
0063 #define V_MAC_TX_PAUSE_CNT_32K      V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_32K)
0064 #define V_MAC_TX_PAUSE_CNT_64K      V_MAC_TX_PAUSE_CNT(K_MAC_TX_PAUSE_CNT_64K)
0065 
0066 #define M_MAC_RESERVED1         _SB_MAKEMASK(8, 9)
0067 
0068 #define M_MAC_AP_STAT_EN        _SB_MAKEMASK1(17)
0069 
0070 #if SIBYTE_HDR_FEATURE_CHIP(1480)
0071 #define M_MAC_TIMESTAMP         _SB_MAKEMASK1(18)
0072 #endif
0073 #define M_MAC_DRP_ERRPKT_EN     _SB_MAKEMASK1(19)
0074 #define M_MAC_DRP_FCSERRPKT_EN      _SB_MAKEMASK1(20)
0075 #define M_MAC_DRP_CODEERRPKT_EN     _SB_MAKEMASK1(21)
0076 #define M_MAC_DRP_DRBLERRPKT_EN     _SB_MAKEMASK1(22)
0077 #define M_MAC_DRP_RNTPKT_EN     _SB_MAKEMASK1(23)
0078 #define M_MAC_DRP_OSZPKT_EN     _SB_MAKEMASK1(24)
0079 #define M_MAC_DRP_LENERRPKT_EN      _SB_MAKEMASK1(25)
0080 
0081 #define M_MAC_RESERVED3         _SB_MAKEMASK(6, 26)
0082 
0083 #define M_MAC_BYPASS_SEL        _SB_MAKEMASK1(32)
0084 #define M_MAC_HDX_EN            _SB_MAKEMASK1(33)
0085 
0086 #define S_MAC_SPEED_SEL         _SB_MAKE64(34)
0087 #define M_MAC_SPEED_SEL         _SB_MAKEMASK(2, S_MAC_SPEED_SEL)
0088 #define V_MAC_SPEED_SEL(x)      _SB_MAKEVALUE(x, S_MAC_SPEED_SEL)
0089 #define G_MAC_SPEED_SEL(x)      _SB_GETVALUE(x, S_MAC_SPEED_SEL, M_MAC_SPEED_SEL)
0090 
0091 #define K_MAC_SPEED_SEL_10MBPS      0
0092 #define K_MAC_SPEED_SEL_100MBPS     1
0093 #define K_MAC_SPEED_SEL_1000MBPS    2
0094 #define K_MAC_SPEED_SEL_RESERVED    3
0095 
0096 #define V_MAC_SPEED_SEL_10MBPS      V_MAC_SPEED_SEL(K_MAC_SPEED_SEL_10MBPS)
0097 #define V_MAC_SPEED_SEL_100MBPS     V_MAC_SPEED_SEL(K_MAC_SPEED_SEL_100MBPS)
0098 #define V_MAC_SPEED_SEL_1000MBPS    V_MAC_SPEED_SEL(K_MAC_SPEED_SEL_1000MBPS)
0099 #define V_MAC_SPEED_SEL_RESERVED    V_MAC_SPEED_SEL(K_MAC_SPEED_SEL_RESERVED)
0100 
0101 #define M_MAC_TX_CLK_EDGE_SEL       _SB_MAKEMASK1(36)
0102 #define M_MAC_LOOPBACK_SEL      _SB_MAKEMASK1(37)
0103 #define M_MAC_FAST_SYNC         _SB_MAKEMASK1(38)
0104 #define M_MAC_SS_EN         _SB_MAKEMASK1(39)
0105 
0106 #define S_MAC_BYPASS_CFG        _SB_MAKE64(40)
0107 #define M_MAC_BYPASS_CFG        _SB_MAKEMASK(2, S_MAC_BYPASS_CFG)
0108 #define V_MAC_BYPASS_CFG(x)     _SB_MAKEVALUE(x, S_MAC_BYPASS_CFG)
0109 #define G_MAC_BYPASS_CFG(x)     _SB_GETVALUE(x, S_MAC_BYPASS_CFG, M_MAC_BYPASS_CFG)
0110 
0111 #define K_MAC_BYPASS_GMII       0
0112 #define K_MAC_BYPASS_ENCODED        1
0113 #define K_MAC_BYPASS_SOP        2
0114 #define K_MAC_BYPASS_EOP        3
0115 
0116 #define M_MAC_BYPASS_16         _SB_MAKEMASK1(42)
0117 #define M_MAC_BYPASS_FCS_CHK        _SB_MAKEMASK1(43)
0118 
0119 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0120 #define M_MAC_RX_CH_SEL_MSB     _SB_MAKEMASK1(44)
0121 #endif /* 1250 PASS2 || 112x PASS1 || 1480*/
0122 
0123 #if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0124 #define M_MAC_SPLIT_CH_SEL      _SB_MAKEMASK1(45)
0125 #endif /* 1250 PASS3 || 112x PASS1 || 1480 */
0126 
0127 #define S_MAC_BYPASS_IFG        _SB_MAKE64(46)
0128 #define M_MAC_BYPASS_IFG        _SB_MAKEMASK(8, S_MAC_BYPASS_IFG)
0129 #define V_MAC_BYPASS_IFG(x)     _SB_MAKEVALUE(x, S_MAC_BYPASS_IFG)
0130 #define G_MAC_BYPASS_IFG(x)     _SB_GETVALUE(x, S_MAC_BYPASS_IFG, M_MAC_BYPASS_IFG)
0131 
0132 #define K_MAC_FC_CMD_DISABLED       0
0133 #define K_MAC_FC_CMD_ENABLED        1
0134 #define K_MAC_FC_CMD_ENAB_FALSECARR 2
0135 
0136 #define V_MAC_FC_CMD_DISABLED       V_MAC_FC_CMD(K_MAC_FC_CMD_DISABLED)
0137 #define V_MAC_FC_CMD_ENABLED        V_MAC_FC_CMD(K_MAC_FC_CMD_ENABLED)
0138 #define V_MAC_FC_CMD_ENAB_FALSECARR V_MAC_FC_CMD(K_MAC_FC_CMD_ENAB_FALSECARR)
0139 
0140 #define M_MAC_FC_SEL            _SB_MAKEMASK1(54)
0141 
0142 #define S_MAC_FC_CMD            _SB_MAKE64(55)
0143 #define M_MAC_FC_CMD            _SB_MAKEMASK(2, S_MAC_FC_CMD)
0144 #define V_MAC_FC_CMD(x)         _SB_MAKEVALUE(x, S_MAC_FC_CMD)
0145 #define G_MAC_FC_CMD(x)         _SB_GETVALUE(x, S_MAC_FC_CMD, M_MAC_FC_CMD)
0146 
0147 #define S_MAC_RX_CH_SEL         _SB_MAKE64(57)
0148 #define M_MAC_RX_CH_SEL         _SB_MAKEMASK(7, S_MAC_RX_CH_SEL)
0149 #define V_MAC_RX_CH_SEL(x)      _SB_MAKEVALUE(x, S_MAC_RX_CH_SEL)
0150 #define G_MAC_RX_CH_SEL(x)      _SB_GETVALUE(x, S_MAC_RX_CH_SEL, M_MAC_RX_CH_SEL)
0151 
0152 
0153 /*
0154  * MAC Enable Registers
0155  * Register: MAC_ENABLE_0
0156  * Register: MAC_ENABLE_1
0157  * Register: MAC_ENABLE_2
0158  */
0159 
0160 #define M_MAC_RXDMA_EN0         _SB_MAKEMASK1(0)
0161 #define M_MAC_RXDMA_EN1         _SB_MAKEMASK1(1)
0162 #define M_MAC_TXDMA_EN0         _SB_MAKEMASK1(4)
0163 #define M_MAC_TXDMA_EN1         _SB_MAKEMASK1(5)
0164 
0165 #define M_MAC_PORT_RESET        _SB_MAKEMASK1(8)
0166 
0167 #if (SIBYTE_HDR_FEATURE_CHIP(1250) || SIBYTE_HDR_FEATURE_CHIP(112x))
0168 #define M_MAC_RX_ENABLE         _SB_MAKEMASK1(10)
0169 #define M_MAC_TX_ENABLE         _SB_MAKEMASK1(11)
0170 #define M_MAC_BYP_RX_ENABLE     _SB_MAKEMASK1(12)
0171 #define M_MAC_BYP_TX_ENABLE     _SB_MAKEMASK1(13)
0172 #endif
0173 
0174 /*
0175  * MAC reset information register (1280/1255)
0176  */
0177 #if SIBYTE_HDR_FEATURE_CHIP(1480)
0178 #define M_MAC_RX_CH0_PAUSE_ON   _SB_MAKEMASK1(8)
0179 #define M_MAC_RX_CH1_PAUSE_ON   _SB_MAKEMASK1(16)
0180 #define M_MAC_TX_CH0_PAUSE_ON   _SB_MAKEMASK1(24)
0181 #define M_MAC_TX_CH1_PAUSE_ON   _SB_MAKEMASK1(32)
0182 #endif
0183 
0184 /*
0185  * MAC DMA Control Register
0186  * Register: MAC_TXD_CTL_0
0187  * Register: MAC_TXD_CTL_1
0188  * Register: MAC_TXD_CTL_2
0189  */
0190 
0191 #define S_MAC_TXD_WEIGHT0       _SB_MAKE64(0)
0192 #define M_MAC_TXD_WEIGHT0       _SB_MAKEMASK(4, S_MAC_TXD_WEIGHT0)
0193 #define V_MAC_TXD_WEIGHT0(x)        _SB_MAKEVALUE(x, S_MAC_TXD_WEIGHT0)
0194 #define G_MAC_TXD_WEIGHT0(x)        _SB_GETVALUE(x, S_MAC_TXD_WEIGHT0, M_MAC_TXD_WEIGHT0)
0195 
0196 #define S_MAC_TXD_WEIGHT1       _SB_MAKE64(4)
0197 #define M_MAC_TXD_WEIGHT1       _SB_MAKEMASK(4, S_MAC_TXD_WEIGHT1)
0198 #define V_MAC_TXD_WEIGHT1(x)        _SB_MAKEVALUE(x, S_MAC_TXD_WEIGHT1)
0199 #define G_MAC_TXD_WEIGHT1(x)        _SB_GETVALUE(x, S_MAC_TXD_WEIGHT1, M_MAC_TXD_WEIGHT1)
0200 
0201 /*
0202  * MAC Fifo Threshold registers (Table 9-14)
0203  * Register: MAC_THRSH_CFG_0
0204  * Register: MAC_THRSH_CFG_1
0205  * Register: MAC_THRSH_CFG_2
0206  */
0207 
0208 #define S_MAC_TX_WR_THRSH       _SB_MAKE64(0)
0209 #if SIBYTE_HDR_FEATURE_UP_TO(1250, PASS1)
0210 /* XXX: Can't enable, as it has the same name as a pass2+ define below.  */
0211 /* #define M_MAC_TX_WR_THRSH           _SB_MAKEMASK(6, S_MAC_TX_WR_THRSH) */
0212 #endif /* up to 1250 PASS1 */
0213 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0214 #define M_MAC_TX_WR_THRSH       _SB_MAKEMASK(7, S_MAC_TX_WR_THRSH)
0215 #endif /* 1250 PASS2 || 112x PASS1 || 1480 */
0216 #define V_MAC_TX_WR_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_TX_WR_THRSH)
0217 #define G_MAC_TX_WR_THRSH(x)        _SB_GETVALUE(x, S_MAC_TX_WR_THRSH, M_MAC_TX_WR_THRSH)
0218 
0219 #define S_MAC_TX_RD_THRSH       _SB_MAKE64(8)
0220 #if SIBYTE_HDR_FEATURE_UP_TO(1250, PASS1)
0221 /* XXX: Can't enable, as it has the same name as a pass2+ define below.  */
0222 /* #define M_MAC_TX_RD_THRSH           _SB_MAKEMASK(6, S_MAC_TX_RD_THRSH) */
0223 #endif /* up to 1250 PASS1 */
0224 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0225 #define M_MAC_TX_RD_THRSH       _SB_MAKEMASK(7, S_MAC_TX_RD_THRSH)
0226 #endif /* 1250 PASS2 || 112x PASS1 || 1480 */
0227 #define V_MAC_TX_RD_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_TX_RD_THRSH)
0228 #define G_MAC_TX_RD_THRSH(x)        _SB_GETVALUE(x, S_MAC_TX_RD_THRSH, M_MAC_TX_RD_THRSH)
0229 
0230 #define S_MAC_TX_RL_THRSH       _SB_MAKE64(16)
0231 #define M_MAC_TX_RL_THRSH       _SB_MAKEMASK(4, S_MAC_TX_RL_THRSH)
0232 #define V_MAC_TX_RL_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_TX_RL_THRSH)
0233 #define G_MAC_TX_RL_THRSH(x)        _SB_GETVALUE(x, S_MAC_TX_RL_THRSH, M_MAC_TX_RL_THRSH)
0234 
0235 #define S_MAC_RX_PL_THRSH       _SB_MAKE64(24)
0236 #define M_MAC_RX_PL_THRSH       _SB_MAKEMASK(6, S_MAC_RX_PL_THRSH)
0237 #define V_MAC_RX_PL_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_RX_PL_THRSH)
0238 #define G_MAC_RX_PL_THRSH(x)        _SB_GETVALUE(x, S_MAC_RX_PL_THRSH, M_MAC_RX_PL_THRSH)
0239 
0240 #define S_MAC_RX_RD_THRSH       _SB_MAKE64(32)
0241 #define M_MAC_RX_RD_THRSH       _SB_MAKEMASK(6, S_MAC_RX_RD_THRSH)
0242 #define V_MAC_RX_RD_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_RX_RD_THRSH)
0243 #define G_MAC_RX_RD_THRSH(x)        _SB_GETVALUE(x, S_MAC_RX_RD_THRSH, M_MAC_RX_RD_THRSH)
0244 
0245 #define S_MAC_RX_RL_THRSH       _SB_MAKE64(40)
0246 #define M_MAC_RX_RL_THRSH       _SB_MAKEMASK(6, S_MAC_RX_RL_THRSH)
0247 #define V_MAC_RX_RL_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_RX_RL_THRSH)
0248 #define G_MAC_RX_RL_THRSH(x)        _SB_GETVALUE(x, S_MAC_RX_RL_THRSH, M_MAC_RX_RL_THRSH)
0249 
0250 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0251 #define S_MAC_ENC_FC_THRSH       _SB_MAKE64(56)
0252 #define M_MAC_ENC_FC_THRSH       _SB_MAKEMASK(6, S_MAC_ENC_FC_THRSH)
0253 #define V_MAC_ENC_FC_THRSH(x)        _SB_MAKEVALUE(x, S_MAC_ENC_FC_THRSH)
0254 #define G_MAC_ENC_FC_THRSH(x)        _SB_GETVALUE(x, S_MAC_ENC_FC_THRSH, M_MAC_ENC_FC_THRSH)
0255 #endif /* 1250 PASS2 || 112x PASS1 || 1480 */
0256 
0257 /*
0258  * MAC Frame Configuration Registers (Table 9-15)
0259  * Register: MAC_FRAME_CFG_0
0260  * Register: MAC_FRAME_CFG_1
0261  * Register: MAC_FRAME_CFG_2
0262  */
0263 
0264 /* XXXCGD: ??? Unused in pass2? */
0265 #define S_MAC_IFG_RX            _SB_MAKE64(0)
0266 #define M_MAC_IFG_RX            _SB_MAKEMASK(6, S_MAC_IFG_RX)
0267 #define V_MAC_IFG_RX(x)         _SB_MAKEVALUE(x, S_MAC_IFG_RX)
0268 #define G_MAC_IFG_RX(x)         _SB_GETVALUE(x, S_MAC_IFG_RX, M_MAC_IFG_RX)
0269 
0270 #if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0271 #define S_MAC_PRE_LEN           _SB_MAKE64(0)
0272 #define M_MAC_PRE_LEN           _SB_MAKEMASK(6, S_MAC_PRE_LEN)
0273 #define V_MAC_PRE_LEN(x)        _SB_MAKEVALUE(x, S_MAC_PRE_LEN)
0274 #define G_MAC_PRE_LEN(x)        _SB_GETVALUE(x, S_MAC_PRE_LEN, M_MAC_PRE_LEN)
0275 #endif /* 1250 PASS3 || 112x PASS1 || 1480 */
0276 
0277 #define S_MAC_IFG_TX            _SB_MAKE64(6)
0278 #define M_MAC_IFG_TX            _SB_MAKEMASK(6, S_MAC_IFG_TX)
0279 #define V_MAC_IFG_TX(x)         _SB_MAKEVALUE(x, S_MAC_IFG_TX)
0280 #define G_MAC_IFG_TX(x)         _SB_GETVALUE(x, S_MAC_IFG_TX, M_MAC_IFG_TX)
0281 
0282 #define S_MAC_IFG_THRSH         _SB_MAKE64(12)
0283 #define M_MAC_IFG_THRSH         _SB_MAKEMASK(6, S_MAC_IFG_THRSH)
0284 #define V_MAC_IFG_THRSH(x)      _SB_MAKEVALUE(x, S_MAC_IFG_THRSH)
0285 #define G_MAC_IFG_THRSH(x)      _SB_GETVALUE(x, S_MAC_IFG_THRSH, M_MAC_IFG_THRSH)
0286 
0287 #define S_MAC_BACKOFF_SEL       _SB_MAKE64(18)
0288 #define M_MAC_BACKOFF_SEL       _SB_MAKEMASK(4, S_MAC_BACKOFF_SEL)
0289 #define V_MAC_BACKOFF_SEL(x)        _SB_MAKEVALUE(x, S_MAC_BACKOFF_SEL)
0290 #define G_MAC_BACKOFF_SEL(x)        _SB_GETVALUE(x, S_MAC_BACKOFF_SEL, M_MAC_BACKOFF_SEL)
0291 
0292 #define S_MAC_LFSR_SEED         _SB_MAKE64(22)
0293 #define M_MAC_LFSR_SEED         _SB_MAKEMASK(8, S_MAC_LFSR_SEED)
0294 #define V_MAC_LFSR_SEED(x)      _SB_MAKEVALUE(x, S_MAC_LFSR_SEED)
0295 #define G_MAC_LFSR_SEED(x)      _SB_GETVALUE(x, S_MAC_LFSR_SEED, M_MAC_LFSR_SEED)
0296 
0297 #define S_MAC_SLOT_SIZE         _SB_MAKE64(30)
0298 #define M_MAC_SLOT_SIZE         _SB_MAKEMASK(10, S_MAC_SLOT_SIZE)
0299 #define V_MAC_SLOT_SIZE(x)      _SB_MAKEVALUE(x, S_MAC_SLOT_SIZE)
0300 #define G_MAC_SLOT_SIZE(x)      _SB_GETVALUE(x, S_MAC_SLOT_SIZE, M_MAC_SLOT_SIZE)
0301 
0302 #define S_MAC_MIN_FRAMESZ       _SB_MAKE64(40)
0303 #define M_MAC_MIN_FRAMESZ       _SB_MAKEMASK(8, S_MAC_MIN_FRAMESZ)
0304 #define V_MAC_MIN_FRAMESZ(x)        _SB_MAKEVALUE(x, S_MAC_MIN_FRAMESZ)
0305 #define G_MAC_MIN_FRAMESZ(x)        _SB_GETVALUE(x, S_MAC_MIN_FRAMESZ, M_MAC_MIN_FRAMESZ)
0306 
0307 #define S_MAC_MAX_FRAMESZ       _SB_MAKE64(48)
0308 #define M_MAC_MAX_FRAMESZ       _SB_MAKEMASK(16, S_MAC_MAX_FRAMESZ)
0309 #define V_MAC_MAX_FRAMESZ(x)        _SB_MAKEVALUE(x, S_MAC_MAX_FRAMESZ)
0310 #define G_MAC_MAX_FRAMESZ(x)        _SB_GETVALUE(x, S_MAC_MAX_FRAMESZ, M_MAC_MAX_FRAMESZ)
0311 
0312 /*
0313  * These constants are used to configure the fields within the Frame
0314  * Configuration Register.
0315  */
0316 
0317 #define K_MAC_IFG_RX_10         _SB_MAKE64(0)   /* See table 176, not used */
0318 #define K_MAC_IFG_RX_100        _SB_MAKE64(0)
0319 #define K_MAC_IFG_RX_1000       _SB_MAKE64(0)
0320 
0321 #define K_MAC_IFG_TX_10         _SB_MAKE64(20)
0322 #define K_MAC_IFG_TX_100        _SB_MAKE64(20)
0323 #define K_MAC_IFG_TX_1000       _SB_MAKE64(8)
0324 
0325 #define K_MAC_IFG_THRSH_10      _SB_MAKE64(4)
0326 #define K_MAC_IFG_THRSH_100     _SB_MAKE64(4)
0327 #define K_MAC_IFG_THRSH_1000        _SB_MAKE64(0)
0328 
0329 #define K_MAC_SLOT_SIZE_10      _SB_MAKE64(0)
0330 #define K_MAC_SLOT_SIZE_100     _SB_MAKE64(0)
0331 #define K_MAC_SLOT_SIZE_1000        _SB_MAKE64(0)
0332 
0333 #define V_MAC_IFG_RX_10        V_MAC_IFG_RX(K_MAC_IFG_RX_10)
0334 #define V_MAC_IFG_RX_100       V_MAC_IFG_RX(K_MAC_IFG_RX_100)
0335 #define V_MAC_IFG_RX_1000      V_MAC_IFG_RX(K_MAC_IFG_RX_1000)
0336 
0337 #define V_MAC_IFG_TX_10        V_MAC_IFG_TX(K_MAC_IFG_TX_10)
0338 #define V_MAC_IFG_TX_100       V_MAC_IFG_TX(K_MAC_IFG_TX_100)
0339 #define V_MAC_IFG_TX_1000      V_MAC_IFG_TX(K_MAC_IFG_TX_1000)
0340 
0341 #define V_MAC_IFG_THRSH_10     V_MAC_IFG_THRSH(K_MAC_IFG_THRSH_10)
0342 #define V_MAC_IFG_THRSH_100    V_MAC_IFG_THRSH(K_MAC_IFG_THRSH_100)
0343 #define V_MAC_IFG_THRSH_1000   V_MAC_IFG_THRSH(K_MAC_IFG_THRSH_1000)
0344 
0345 #define V_MAC_SLOT_SIZE_10     V_MAC_SLOT_SIZE(K_MAC_SLOT_SIZE_10)
0346 #define V_MAC_SLOT_SIZE_100    V_MAC_SLOT_SIZE(K_MAC_SLOT_SIZE_100)
0347 #define V_MAC_SLOT_SIZE_1000   V_MAC_SLOT_SIZE(K_MAC_SLOT_SIZE_1000)
0348 
0349 #define K_MAC_MIN_FRAMESZ_FIFO      _SB_MAKE64(9)
0350 #define K_MAC_MIN_FRAMESZ_DEFAULT   _SB_MAKE64(64)
0351 #define K_MAC_MAX_FRAMESZ_DEFAULT   _SB_MAKE64(1518)
0352 #define K_MAC_MAX_FRAMESZ_JUMBO     _SB_MAKE64(9216)
0353 
0354 #define V_MAC_MIN_FRAMESZ_FIFO      V_MAC_MIN_FRAMESZ(K_MAC_MIN_FRAMESZ_FIFO)
0355 #define V_MAC_MIN_FRAMESZ_DEFAULT   V_MAC_MIN_FRAMESZ(K_MAC_MIN_FRAMESZ_DEFAULT)
0356 #define V_MAC_MAX_FRAMESZ_DEFAULT   V_MAC_MAX_FRAMESZ(K_MAC_MAX_FRAMESZ_DEFAULT)
0357 #define V_MAC_MAX_FRAMESZ_JUMBO     V_MAC_MAX_FRAMESZ(K_MAC_MAX_FRAMESZ_JUMBO)
0358 
0359 /*
0360  * MAC VLAN Tag Registers (Table 9-16)
0361  * Register: MAC_VLANTAG_0
0362  * Register: MAC_VLANTAG_1
0363  * Register: MAC_VLANTAG_2
0364  */
0365 
0366 #define S_MAC_VLAN_TAG       _SB_MAKE64(0)
0367 #define M_MAC_VLAN_TAG       _SB_MAKEMASK(32, S_MAC_VLAN_TAG)
0368 #define V_MAC_VLAN_TAG(x)    _SB_MAKEVALUE(x, S_MAC_VLAN_TAG)
0369 #define G_MAC_VLAN_TAG(x)    _SB_GETVALUE(x, S_MAC_VLAN_TAG, M_MAC_VLAN_TAG)
0370 
0371 #if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1)
0372 #define S_MAC_TX_PKT_OFFSET  _SB_MAKE64(32)
0373 #define M_MAC_TX_PKT_OFFSET  _SB_MAKEMASK(8, S_MAC_TX_PKT_OFFSET)
0374 #define V_MAC_TX_PKT_OFFSET(x)   _SB_MAKEVALUE(x, S_MAC_TX_PKT_OFFSET)
0375 #define G_MAC_TX_PKT_OFFSET(x)   _SB_GETVALUE(x, S_MAC_TX_PKT_OFFSET, M_MAC_TX_PKT_OFFSET)
0376 
0377 #define S_MAC_TX_CRC_OFFSET  _SB_MAKE64(40)
0378 #define M_MAC_TX_CRC_OFFSET  _SB_MAKEMASK(8, S_MAC_TX_CRC_OFFSET)
0379 #define V_MAC_TX_CRC_OFFSET(x)   _SB_MAKEVALUE(x, S_MAC_TX_CRC_OFFSET)
0380 #define G_MAC_TX_CRC_OFFSET(x)   _SB_GETVALUE(x, S_MAC_TX_CRC_OFFSET, M_MAC_TX_CRC_OFFSET)
0381 
0382 #define M_MAC_CH_BASE_FC_EN  _SB_MAKEMASK1(48)
0383 #endif /* 1250 PASS3 || 112x PASS1 */
0384 
0385 /*
0386  * MAC Status Registers (Table 9-17)
0387  * Also used for the MAC Interrupt Mask Register (Table 9-18)
0388  * Register: MAC_STATUS_0
0389  * Register: MAC_STATUS_1
0390  * Register: MAC_STATUS_2
0391  * Register: MAC_INT_MASK_0
0392  * Register: MAC_INT_MASK_1
0393  * Register: MAC_INT_MASK_2
0394  */
0395 
0396 /*
0397  * Use these constants to shift the appropriate channel
0398  * into the CH0 position so the same tests can be used
0399  * on each channel.
0400  */
0401 
0402 #define S_MAC_RX_CH0            _SB_MAKE64(0)
0403 #define S_MAC_RX_CH1            _SB_MAKE64(8)
0404 #define S_MAC_TX_CH0            _SB_MAKE64(16)
0405 #define S_MAC_TX_CH1            _SB_MAKE64(24)
0406 
0407 #define S_MAC_TXCHANNELS        _SB_MAKE64(16)  /* this is 1st TX chan */
0408 #define S_MAC_CHANWIDTH         _SB_MAKE64(8)   /* bits between channels */
0409 
0410 /*
0411  *  These are the same as RX channel 0.  The idea here
0412  *  is that you'll use one of the "S_" things above
0413  *  and pass just the six bits to a DMA-channel-specific ISR
0414  */
0415 #define M_MAC_INT_CHANNEL       _SB_MAKEMASK(8, 0)
0416 #define M_MAC_INT_EOP_COUNT     _SB_MAKEMASK1(0)
0417 #define M_MAC_INT_EOP_TIMER     _SB_MAKEMASK1(1)
0418 #define M_MAC_INT_EOP_SEEN      _SB_MAKEMASK1(2)
0419 #define M_MAC_INT_HWM           _SB_MAKEMASK1(3)
0420 #define M_MAC_INT_LWM           _SB_MAKEMASK1(4)
0421 #define M_MAC_INT_DSCR          _SB_MAKEMASK1(5)
0422 #define M_MAC_INT_ERR           _SB_MAKEMASK1(6)
0423 #define M_MAC_INT_DZERO         _SB_MAKEMASK1(7)    /* only for TX channels */
0424 #define M_MAC_INT_DROP          _SB_MAKEMASK1(7)    /* only for RX channels */
0425 
0426 /*
0427  * In the following definitions we use ch (0/1) and txrx (TX=1, RX=0, see
0428  * also DMA_TX/DMA_RX in sb_regs.h).
0429  */
0430 #define S_MAC_STATUS_CH_OFFSET(ch, txrx) _SB_MAKE64(((ch) + 2 * (txrx)) * S_MAC_CHANWIDTH)
0431 
0432 #define M_MAC_STATUS_CHANNEL(ch, txrx)   _SB_MAKEVALUE(_SB_MAKEMASK(8, 0), S_MAC_STATUS_CH_OFFSET(ch, txrx))
0433 #define M_MAC_STATUS_EOP_COUNT(ch, txrx) _SB_MAKEVALUE(M_MAC_INT_EOP_COUNT, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0434 #define M_MAC_STATUS_EOP_TIMER(ch, txrx) _SB_MAKEVALUE(M_MAC_INT_EOP_TIMER, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0435 #define M_MAC_STATUS_EOP_SEEN(ch, txrx)  _SB_MAKEVALUE(M_MAC_INT_EOP_SEEN, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0436 #define M_MAC_STATUS_HWM(ch, txrx)   _SB_MAKEVALUE(M_MAC_INT_HWM, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0437 #define M_MAC_STATUS_LWM(ch, txrx)   _SB_MAKEVALUE(M_MAC_INT_LWM, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0438 #define M_MAC_STATUS_DSCR(ch, txrx)  _SB_MAKEVALUE(M_MAC_INT_DSCR, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0439 #define M_MAC_STATUS_ERR(ch, txrx)   _SB_MAKEVALUE(M_MAC_INT_ERR, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0440 #define M_MAC_STATUS_DZERO(ch, txrx)     _SB_MAKEVALUE(M_MAC_INT_DZERO, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0441 #define M_MAC_STATUS_DROP(ch, txrx)  _SB_MAKEVALUE(M_MAC_INT_DROP, S_MAC_STATUS_CH_OFFSET(ch, txrx))
0442 #define M_MAC_STATUS_OTHER_ERR       _SB_MAKEVALUE(_SB_MAKEMASK(7, 0), 40)
0443 
0444 
0445 #define M_MAC_RX_UNDRFL         _SB_MAKEMASK1(40)
0446 #define M_MAC_RX_OVRFL          _SB_MAKEMASK1(41)
0447 #define M_MAC_TX_UNDRFL         _SB_MAKEMASK1(42)
0448 #define M_MAC_TX_OVRFL          _SB_MAKEMASK1(43)
0449 #define M_MAC_LTCOL_ERR         _SB_MAKEMASK1(44)
0450 #define M_MAC_EXCOL_ERR         _SB_MAKEMASK1(45)
0451 #define M_MAC_CNTR_OVRFL_ERR        _SB_MAKEMASK1(46)
0452 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0453 #define M_MAC_SPLIT_EN          _SB_MAKEMASK1(47)   /* interrupt mask only */
0454 #endif /* 1250 PASS2 || 112x PASS1 || 1480 */
0455 
0456 #define S_MAC_COUNTER_ADDR      _SB_MAKE64(47)
0457 #define M_MAC_COUNTER_ADDR      _SB_MAKEMASK(5, S_MAC_COUNTER_ADDR)
0458 #define V_MAC_COUNTER_ADDR(x)       _SB_MAKEVALUE(x, S_MAC_COUNTER_ADDR)
0459 #define G_MAC_COUNTER_ADDR(x)       _SB_GETVALUE(x, S_MAC_COUNTER_ADDR, M_MAC_COUNTER_ADDR)
0460 
0461 #if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0462 #define M_MAC_TX_PAUSE_ON       _SB_MAKEMASK1(52)
0463 #endif /* 1250 PASS3 || 112x PASS1 || 1480 */
0464 
0465 /*
0466  * MAC Fifo Pointer Registers (Table 9-19)    [Debug register]
0467  * Register: MAC_FIFO_PTRS_0
0468  * Register: MAC_FIFO_PTRS_1
0469  * Register: MAC_FIFO_PTRS_2
0470  */
0471 
0472 #define S_MAC_TX_WRPTR          _SB_MAKE64(0)
0473 #define M_MAC_TX_WRPTR          _SB_MAKEMASK(6, S_MAC_TX_WRPTR)
0474 #define V_MAC_TX_WRPTR(x)       _SB_MAKEVALUE(x, S_MAC_TX_WRPTR)
0475 #define G_MAC_TX_WRPTR(x)       _SB_GETVALUE(x, S_MAC_TX_WRPTR, M_MAC_TX_WRPTR)
0476 
0477 #define S_MAC_TX_RDPTR          _SB_MAKE64(8)
0478 #define M_MAC_TX_RDPTR          _SB_MAKEMASK(6, S_MAC_TX_RDPTR)
0479 #define V_MAC_TX_RDPTR(x)       _SB_MAKEVALUE(x, S_MAC_TX_RDPTR)
0480 #define G_MAC_TX_RDPTR(x)       _SB_GETVALUE(x, S_MAC_TX_RDPTR, M_MAC_TX_RDPTR)
0481 
0482 #define S_MAC_RX_WRPTR          _SB_MAKE64(16)
0483 #define M_MAC_RX_WRPTR          _SB_MAKEMASK(6, S_MAC_RX_WRPTR)
0484 #define V_MAC_RX_WRPTR(x)       _SB_MAKEVALUE(x, S_MAC_RX_WRPTR)
0485 #define G_MAC_RX_WRPTR(x)       _SB_GETVALUE(x, S_MAC_RX_WRPTR, M_MAC_TX_WRPTR)
0486 
0487 #define S_MAC_RX_RDPTR          _SB_MAKE64(24)
0488 #define M_MAC_RX_RDPTR          _SB_MAKEMASK(6, S_MAC_RX_RDPTR)
0489 #define V_MAC_RX_RDPTR(x)       _SB_MAKEVALUE(x, S_MAC_RX_RDPTR)
0490 #define G_MAC_RX_RDPTR(x)       _SB_GETVALUE(x, S_MAC_RX_RDPTR, M_MAC_TX_RDPTR)
0491 
0492 /*
0493  * MAC Fifo End Of Packet Count Registers (Table 9-20)  [Debug register]
0494  * Register: MAC_EOPCNT_0
0495  * Register: MAC_EOPCNT_1
0496  * Register: MAC_EOPCNT_2
0497  */
0498 
0499 #define S_MAC_TX_EOP_COUNTER        _SB_MAKE64(0)
0500 #define M_MAC_TX_EOP_COUNTER        _SB_MAKEMASK(6, S_MAC_TX_EOP_COUNTER)
0501 #define V_MAC_TX_EOP_COUNTER(x)     _SB_MAKEVALUE(x, S_MAC_TX_EOP_COUNTER)
0502 #define G_MAC_TX_EOP_COUNTER(x)     _SB_GETVALUE(x, S_MAC_TX_EOP_COUNTER, M_MAC_TX_EOP_COUNTER)
0503 
0504 #define S_MAC_RX_EOP_COUNTER        _SB_MAKE64(8)
0505 #define M_MAC_RX_EOP_COUNTER        _SB_MAKEMASK(6, S_MAC_RX_EOP_COUNTER)
0506 #define V_MAC_RX_EOP_COUNTER(x)     _SB_MAKEVALUE(x, S_MAC_RX_EOP_COUNTER)
0507 #define G_MAC_RX_EOP_COUNTER(x)     _SB_GETVALUE(x, S_MAC_RX_EOP_COUNTER, M_MAC_RX_EOP_COUNTER)
0508 
0509 /*
0510  * MAC Receive Address Filter Exact Match Registers (Table 9-21)
0511  * Registers: MAC_ADDR0_0 through MAC_ADDR7_0
0512  * Registers: MAC_ADDR0_1 through MAC_ADDR7_1
0513  * Registers: MAC_ADDR0_2 through MAC_ADDR7_2
0514  */
0515 
0516 /* No bitfields */
0517 
0518 /*
0519  * MAC Receive Address Filter Mask Registers
0520  * Registers: MAC_ADDRMASK0_0 and MAC_ADDRMASK0_1
0521  * Registers: MAC_ADDRMASK1_0 and MAC_ADDRMASK1_1
0522  * Registers: MAC_ADDRMASK2_0 and MAC_ADDRMASK2_1
0523  */
0524 
0525 /* No bitfields */
0526 
0527 /*
0528  * MAC Receive Address Filter Hash Match Registers (Table 9-22)
0529  * Registers: MAC_HASH0_0 through MAC_HASH7_0
0530  * Registers: MAC_HASH0_1 through MAC_HASH7_1
0531  * Registers: MAC_HASH0_2 through MAC_HASH7_2
0532  */
0533 
0534 /* No bitfields */
0535 
0536 /*
0537  * MAC Transmit Source Address Registers (Table 9-23)
0538  * Register: MAC_ETHERNET_ADDR_0
0539  * Register: MAC_ETHERNET_ADDR_1
0540  * Register: MAC_ETHERNET_ADDR_2
0541  */
0542 
0543 /* No bitfields */
0544 
0545 /*
0546  * MAC Packet Type Configuration Register
0547  * Register: MAC_TYPE_CFG_0
0548  * Register: MAC_TYPE_CFG_1
0549  * Register: MAC_TYPE_CFG_2
0550  */
0551 
0552 #define S_TYPECFG_TYPESIZE  _SB_MAKE64(16)
0553 
0554 #define S_TYPECFG_TYPE0     _SB_MAKE64(0)
0555 #define M_TYPECFG_TYPE0     _SB_MAKEMASK(16, S_TYPECFG_TYPE0)
0556 #define V_TYPECFG_TYPE0(x)  _SB_MAKEVALUE(x, S_TYPECFG_TYPE0)
0557 #define G_TYPECFG_TYPE0(x)  _SB_GETVALUE(x, S_TYPECFG_TYPE0, M_TYPECFG_TYPE0)
0558 
0559 #define S_TYPECFG_TYPE1     _SB_MAKE64(0)
0560 #define M_TYPECFG_TYPE1     _SB_MAKEMASK(16, S_TYPECFG_TYPE1)
0561 #define V_TYPECFG_TYPE1(x)  _SB_MAKEVALUE(x, S_TYPECFG_TYPE1)
0562 #define G_TYPECFG_TYPE1(x)  _SB_GETVALUE(x, S_TYPECFG_TYPE1, M_TYPECFG_TYPE1)
0563 
0564 #define S_TYPECFG_TYPE2     _SB_MAKE64(0)
0565 #define M_TYPECFG_TYPE2     _SB_MAKEMASK(16, S_TYPECFG_TYPE2)
0566 #define V_TYPECFG_TYPE2(x)  _SB_MAKEVALUE(x, S_TYPECFG_TYPE2)
0567 #define G_TYPECFG_TYPE2(x)  _SB_GETVALUE(x, S_TYPECFG_TYPE2, M_TYPECFG_TYPE2)
0568 
0569 #define S_TYPECFG_TYPE3     _SB_MAKE64(0)
0570 #define M_TYPECFG_TYPE3     _SB_MAKEMASK(16, S_TYPECFG_TYPE3)
0571 #define V_TYPECFG_TYPE3(x)  _SB_MAKEVALUE(x, S_TYPECFG_TYPE3)
0572 #define G_TYPECFG_TYPE3(x)  _SB_GETVALUE(x, S_TYPECFG_TYPE3, M_TYPECFG_TYPE3)
0573 
0574 /*
0575  * MAC Receive Address Filter Control Registers (Table 9-24)
0576  * Register: MAC_ADFILTER_CFG_0
0577  * Register: MAC_ADFILTER_CFG_1
0578  * Register: MAC_ADFILTER_CFG_2
0579  */
0580 
0581 #define M_MAC_ALLPKT_EN     _SB_MAKEMASK1(0)
0582 #define M_MAC_UCAST_EN      _SB_MAKEMASK1(1)
0583 #define M_MAC_UCAST_INV     _SB_MAKEMASK1(2)
0584 #define M_MAC_MCAST_EN      _SB_MAKEMASK1(3)
0585 #define M_MAC_MCAST_INV     _SB_MAKEMASK1(4)
0586 #define M_MAC_BCAST_EN      _SB_MAKEMASK1(5)
0587 #define M_MAC_DIRECT_INV    _SB_MAKEMASK1(6)
0588 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0589 #define M_MAC_ALLMCAST_EN   _SB_MAKEMASK1(7)
0590 #endif /* 1250 PASS2 || 112x PASS1 || 1480 */
0591 
0592 #define S_MAC_IPHDR_OFFSET  _SB_MAKE64(8)
0593 #define M_MAC_IPHDR_OFFSET  _SB_MAKEMASK(8, S_MAC_IPHDR_OFFSET)
0594 #define V_MAC_IPHDR_OFFSET(x)   _SB_MAKEVALUE(x, S_MAC_IPHDR_OFFSET)
0595 #define G_MAC_IPHDR_OFFSET(x)   _SB_GETVALUE(x, S_MAC_IPHDR_OFFSET, M_MAC_IPHDR_OFFSET)
0596 
0597 #if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1) || SIBYTE_HDR_FEATURE_CHIP(1480)
0598 #define S_MAC_RX_CRC_OFFSET _SB_MAKE64(16)
0599 #define M_MAC_RX_CRC_OFFSET _SB_MAKEMASK(8, S_MAC_RX_CRC_OFFSET)
0600 #define V_MAC_RX_CRC_OFFSET(x)  _SB_MAKEVALUE(x, S_MAC_RX_CRC_OFFSET)
0601 #define G_MAC_RX_CRC_OFFSET(x)  _SB_GETVALUE(x, S_MAC_RX_CRC_OFFSET, M_MAC_RX_CRC_OFFSET)
0602 
0603 #define S_MAC_RX_PKT_OFFSET _SB_MAKE64(24)
0604 #define M_MAC_RX_PKT_OFFSET _SB_MAKEMASK(8, S_MAC_RX_PKT_OFFSET)
0605 #define V_MAC_RX_PKT_OFFSET(x)  _SB_MAKEVALUE(x, S_MAC_RX_PKT_OFFSET)
0606 #define G_MAC_RX_PKT_OFFSET(x)  _SB_GETVALUE(x, S_MAC_RX_PKT_OFFSET, M_MAC_RX_PKT_OFFSET)
0607 
0608 #define M_MAC_FWDPAUSE_EN   _SB_MAKEMASK1(32)
0609 #define M_MAC_VLAN_DET_EN   _SB_MAKEMASK1(33)
0610 
0611 #define S_MAC_RX_CH_MSN_SEL _SB_MAKE64(34)
0612 #define M_MAC_RX_CH_MSN_SEL _SB_MAKEMASK(8, S_MAC_RX_CH_MSN_SEL)
0613 #define V_MAC_RX_CH_MSN_SEL(x)  _SB_MAKEVALUE(x, S_MAC_RX_CH_MSN_SEL)
0614 #define G_MAC_RX_CH_MSN_SEL(x)  _SB_GETVALUE(x, S_MAC_RX_CH_MSN_SEL, M_MAC_RX_CH_MSN_SEL)
0615 #endif /* 1250 PASS3 || 112x PASS1 || 1480 */
0616 
0617 /*
0618  * MAC Receive Channel Select Registers (Table 9-25)
0619  */
0620 
0621 /* no bitfields */
0622 
0623 /*
0624  * MAC MII Management Interface Registers (Table 9-26)
0625  * Register: MAC_MDIO_0
0626  * Register: MAC_MDIO_1
0627  * Register: MAC_MDIO_2
0628  */
0629 
0630 #define S_MAC_MDC       0
0631 #define S_MAC_MDIO_DIR      1
0632 #define S_MAC_MDIO_OUT      2
0633 #define S_MAC_GENC      3
0634 #define S_MAC_MDIO_IN       4
0635 
0636 #define M_MAC_MDC       _SB_MAKEMASK1(S_MAC_MDC)
0637 #define M_MAC_MDIO_DIR      _SB_MAKEMASK1(S_MAC_MDIO_DIR)
0638 #define M_MAC_MDIO_DIR_INPUT    _SB_MAKEMASK1(S_MAC_MDIO_DIR)
0639 #define M_MAC_MDIO_OUT      _SB_MAKEMASK1(S_MAC_MDIO_OUT)
0640 #define M_MAC_GENC      _SB_MAKEMASK1(S_MAC_GENC)
0641 #define M_MAC_MDIO_IN       _SB_MAKEMASK1(S_MAC_MDIO_IN)
0642 
0643 #endif