miidevs revision 74129
150959Speter$FreeBSD: head/sys/dev/mii/miidevs 74129 2001-03-12 02:27:10Z jlemon $
250120Swpaul/*$NetBSD: miidevs,v 1.6 1999/05/14 11:37:30 drochner Exp $*/
350120Swpaul
450120Swpaul/*-
550120Swpaul * Copyright (c) 1998, 1999 The NetBSD Foundation, Inc.
650120Swpaul * All rights reserved.
750120Swpaul *
850120Swpaul * This code is derived from software contributed to The NetBSD Foundation
950120Swpaul * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
1050120Swpaul * NASA Ames Research Center.
1150120Swpaul *
1250120Swpaul * Redistribution and use in source and binary forms, with or without
1350120Swpaul * modification, are permitted provided that the following conditions
1450120Swpaul * are met:
1550120Swpaul * 1. Redistributions of source code must retain the above copyright
1650120Swpaul *    notice, this list of conditions and the following disclaimer.
1750120Swpaul * 2. Redistributions in binary form must reproduce the above copyright
1850120Swpaul *    notice, this list of conditions and the following disclaimer in the
1950120Swpaul *    documentation and/or other materials provided with the distribution.
2050120Swpaul * 3. All advertising materials mentioning features or use of this software
2150120Swpaul *    must display the following acknowledgement:
2250120Swpaul *	This product includes software developed by the NetBSD
2350120Swpaul *	Foundation, Inc. and its contributors.
2450120Swpaul * 4. Neither the name of The NetBSD Foundation nor the names of its
2550120Swpaul *    contributors may be used to endorse or promote products derived
2650120Swpaul *    from this software without specific prior written permission.
2750120Swpaul *
2850120Swpaul * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
2950120Swpaul * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
3050120Swpaul * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
3150120Swpaul * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
3250120Swpaul * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
3350120Swpaul * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
3450120Swpaul * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
3550120Swpaul * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
3650120Swpaul * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
3750120Swpaul * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
3850120Swpaul * POSSIBILITY OF SUCH DAMAGE.
3950120Swpaul */
4050120Swpaul
4150120Swpaul/*
4250120Swpaul * List of known MII OUIs.
4350120Swpaul * For a complete list see http://standards.ieee.org/regauth/oui/
4450120Swpaul *
4550120Swpaul * XXX Vendors do obviously not agree how OUIs (18 bit) are mapped
4650120Swpaul * to the 16 bits available in the id registers. The MII_OUI() macro
4750120Swpaul * in "mii.h" reflects the most obvious way. If a vendor uses a
4850120Swpaul * different mapping, an "xx" prefixed OUI is defined here which is
4950120Swpaul * mangled accordingly to compensate.
5050120Swpaul */
5150120Swpaul
5261907Ssemenuoui ALTIMA			0x0010a9	Altima Communications
5350120Swpauloui AMD				0x00001a	Advanced Micro Devices
5450577Swpauloui BROADCOM			0x001018	Broadcom Corporation
5550120Swpauloui DAVICOM			0x00606e	Davicom Semiconductor
5650120Swpauloui ICS				0x00a0be	Integrated Circuit Systems
5750120Swpauloui INTEL			0x00aa00	Intel
5850120Swpauloui LEVEL1			0x00207b	Level 1
5950120Swpauloui NATSEMI			0x080017	National Semiconductor
6050120Swpauloui QUALSEMI			0x006051	Quality Semiconductor
6150120Swpauloui SEEQ			0x00a07d	Seeq
6250120Swpauloui SIS				0x00e006	Silicon Integrated Systems
6366989Simpoui TDK				0x00c039	TDK
6450120Swpauloui TI				0x080028	Texas Instruments
6559475Swpauloui XAQTI			0x00e0ae	XaQti Corp.
6650120Swpaul
6750120Swpaul/* in the 79c873, AMD uses another OUI (which matches Davicom!) */
6850120Swpauloui xxAMD			0x00606e	Advanced Micro Devices
6950120Swpaul
7074129Sjlemon/* Intel 82553 A/B steppings */
7174129Sjlemonoui xxINTEL			0x00f800	Intel
7274129Sjlemon
7350120Swpaul/* some vendors have the bits swapped within bytes
7450120Swpaul	(ie, ordered as on the wire) */
7561907Ssemenuoui xxALTIMA			0x000895	Altima Communications
7659475Swpauloui xxBROADCOM			0x000818	Broadcom Corporation
7750120Swpauloui xxICS			0x00057d	Integrated Circuit Systems
7850120Swpauloui xxSEEQ			0x0005be	Seeq
7950120Swpauloui xxSIS			0x000760	Silicon Integrated Systems
8050120Swpauloui xxTI			0x100014	Texas Instruments
8159475Swpauloui xxXAQTI			0x350700	XaQti Corp.
8250120Swpaul
8350120Swpaul/* Level 1 is completely different - from right to left.
8450120Swpaul	(Two bits get lost in the third OUI byte.) */
8550120Swpauloui xxLEVEL1			0x1e0400	Level 1
8650120Swpaul
8750120Swpaul/* Don't know what's going on here. */
8850120Swpauloui xxDAVICOM			0x006040	Davicom Semiconductor
8950120Swpaul
9050120Swpaul
9150120Swpaul/*
9250120Swpaul * List of known models.  Grouped by oui.
9350120Swpaul */
9450120Swpaul
9561907Ssemenu/* Altima Communications PHYs */
9661907Ssemenumodel xxALTIMA AC101		0x0021 AC101 10/100 media interface
9761907Ssemenu
9850120Swpaul/* Advanced Micro Devices PHYs */
9950120Swpaulmodel xxAMD 79C873		0x0000 Am79C873 10/100 media interface
10050120Swpaulmodel AMD 79c973phy		0x0036 Am79c973 internal PHY
10166127Swpaulmodel AMD 79c978		0x0039 Am79c978 HomePNA PHY
10250120Swpaul
10350577Swpaul/* Broadcom Corp. PHYs. */
10450577Swpaulmodel BROADCOM 3c905Cphy	0x0017 3c905C 10/100 internal PHY
10559475Swpaulmodel xxBROADCOM BCM5400	0x0004 Broadcom 1000baseTX PHY
10650577Swpaul
10750120Swpaul/* Davicom Semiconductor PHYs */
10850120Swpaulmodel xxDAVICOM DM9101		0x0000 DM9101 10/100 media interface
10950120Swpaul
11050120Swpaul/* Integrated Circuit Systems PHYs */
11150120Swpaulmodel xxICS 1890		0x0002 ICS1890 10/100 media interface
11250120Swpaul
11350120Swpaul/* Intel PHYs */
11474129Sjlemonmodel xxINTEL I82553AB		0x0000 i83553 10/100 media interface
11574129Sjlemonmodel INTEL I82553C		0x0035 i82553 10/100 media interface
11650120Swpaulmodel INTEL I82555		0x0015 i82555 10/100 media interface
11750120Swpaul
11850120Swpaul/* Level 1 PHYs */
11950120Swpaulmodel xxLEVEL1 LXT970		0x0000 LXT970 10/100 media interface
12050120Swpaul
12150120Swpaul/* National Semiconductor PHYs */
12250120Swpaulmodel NATSEMI DP83840		0x0000 DP83840 10/100 media interface
12350120Swpaulmodel NATSEMI DP83843		0x0001 DP83843 10/100 media interface
12450120Swpaul
12550120Swpaul/* Quality Semiconductor PHYs */
12650120Swpaulmodel QUALSEMI QS6612		0x0000 QS6612 10/100 media interface
12750120Swpaul
12850120Swpaul/* Seeq PHYs */
12950120Swpaulmodel xxSEEQ 80220		0x0003 Seeq 80220 10/100 media interface
13050120Swpaulmodel xxSEEQ 84220		0x0004 Seeq 84220 10/100 media interface
13150120Swpaul
13250120Swpaul/* Silicon Integrated Systems PHYs */
13350120Swpaulmodel xxSIS 900			0x0000 SiS 900 10/100 media interface
13450120Swpaul
13566989Simp/* TDK */
13666989Simpmodel TDK 78Q2120		0x0014 TDK 78Q2120 media interface
13766989Simp
13850120Swpaul/* Texas Instruments PHYs */
13950120Swpaulmodel xxTI TLAN10T		0x0001 ThunderLAN 10baseT media interface
14050120Swpaulmodel xxTI 100VGPMI		0x0002 ThunderLAN 100VG-AnyLan media interface
14159475Swpaul
14259475Swpaul/* XaQti Corp. PHYs. */
14359475Swpaulmodel XAQTI XMACII		0x0000 XaQti Corp. XMAC II gigabit interface
144