[BACK]Return to ciphyreg.h CVS log [TXT][DIR] Up to [local] / sys / dev / mii

Annotation of sys/dev/mii/ciphyreg.h, Revision 1.1

1.1     ! nbrk        1: /*     $OpenBSD: ciphyreg.h,v 1.2 2006/02/28 08:13:47 jsg Exp $        */
        !             2: /*     $FreeBSD: ciphyreg.h,v 1.1 2004/09/10 20:57:45 wpaul Exp $      */
        !             3: /*
        !             4:  * Copyright (c) 2004
        !             5:  *     Bill Paul <wpaul@windriver.com>.  All rights reserved.
        !             6:  *
        !             7:  * Redistribution and use in source and binary forms, with or without
        !             8:  * modification, are permitted provided that the following conditions
        !             9:  * are met:
        !            10:  * 1. Redistributions of source code must retain the above copyright
        !            11:  *    notice, this list of conditions and the following disclaimer.
        !            12:  * 2. Redistributions in binary form must reproduce the above copyright
        !            13:  *    notice, this list of conditions and the following disclaimer in the
        !            14:  *    documentation and/or other materials provided with the distribution.
        !            15:  * 3. All advertising materials mentioning features or use of this software
        !            16:  *    must display the following acknowledgement:
        !            17:  *     This product includes software developed by Bill Paul.
        !            18:  * 4. Neither the name of the author nor the names of any co-contributors
        !            19:  *    may be used to endorse or promote products derived from this software
        !            20:  *    without specific prior written permission.
        !            21:  *
        !            22:  * THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
        !            23:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
        !            24:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
        !            25:  * ARE DISCLAIMED.  IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
        !            26:  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
        !            27:  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
        !            28:  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
        !            29:  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
        !            30:  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
        !            31:  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
        !            32:  * THE POSSIBILITY OF SUCH DAMAGE.
        !            33:  */
        !            34:
        !            35: #ifndef _DEV_MII_CIPHYREG_H_
        !            36: #define        _DEV_MII_CIPHYREG_H_
        !            37:
        !            38: /*
        !            39:  * Register definitions for the Cicada CS8201 10/100/1000 gigE copper
        !            40:  * PHY, embedded within the VIA Networks VT6122 controller.
        !            41:  */
        !            42:
        !            43: /* Command register */
        !            44: #define CIPHY_MII_BMCR         0x00
        !            45: #define CIPHY_BMCR_RESET       0x8000
        !            46: #define CIPHY_BMCR_LOOP                0x4000
        !            47: #define CIPHY_BMCR_SPD0                0x2000  /* speed select, lower bit */
        !            48: #define CIPHY_BMCR_AUTOEN      0x1000  /* Autoneg enabled */
        !            49: #define CIPHY_BMCR_PDOWN       0x0800  /* Power down */
        !            50: #define CIPHY_BMCR_STARTNEG    0x0200  /* Restart autoneg */
        !            51: #define CIPHY_BMCR_FDX         0x0100  /* Duplex mode */
        !            52: #define CIPHY_BMCR_CTEST       0x0080  /* Collision test enable */
        !            53: #define CIPHY_BMCR_SPD1                0x0040  /* Speed select, upper bit */
        !            54:
        !            55: #define CIPHY_S1000            CIPHY_BMCR_SPD1 /* 1000mbps */
        !            56: #define CIPHY_S100             CIPHY_BMCR_SPD0 /* 100mpbs */
        !            57: #define CIPHY_S10              0               /* 10mbps */
        !            58:
        !            59: /* Status register */
        !            60: #define CIPHY_MII_BMSR         0x01
        !            61: #define CIPHY_BMSR_100T4       0x8000  /* 100 base T4 capable */
        !            62: #define CIPHY_BMSR_100TXFDX    0x4000  /* 100 base Tx full duplex capable */
        !            63: #define CIPHY_BMSR_100TXHDX    0x2000  /* 100 base Tx half duplex capable */
        !            64: #define CIPHY_BMSR_10TFDX      0x1000  /* 10 base T full duplex capable */
        !            65: #define CIPHY_BMSR_10THDX      0x0800  /* 10 base T half duplex capable */
        !            66: #define CIPHY_BMSR_100T2FDX    0x0400  /* 100 base T2 full duplex capable */
        !            67: #define CIPHY_BMSR_100T2HDX    0x0200  /* 100 base T2 half duplex capable */
        !            68: #define CIPHY_BMSR_EXTSTS      0x0100  /* Extended status present */
        !            69: #define CIPHY_BMSR_PRESUB      0x0040  /* Preamble surpression */
        !            70: #define CIPHY_BMSR_ACOMP       0x0020  /* Autoneg complete */
        !            71: #define CIPHY_BMSR_RFAULT      0x0010  /* Remote fault condition occured */
        !            72: #define CIPHY_BMSR_ANEG                0x0008  /* Autoneg capable */
        !            73: #define CIPHY_BMSR_LINK                0x0004  /* Link status */
        !            74: #define CIPHY_BMSR_JABBER      0x0002  /* Jabber detected */
        !            75: #define CIPHY_BMSR_EXT         0x0001  /* Extended capability */
        !            76:
        !            77: /* PHY ID registers */
        !            78: #define CIPHY_MII_PHYIDR1      0x02
        !            79: #define CIPHY_MII_PHYIDR2      0x03
        !            80:
        !            81: /* Autoneg advertisement */
        !            82: #define CIPHY_MII_ANAR         0x04
        !            83: #define CIPHY_ANAR_NP          0x8000  /* Next page */
        !            84: #define CIPHY_ANAR_RF          0x2000  /* Remote fault */
        !            85: #define CIPHY_ANAR_ASP         0x0800  /* Asymmetric Pause */
        !            86: #define CIPHY_ANAR_PC          0x0400  /* Pause capable */
        !            87: #define CIPHY_ANAR_T4          0x0200  /* local device supports 100bT4 */
        !            88: #define CIPHY_ANAR_TX_FD       0x0100  /* local device supports 100bTx FD */
        !            89: #define CIPHY_ANAR_TX          0x0080  /* local device supports 100bTx */
        !            90: #define CIPHY_ANAR_10_FD       0x0040  /* local device supports 10bT FD */
        !            91: #define CIPHY_ANAR_10          0x0020  /* local device supports 10bT */
        !            92: #define CIPHY_ANAR_SEL         0x001F  /* selector field, 00001=Ethernet */
        !            93:
        !            94: /* Autoneg link partner ability */
        !            95: #define CIPHY_MII_ANLPAR       0x05
        !            96: #define CIPHY_ANLPAR_NP                0x8000  /* Next page */
        !            97: #define CIPHY_ANLPAR_ACK       0x4000  /* link partner acknowledge */
        !            98: #define CIPHY_ANLPAR_RF                0x2000  /* Remote fault */
        !            99: #define CIPHY_ANLPAR_ASP       0x0800  /* Asymmetric Pause */
        !           100: #define CIPHY_ANLPAR_PC                0x0400  /* Pause capable */
        !           101: #define CIPHY_ANLPAR_T4                0x0200  /* link partner supports 100bT4 */
        !           102: #define CIPHY_ANLPAR_TX_FD     0x0100  /* link partner supports 100bTx FD */
        !           103: #define CIPHY_ANLPAR_TX                0x0080  /* link partner supports 100bTx */
        !           104: #define CIPHY_ANLPAR_10_FD     0x0040  /* link partner supports 10bT FD */
        !           105: #define CIPHY_ANLPAR_10                0x0020  /* link partner supports 10bT */
        !           106: #define CIPHY_ANLPAR_SEL       0x001F  /* selector field, 00001=Ethernet */
        !           107:
        !           108: #define CIPHY_SEL_TYPE         0x0001  /* ethernet */
        !           109:
        !           110: /* Antoneg expansion register */
        !           111: #define CIPHY_MII_ANER         0x06
        !           112: #define CIPHY_ANER_PDF         0x0010  /* Parallel detection fault */
        !           113: #define CIPHY_ANER_LPNP                0x0008  /* Link partner can next page */
        !           114: #define CIPHY_ANER_NP          0x0004  /* Local PHY can next page */
        !           115: #define CIPHY_ANER_RX          0x0002  /* Next page received */
        !           116: #define CIPHY_ANER_LPAN                0x0001  /* Link partner autoneg capable */
        !           117:
        !           118: /* Autoneg next page transmit regisyer */
        !           119: #define CIPHY_MII_NEXTP                0x07
        !           120: #define CIPHY_NEXTP_MOREP      0x8000  /* More pages to follow */
        !           121: #define CIPHY_NEXTP_MESS       0x2000  /* 1 = message page, 0 = unformatted */
        !           122: #define CIPHY_NEXTP_ACK2       0x1000  /* MAC acknowledge */
        !           123: #define CIPHY_NEXTP_TOGGLE     0x0800  /* Toggle */
        !           124: #define CIPHY_NEXTP_CODE       0x07FF  /* Code bits */
        !           125:
        !           126: /* Autoneg link partner next page receive register */
        !           127: #define CIPHY_MII_NEXTP_LP     0x08
        !           128: #define CIPHY_NEXTPLP_MOREP    0x8000  /* More pages to follow */
        !           129: #define CIPHY_NEXTPLP_MESS     0x2000  /* 1 = message page, 0 = unformatted */
        !           130: #define CIPHY_NEXTPLP_ACK2     0x1000  /* MAC acknowledge */
        !           131: #define CIPHY_NEXTPLP_TOGGLE   0x0800  /* Toggle */
        !           132: #define CIPHY_NEXTPLP_CODE     0x07FF  /* Code bits */
        !           133:
        !           134: /* 1000BT control register */
        !           135: #define CIPHY_MII_1000CTL      0x09
        !           136: #define CIPHY_1000CTL_TST      0xE000  /* test modes */
        !           137: #define CIPHY_1000CTL_MSE      0x1000  /* Master/Slave manual enable */
        !           138: #define CIPHY_1000CTL_MSC      0x0800  /* Master/Slave select */
        !           139: #define CIPHY_1000CTL_RD       0x0400  /* Repeater/DTE */
        !           140: #define CIPHY_1000CTL_AFD      0x0200  /* Advertise full duplex */
        !           141: #define CIPHY_1000CTL_AHD      0x0100  /* Advertise half duplex */
        !           142:
        !           143: #define CIPHY_TEST_TX_JITTER                   0x2000
        !           144: #define CIPHY_TEST_TX_JITTER_MASTER_MODE       0x4000
        !           145: #define CIPHY_TEST_TX_JITTER_SLAVE_MODE                0x6000
        !           146: #define CIPHY_TEST_TX_DISTORTION               0x8000
        !           147:
        !           148: /* 1000BT status register */
        !           149: #define CIPHY_MII_1000STS      0x0A
        !           150: #define CIPHY_1000STS_MSF      0x8000  /* Master/slave fault */
        !           151: #define CIPHY_1000STS_MSR      0x4000  /* Master/slave result */
        !           152: #define CIPHY_1000STS_LRS      0x2000  /* Local receiver status */
        !           153: #define CIPHY_1000STS_RRS      0x1000  /* Remote receiver status */
        !           154: #define CIPHY_1000STS_LPFD     0x0800  /* Link partner can FD */
        !           155: #define CIPHY_1000STS_LPHD     0x0400  /* Link partner can HD */
        !           156: #define CIPHY_1000STS_IEC      0x00FF  /* Idle error count */
        !           157:
        !           158: #define CIPHY_MII_EXTSTS       0x0F    /* Extended status */
        !           159: #define CIPHY_EXTSTS_X_FD_CAP  0x8000  /* 1000base-X FD capable */
        !           160: #define CIPHY_EXTSTS_X_HD_CAP  0x4000  /* 1000base-X HD capable */
        !           161: #define CIPHY_EXTSTS_T_FD_CAP  0x2000  /* 1000base-T FD capable */
        !           162: #define CIPHY_EXTSTS_T_HD_CAP  0x1000  /* 1000base-T HD capable */
        !           163:
        !           164: /* 1000BT status extension register #1 */
        !           165: #define CIPHY_MII_1000STS1     0x0F
        !           166: #define CIPHY_1000STS1_1000XFDX        0x8000  /* 1000baseX FDX capable */
        !           167: #define CIPHY_1000STS1_1000XHDX        0x4000  /* 1000baseX HDX capable */
        !           168: #define CIPHY_1000STS1_1000TFDX        0x2000  /* 1000baseT FDX capable */
        !           169: #define CIPHY_1000STS1_1000THDX        0x1000  /* 1000baseT HDX capable */
        !           170:
        !           171: /* Vendor-specific PHY registers */
        !           172:
        !           173: /* 100baseTX status extention register */
        !           174: #define CIPHY_MII_100STS       0x10
        !           175: #define CIPHY_100STS_DESLCK    0x8000  /* descrambler locked */
        !           176: #define CIPHY_100STS_LKCERR    0x4000  /* lock error detected/lock lost */
        !           177: #define CIPHY_100STS_DISC      0x2000  /* disconnect state */
        !           178: #define CIPHY_100STS_LINK      0x1000  /* current link state */
        !           179: #define CIPHY_100STS_RXERR     0x0800  /* receive error detected */
        !           180: #define CIPHY_100STS_TXERR     0x0400  /* transmit error detected */
        !           181: #define CIPHY_100STS_SSDERR    0x0200  /* false carrier error detected */
        !           182: #define CIPHY_100STS_ESDERR    0x0100  /* premature end of stream error */
        !           183:
        !           184: /* 1000BT status extention register #2 */
        !           185: #define CIPHY_MII_1000STS2     0x11
        !           186: #define CIPHY_1000STS2_DESLCK  0x8000  /* descrambler locked */
        !           187: #define CIPHY_1000STS2_LKCERR  0x4000  /* lock error detected/lock lost */
        !           188: #define CIPHY_1000STS2_DISC    0x2000  /* disconnect state */
        !           189: #define CIPHY_1000STS2_LINK    0x1000  /* current link state */
        !           190: #define CIPHY_1000STS2_RXERR   0x0800  /* receive error detected */
        !           191: #define CIPHY_1000STS2_TXERR   0x0400  /* transmit error detected */
        !           192: #define CIPHY_1000STS2_SSDERR  0x0200  /* false carrier error detected */
        !           193: #define CIPHY_1000STS2_ESDERR  0x0100  /* premature end of stream error */
        !           194: #define CIPHY_1000STS2_CARREXT 0x0080  /* carrier extention err detected */
        !           195: #define CIPHY_1000STS2_BCM5400 0x0040  /* non-complient BCM5400 detected */
        !           196:
        !           197: /* Bypass control register */
        !           198: #define CIPHY_MII_BYPASS       0x12
        !           199: #define CIPHY_BYPASS_TX                0x8000  /* transmit disable */
        !           200: #define CIPHY_BYPASS_4B5B      0x4000  /* bypass the 4B5B encoder */
        !           201: #define CIPHY_BYPASS_SCRAM     0x2000  /* bypass scrambler */
        !           202: #define CIPHY_BYPASS_DSCAM     0x1000  /* bypass descrambler */
        !           203: #define CIPHY_BYPASS_PCSRX     0x0800  /* bypass PCS receive */
        !           204: #define CIPHY_BYPASS_PCSTX     0x0400  /* bypass PCS transmit */
        !           205: #define CIPHY_BYPASS_LFI       0x0200  /* bypass LFI timer */
        !           206: #define CIPHY_BYPASS_TXCLK     0x0100  /* enable transmit clock on LED4 pin */
        !           207: #define CIPHY_BYPASS_BCM5400_F 0x0080  /* force BCM5400 detect */
        !           208: #define CIPHY_BYPASS_BCM5400   0x0040  /* bypass BCM5400 detect */
        !           209: #define CIPHY_BYPASS_PAIRSWAP  0x0020  /* disable automatic pair swap */
        !           210: #define CIPHY_BYPASS_POLARITY  0x0010  /* disable polarity correction */
        !           211: #define CIPHY_BYPASS_PARALLEL  0x0008  /* parallel detect enable */
        !           212: #define CIPHY_BYPASS_PULSE     0x0004  /* disable pulse shaping filter */
        !           213: #define CIPHY_BYPASS_1000BNP   0x0002  /* disable 1000BT next page exchange */
        !           214:
        !           215: /* RX error count register */
        !           216: #define CIPHY_MII_RXERR                0x13
        !           217:
        !           218: /* False carrier sense count register */
        !           219: #define CIPHY_MII_FCSERR       0x14
        !           220:
        !           221: /* Ddisconnect error counter */
        !           222: #define CIPHY_MII_DISCERR      0x15
        !           223:
        !           224: /* 10baseT control/status register */
        !           225: #define CIPHY_MII_10BTCSR      0x16
        !           226: #define CIPHY_10BTCSR_DLIT     0x8000  /* Disable data link integrity test */
        !           227: #define CIPHY_10BTCSR_JABBER   0x4000  /* Disable jabber detect */
        !           228: #define CIPHY_10BTCSR_ECHO     0x2000  /* Disable echo mode */
        !           229: #define CIPHY_10BTCSR_SQE      0x1000  /* Disable signal quality error */
        !           230: #define CIPHY_10BTCSR_SQUENCH  0x0C00  /* Squelch control */
        !           231: #define CIPHY_10BTCSR_EOFERR   0x0100  /* End of Frame error */
        !           232: #define CIPHY_10BTCSR_DISC     0x0080  /* Disconnect status */
        !           233: #define CIPHY_10BTCSR_LINK     0x0040  /* current link state */
        !           234: #define CIPHY_10BTCSR_ITRIM    0x0038  /* current reference trim */
        !           235: #define CIPHY_10BTCSR_CSR      0x0006  /* CSR behavior control */
        !           236:
        !           237: #define CIPHY_SQUELCH_300MV    0x0000
        !           238: #define CIPHY_SQUELCH_197MV    0x0400
        !           239: #define CIPHY_SQUELCH_450MV    0x0800
        !           240: #define CIPHY_SQUELCH_RSVD     0x0C00
        !           241:
        !           242: #define CIPHY_ITRIM_PLUS2      0x0000
        !           243: #define CIPHY_ITRIM_PLUS4      0x0008
        !           244: #define CIPHY_ITRIM_PLUS6      0x0010
        !           245: #define CIPHY_ITRIM_PLUS6_     0x0018
        !           246: #define CIPHY_ITRIM_MINUS4     0x0020
        !           247: #define CIPHY_ITRIM_MINUS4_    0x0028
        !           248: #define CIPHY_ITRIM_MINUS2     0x0030
        !           249: #define CIPHY_ITRIM_ZERO       0x0038
        !           250:
        !           251: /* Extended PHY control register #1 */
        !           252: #define CIPHY_MII_ECTL1                0x17
        !           253: #define CIPHY_ECTL1_ACTIPHY    0x0020  /* Enable ActiPHY power saving */
        !           254: #define CIPHY_ECTL1_IOVOL      0x0e00  /* MAC interface and I/O voltage select */
        !           255: #define CIPHY_ECTL1_INTSEL     0xf000  /* select MAC interface */
        !           256:
        !           257: #define CIPHY_IOVOL_3300MV     0x0000  /* 3.3V for I/O pins */
        !           258: #define CIPHY_IOVOL_2500MV     0x0200  /* 2.5V for I/O pins */
        !           259:
        !           260: #define CIPHY_INTSEL_GMII      0x0000  /* GMII/MII */
        !           261: #define CIPHY_INTSEL_RGMII     0x1000
        !           262: #define CIPHY_INTSEL_TBI       0x2000
        !           263: #define CIPHY_INTSEL_RTBI      0x3000
        !           264:
        !           265: /* Extended PHY control register #2 */
        !           266: #define CIPHY_MII_ECTL2                0x18
        !           267: #define CIPHY_ECTL2_ERATE      0xE000  /* 10/1000 edge rate control */
        !           268: #define CIPHY_ECTL2_VTRIM      0x1C00  /* voltage reference trim */
        !           269: #define CIPHY_ECTL2_CABLELEN   0x000E  /* Cable quality/length */
        !           270: #define CIPHY_ECTL2_ANALOGLOOP 0x0001  /* 1000BT analog loopback */
        !           271:
        !           272: #define CIPHY_CABLELEN_0TO10M          0x0000
        !           273: #define CIPHY_CABLELEN_10TO20M         0x0002
        !           274: #define CIPHY_CABLELEN_20TO40M         0x0004
        !           275: #define CIPHY_CABLELEN_40TO80M         0x0006
        !           276: #define CIPHY_CABLELEN_80TO100M                0x0008
        !           277: #define CIPHY_CABLELEN_100TO140M       0x000A
        !           278: #define CIPHY_CABLELEN_140TO180M       0x000C
        !           279: #define CIPHY_CABLELEN_OVER180M                0x000E
        !           280:
        !           281: /* Interrupt mask register */
        !           282: #define CIPHY_MII_IMR          0x19
        !           283: #define CIPHY_IMR_PINENABLE    0x8000  /* Interrupt pin enable */
        !           284: #define CIPHY_IMR_SPEED                0x4000  /* speed changed event */
        !           285: #define CIPHY_IMR_LINK         0x2000  /* link change/ActiPHY event */
        !           286: #define CIPHY_IMR_DPX          0x1000  /* duplex change event */
        !           287: #define CIPHY_IMR_ANEGERR      0x0800  /* autoneg error event */
        !           288: #define CIPHY_IMR_ANEGDONE     0x0400  /* autoneg done event */
        !           289: #define CIPHY_IMR_NPRX         0x0200  /* page received event */
        !           290: #define CIPHY_IMR_SYMERR       0x0100  /* symbol error event */
        !           291: #define CIPHY_IMR_LOCKERR      0x0080  /* descrambler lock lost event */
        !           292: #define CIPHY_IMR_XOVER                0x0040  /* MDI crossover change event */
        !           293: #define CIPHY_IMR_POLARITY     0x0020  /* polarity change event */
        !           294: #define CIPHY_IMR_JABBER       0x0010  /* jabber detect event */
        !           295: #define CIPHY_IMR_SSDERR       0x0008  /* false carrier detect event */
        !           296: #define CIPHY_IMR_ESDERR       0x0004  /* parallel detect error event */
        !           297: #define CIPHY_IMR_MASTERSLAVE  0x0002  /* master/slave resolve done event */
        !           298: #define CIPHY_IMR_RXERR                0x0001  /* RX error event */
        !           299:
        !           300: /* Interrupt status register */
        !           301: #define CIPHY_MII_ISR          0x1A
        !           302: #define CIPHY_ISR_IPENDING     0x8000  /* Interrupt is pending */
        !           303: #define CIPHY_ISR_SPEED                0x4000  /* speed changed event */
        !           304: #define CIPHY_ISR_LINK         0x2000  /* link change/ActiPHY event */
        !           305: #define CIPHY_ISR_DPX          0x1000  /* duplex change event */
        !           306: #define CIPHY_ISR_ANEGERR      0x0800  /* autoneg error event */
        !           307: #define CIPHY_ISR_ANEGDONE     0x0400  /* autoneg done event */
        !           308: #define CIPHY_ISR_NPRX         0x0200  /* page received event */
        !           309: #define CIPHY_ISR_SYMERR       0x0100  /* symbol error event */
        !           310: #define CIPHY_ISR_LOCKERR      0x0080  /* descrambler lock lost event */
        !           311: #define CIPHY_ISR_XOVER                0x0040  /* MDI crossover change event */
        !           312: #define CIPHY_ISR_POLARITY     0x0020  /* polarity change event */
        !           313: #define CIPHY_ISR_JABBER       0x0010  /* jabber detect event */
        !           314: #define CIPHY_ISR_SSDERR       0x0008  /* false carrier detect event */
        !           315: #define CIPHY_ISR_ESDERR       0x0004  /* parallel detect error event */
        !           316: #define CIPHY_ISR_MASTERSLAVE  0x0002  /* master/slave resolve done event */
        !           317: #define CIPHY_ISR_RXERR                0x0001  /* RX error event */
        !           318:
        !           319: /* LED control register */
        !           320: #define CIPHY_MII_LED          0x1B
        !           321: #define CIPHY_LED_LINK10FORCE  0x8000  /* Force on link10 LED */
        !           322: #define CIPHY_LED_LINK10DIS    0x4000  /* Disable link10 LED */
        !           323: #define CIPHY_LED_LINK100FORCE 0x2000  /* Force on link10 LED */
        !           324: #define CIPHY_LED_LINK100DIS   0x1000  /* Disable link100 LED */
        !           325: #define CIPHY_LED_LINK1000FORCE        0x0800  /* Force on link1000 LED */
        !           326: #define CIPHY_LED_LINK1000DIS  0x0400  /* Disable link1000 LED */
        !           327: #define CIPHY_LED_FDXFORCE     0x0200  /* Force on duplex LED */
        !           328: #define CIPHY_LED_FDXDIS       0x0100  /* Disable duplex LED */
        !           329: #define CIPHY_LED_ACTFORCE     0x0080  /* Force on activity LED */
        !           330: #define CIPHY_LED_ACTDIS       0x0040  /* Disable activity LED */
        !           331: #define CIPHY_LED_PULSE                0x0008  /* LED pulse enable */
        !           332: #define CIPHY_LED_LINKACTBLINK 0x0004  /* enable link/activity LED blink */
        !           333: #define CIPHY_LED_BLINKRATE    0x0002  /* blink rate 0=10hz, 1=5hz */
        !           334:
        !           335: /* Auxilliary control and status register */
        !           336: #define CIPHY_MII_AUXCSR       0x1C
        !           337: #define CIPHY_AUXCSR_ANEGDONE  0x8000  /* Autoneg complete */
        !           338: #define CIPHY_AUXCSR_ANEGOFF   0x4000  /* Autoneg disabled */
        !           339: #define CIPHY_AUXCSR_XOVER     0x2000  /* MDI/MDI-X crossover indication */
        !           340: #define CIPHY_AUXCSR_PAIRSWAP  0x1000  /* pair swap indication */
        !           341: #define CIPHY_AUXCSR_APOLARITY 0x0800  /* polarity inversion pair A */
        !           342: #define CIPHY_AUXCSR_BPOLARITY 0x0400  /* polarity inversion pair B */
        !           343: #define CIPHY_AUXCSR_CPOLARITY 0x0200  /* polarity inversion pair C */
        !           344: #define CIPHY_AUXCSR_DPOLARITY 0x0100  /* polarity inversion pair D */
        !           345: #define CIPHY_AUXCSR_FDX       0x0020  /* duplex 1=full, 0=half */
        !           346: #define CIPHY_AUXCSR_SPEED     0x0018  /* speed */
        !           347: #define CIPHY_AUXCSR_MDPPS     0x0004  /* No idea, not documented */
        !           348: #define CIPHY_AUXCSR_STICKYREST 0x0002 /* reset clears sticky bits */
        !           349:
        !           350: #define CIPHY_SPEED10          0x0000
        !           351: #define CIPHY_SPEED100         0x0008
        !           352: #define CIPHY_SPEED1000                0x0010
        !           353:
        !           354: /* Delay skew status register */
        !           355: #define CIPHY_MII_DSKEW                0x1D
        !           356: #define CIPHY_DSKEW_PAIRA      0x7000  /* Pair A skew in symbol times */
        !           357: #define CIPHY_DSKEW_PAIRB      0x0700  /* Pair B skew in symbol times */
        !           358: #define CIPHY_DSKEW_PAIRC      0x0070  /* Pair C skew in symbol times */
        !           359: #define CIPHY_DSKEW_PAIRD      0x0007  /* Pair D skew in symbol times */
        !           360:
        !           361: #endif /* _DEV_CIPHY_MIIREG_H_ */

CVSweb