miidevs revision 166876
196845Smarkm$FreeBSD: head/sys/dev/mii/miidevs 166876 2007-02-21 18:17:44Z jhb $
296845Smarkm/*$NetBSD: miidevs,v 1.6 1999/05/14 11:37:30 drochner Exp $*/
396845Smarkm
496845Smarkm/*-
596845Smarkm * Copyright (c) 1998, 1999 The NetBSD Foundation, Inc.
696845Smarkm * All rights reserved.
796845Smarkm *
896845Smarkm * This code is derived from software contributed to The NetBSD Foundation
996845Smarkm * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
1096845Smarkm * NASA Ames Research Center.
1196845Smarkm *
1296845Smarkm * Redistribution and use in source and binary forms, with or without
1396845Smarkm * modification, are permitted provided that the following conditions
1496845Smarkm * are met:
1596845Smarkm * 1. Redistributions of source code must retain the above copyright
1696845Smarkm *    notice, this list of conditions and the following disclaimer.
1796845Smarkm * 2. Redistributions in binary form must reproduce the above copyright
1896845Smarkm *    notice, this list of conditions and the following disclaimer in the
1996845Smarkm *    documentation and/or other materials provided with the distribution.
2096845Smarkm * 3. All advertising materials mentioning features or use of this software
2196845Smarkm *    must display the following acknowledgement:
2296845Smarkm *	This product includes software developed by the NetBSD
2396845Smarkm *	Foundation, Inc. and its contributors.
2496845Smarkm * 4. Neither the name of The NetBSD Foundation nor the names of its
2596845Smarkm *    contributors may be used to endorse or promote products derived
2696845Smarkm *    from this software without specific prior written permission.
2796845Smarkm *
2896845Smarkm * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
2996845Smarkm * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
3096845Smarkm * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
3196845Smarkm * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
3296845Smarkm * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
3396845Smarkm * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
3496845Smarkm * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
3596845Smarkm * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
3696845Smarkm * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
3796845Smarkm * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
3896845Smarkm * POSSIBILITY OF SUCH DAMAGE.
3996845Smarkm */
4096845Smarkm
4196845Smarkm/*
4296845Smarkm * List of known MII OUIs.
4396845Smarkm * For a complete list see http://standards.ieee.org/regauth/oui/
4496845Smarkm *
4596845Smarkm * XXX Vendors do obviously not agree how OUIs (18 bit) are mapped
4696845Smarkm * to the 16 bits available in the id registers. The MII_OUI() macro
4796845Smarkm * in "mii.h" reflects the most obvious way. If a vendor uses a
4896845Smarkm * different mapping, an "xx" prefixed OUI is defined here which is
4996845Smarkm * mangled accordingly to compensate.
5096845Smarkm */
5196845Smarkm
5296845Smarkmoui ALTIMA			0x0010a9	Altima Communications
5396845Smarkmoui AMD				0x00001a	Advanced Micro Devices
5496845Smarkmoui BROADCOM			0x001018	Broadcom Corporation
5596845Smarkmoui CICADA			0x0003F1	Cicada Semiconductor
5696845Smarkmoui DAVICOM			0x00606e	Davicom Semiconductor
5796845Smarkmoui ICPLUS			0x0090c3	IC Plus Corp.
5896845Smarkmoui ICS				0x00a0be	Integrated Circuit Systems
5996845Smarkmoui INTEL			0x00aa00	Intel
6096845Smarkmoui JATO			0x00e083	Jato Technologies
6196845Smarkmoui LEVEL1			0x00207b	Level 1
6296845Smarkmoui NATSEMI			0x080017	National Semiconductor
6396845Smarkmoui QUALSEMI			0x006051	Quality Semiconductor
6496845Smarkmoui REALTEK			0x000020	RealTek Semicondctor
6596845Smarkmoui SEEQ			0x00a07d	Seeq
6696845Smarkmoui SIS				0x00e006	Silicon Integrated Systems
6796845Smarkmoui TDK				0x00c039	TDK
6896845Smarkmoui TI				0x080028	Texas Instruments
6996845Smarkmoui XAQTI			0x00e0ae	XaQti Corp.
7096845Smarkmoui MARVELL			0x005043	Marvell Semiconductor
7196845Smarkmoui xxMARVELL			0x000ac2	Marvell Semiconductor
7296845Smarkm
7396845Smarkm/* in the 79c873, AMD uses another OUI (which matches Davicom!) */
7496845Smarkmoui xxAMD			0x00606e	Advanced Micro Devices
7596845Smarkm
7696845Smarkm/* Intel 82553 A/B steppings */
7796845Smarkmoui xxINTEL			0x00f800	Intel
7896845Smarkm
7996845Smarkm/* some vendors have the bits swapped within bytes
8096845Smarkm	(ie, ordered as on the wire) */
8196845Smarkmoui xxALTIMA			0x000895	Altima Communications
8296845Smarkmoui xxBROADCOM			0x000818	Broadcom Corporation
8396845Smarkmoui xxBROADCOM_ALT1		0x0050ef	Broadcom Corporation
8496845Smarkmoui xxICS			0x00057d	Integrated Circuit Systems
8596845Smarkmoui xxSEEQ			0x0005be	Seeq
8696845Smarkmoui xxSIS			0x000760	Silicon Integrated Systems
8796845Smarkmoui xxTI			0x100014	Texas Instruments
8896845Smarkmoui xxXAQTI			0x350700	XaQti Corp.
8996845Smarkm
9096845Smarkm/* Level 1 is completely different - from right to left.
9196845Smarkm	(Two bits get lost in the third OUI byte.) */
9296845Smarkmoui xxLEVEL1			0x1e0400	Level 1
9396845Smarkm
9496845Smarkm/* Don't know what's going on here. */
9596845Smarkmoui xxDAVICOM			0x006040	Davicom Semiconductor
9696845Smarkm
9796845Smarkm/* This is the OUI of the gigE PHY in the RealTek 8169S/8110S chips */
9896845Smarkmoui xxREALTEK			0x000732
9996845Smarkm
10096845Smarkm/*
10196858Sru * List of known models.  Grouped by oui.
10296845Smarkm */
10396845Smarkm
10496845Smarkm/* Altima Communications PHYs */
10596845Smarkmmodel xxALTIMA AC101		0x0021 AC101 10/100 media interface
10696845Smarkmmodel xxALTIMA AC101L		0x0012 AC101L 10/100 media interface
10796845Smarkmmodel xxALTIMA ACXXX		0x0001 ACXXX 10/100 media interface
10896845Smarkm
10996845Smarkm/* Advanced Micro Devices PHYs */
11096845Smarkmmodel AMD 79c973phy		0x0036 Am79c973 internal PHY
11196845Smarkmmodel AMD 79c978		0x0039 Am79c978 HomePNA PHY
11296845Smarkmmodel xxAMD 79C873		0x0000 Am79C873/DM9101 10/100 media interface
11396845Smarkm
11496845Smarkm/* Broadcom Corp. PHYs. */
11596845Smarkmmodel BROADCOM 3C905B		0x0012 3c905B 10/100 internal PHY
11696845Smarkmmodel BROADCOM 3C905C		0x0017 3c905C 10/100 internal PHY
11796845Smarkmmodel BROADCOM BCM5201		0x0021 BCM5201 10/100baseTX PHY
11896845Smarkmmodel BROADCOM BCM5221		0x001e BCM5221 10/100baseTX PHY
11996845Smarkmmodel BROADCOM BCM4401		0x0036 BCM4401 10/100baseTX PHY
12096845Smarkmmodel xxBROADCOM BCM5400	0x0004 Broadcom 1000baseTX PHY
12196845Smarkmmodel xxBROADCOM BCM5401	0x0005 BCM5401 10/100/1000baseTX PHY
12296845Smarkmmodel xxBROADCOM BCM5411	0x0007 BCM5411 10/100/1000baseTX PHY
12396845Smarkmmodel xxBROADCOM BCM5754	0x000e BCM5754 10/100/1000baseTX PHY
12496845Smarkmmodel xxBROADCOM BCM5752	0x0010 BCM5752 10/100/1000baseTX PHY
12596845Smarkmmodel xxBROADCOM BCM5701	0x0011 BCM5701 10/100/1000baseTX PHY
12696845Smarkmmodel xxBROADCOM BCM5706C	0x0015 BCM5706C 10/100/1000baseTX PHY
12796845Smarkmmodel xxBROADCOM BCM5703	0x0016 BCM5703 10/100/1000baseTX PHY
12896845Smarkmmodel xxBROADCOM BCM5704	0x0019 BCM5704 10/100/1000baseTX PHY
12996845Smarkmmodel xxBROADCOM BCM5705	0x001a BCM5705 10/100/1000baseTX PHY
13096845Smarkmmodel xxBROADCOM BCM5750	0x0018 BCM5750 10/100/1000baseTX PHY
13196845Smarkmmodel xxBROADCOM BCM5714	0x0034 BCM5714 10/100/1000baseTX PHY
13296845Smarkmmodel xxBROADCOM BCM5780	0x0035 BCM5780 10/100/1000baseTX PHY
13396845Smarkmmodel xxBROADCOM BCM5708C	0x0036 BCM5708C 10/100/1000baseTX PHY
13496845Smarkmmodel xxBROADCOM_ALT1 BCM5787	0x000e BCM5787 10/100/1000baseTX PHY
13596845Smarkm
13696845Smarkm/* Cicada Semiconductor PHYs (now owned by Vitesse?) */
13796845Smarkmmodel CICADA CS8201		0x0001 Cicada CS8201 10/100/1000TX PHY
13896845Smarkmmodel CICADA CS8201A		0x0020 Cicada CS8201 10/100/1000TX PHY
13996845Smarkmmodel CICADA CS8201B		0x0021 Cicada CS8201 10/100/1000TX PHY
14096845Smarkm
14196845Smarkm/* Davicom Semiconductor PHYs */
14296845Smarkmmodel DAVICOM DM9102		0x0004 DM9102 10/100 media interface
14396845Smarkmmodel xxDAVICOM DM9101		0x0000 DM9101 10/100 media interface
14496845Smarkm
14596845Smarkm/* Integrated Circuit Systems PHYs */
14696845Smarkmmodel xxICS 1890		0x0002 ICS1890 10/100 media interface
14796845Smarkm
14896845Smarkm/* IC Plus Corp. PHYs */
14996845Smarkmmodel ICPLUS IP1000A		0x0008 IC Plus 10/100/1000 media interface
15096845Smarkm
15196845Smarkm/* Intel PHYs */
15296845Smarkmmodel xxINTEL I82553AB		0x0000 i83553 10/100 media interface
15396845Smarkmmodel INTEL I82555		0x0015 i82555 10/100 media interface
15496845Smarkmmodel INTEL I82562EM		0x0032 i82562EM 10/100 media interface
15596845Smarkmmodel INTEL I82562ET		0x0033 i82562ET 10/100 media interface
15696845Smarkmmodel INTEL I82553C		0x0035 i82553 10/100 media interface
15796845Smarkm
15896845Smarkm/* Jato Technologies PHYs */
15996845Smarkmmodel JATO BASEX		0x0000 Jato 1000baseX media interface
16096845Smarkm
16196845Smarkm/* Level 1 PHYs */
16296845Smarkmmodel xxLEVEL1 LXT970		0x0000 LXT970 10/100 media interface
16396845Smarkm
16496845Smarkm/* National Semiconductor PHYs */
16596845Smarkmmodel NATSEMI DP83840		0x0000 DP83840 10/100 media interface
16696845Smarkmmodel NATSEMI DP83843		0x0001 DP83843 10/100 media interface
16796845Smarkmmodel NATSEMI DP83891		0x0005 DP83891 10/100/1000 media interface
16896845Smarkmmodel NATSEMI DP83861		0x0006 DP83861 10/100/1000 media interface
16996845Smarkm
17096845Smarkm/* Quality Semiconductor PHYs */
17196845Smarkmmodel QUALSEMI QS6612		0x0000 QS6612 10/100 media interface
17296845Smarkm
17396845Smarkm/* RealTek Semiconductor PHYs */
17496845Smarkmmodel REALTEK RTL8201L		0x0020 RTL8201L 10/100 media interface
17596845Smarkmmodel xxREALTEK RTL8305SC	0x0005 RTL8305SC 10/100 802.1q switch
17696845Smarkmmodel xxREALTEK RTL8169S	0x0011 RTL8169S/8110S media interface
17796845Smarkm
17896845Smarkm/* Seeq PHYs */
17996845Smarkmmodel xxSEEQ 80220		0x0003 Seeq 80220 10/100 media interface
18096845Smarkmmodel xxSEEQ 84220		0x0004 Seeq 84220 10/100 media interface
18196845Smarkm
18296845Smarkm/* Silicon Integrated Systems PHYs */
18396845Smarkmmodel xxSIS 900			0x0000 SiS 900 10/100 media interface
18496845Smarkm
18596845Smarkm/* TDK */
18696845Smarkmmodel TDK 78Q2120		0x0014 TDK 78Q2120 media interface
18796845Smarkm
18896845Smarkm/* Texas Instruments PHYs */
18996845Smarkmmodel xxTI TLAN10T		0x0001 ThunderLAN 10baseT media interface
19096845Smarkmmodel xxTI 100VGPMI		0x0002 ThunderLAN 100VG-AnyLan media interface
19196845Smarkm
19296845Smarkm/* XaQti Corp. PHYs. */
19396845Smarkmmodel XAQTI XMACII		0x0000 XaQti Corp. XMAC II gigabit interface
19496845Smarkm
19596845Smarkm/* Marvell Semiconductor PHYs */
19696845Smarkmmodel MARVELL E1000		0x0000 Marvell 88E1000 Gigabit PHY
19796845Smarkmmodel MARVELL E1011		0x0002 Marvell 88E1011 Gigabit PHY
19896845Smarkmmodel MARVELL E1000_3		0x0003 Marvell 88E1000 Gigabit PHY
19996845Smarkmmodel MARVELL E1000S		0x0004 Marvell 88E1000S Gigabit PHY
20096845Smarkmmodel MARVELL E1000_5		0x0005 Marvell 88E1000 Gigabit PHY
20196845Smarkmmodel MARVELL E1000_6		0x0006 Marvell 88E1000 Gigabit PHY
20296845Smarkmmodel MARVELL E3082		0x0008 Marvell 88E3082 10/100 Fast Ethernet PHY
20396845Smarkmmodel MARVELL E1112		0x0009 Marvell 88E1112 Gigabit PHY
20496845Smarkmmodel MARVELL E1149		0x000b Marvell 88E1149 Gigabit PHY
20596845Smarkmmodel MARVELL E1111		0x000c Marvell 88E1111 Gigabit PHY
20696845Smarkmmodel MARVELL E1116		0x0021 Marvell 88E1116 Gigabit PHY
20796845Smarkmmodel MARVELL E1118		0x0022 Marvell 88E1118 Gigabit PHY
20896845Smarkmmodel xxMARVELL E1000		0x0005 Marvell 88E1000 Gigabit PHY
20996845Smarkmmodel xxMARVELL E1011		0x0002 Marvell 88E1011 Gigabit PHY
21096845Smarkmmodel xxMARVELL E1000_3		0x0003 Marvell 88E1000 Gigabit PHY
21196845Smarkmmodel xxMARVELL E1000_5		0x0005 Marvell 88E1000 Gigabit PHY
21296845Smarkmmodel xxMARVELL E1111		0x000c Marvell 88E1111 Gigabit PHY
21396845Smarkm