xref: /freebsd/sys/dev/mii/miidevs (revision bdcbfde31e8e9b343f113a1956384bdf30d1ed62)
1/*$NetBSD: miidevs,v 1.105 2011/11/25 23:28:14 jakllsch Exp $*/
2
3/*-
4 * Copyright (c) 1998, 1999 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
9 * NASA Ames Research Center.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 *    notice, this list of conditions and the following disclaimer.
16 * 2. Redistributions in binary form must reproduce the above copyright
17 *    notice, this list of conditions and the following disclaimer in the
18 *    documentation and/or other materials provided with the distribution.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
21 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
22 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
24 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30 * POSSIBILITY OF SUCH DAMAGE.
31 */
32
33/*
34 * List of known MII OUIs.
35 * For a complete list see http://standards-oui.ieee.org/
36 *
37 * XXX Vendors do obviously not agree how OUIs (24 bit) are mapped
38 * to the 22 bits available in the id registers.
39 * IEEE 802.3u-1995, subclause 22.2.4.3.1, figure 22-12, depicts the right
40 * mapping; the bit positions are defined in IEEE 802-1990, figure 5.2.
41 * (There is a formal 802.3 interpretation, number 1-07/98 of July 09 1998,
42 * about this.)
43 * The MII_OUI() macro in "mii.h" reflects this.
44 * If a vendor uses a different mapping, an "xx" prefixed OUI is defined here
45 * which is mangled accordingly to compensate.
46 */
47
48oui AGERE			0x00053d	Agere Systems
49oui ALTIMA			0x0010a9	Altima Communications
50oui AMD				0x00001a	Advanced Micro Devices
51oui BROADCOM			0x001018	Broadcom Corporation
52oui BROADCOM2			0x000af7	Broadcom Corporation
53oui BROADCOM3			0x001be9	Broadcom Corporation
54oui BROADCOM4			0x18c086	Broadcom Corporation
55oui CICADA			0x0003f1	Cicada Semiconductor
56oui DAVICOM			0x00606e	Davicom Semiconductor
57oui ENABLESEMI			0x0010dd	Enable Semiconductor
58oui ICPLUS			0x0090c3	IC Plus Corp.
59oui ICS				0x00a0be	Integrated Circuit Systems
60oui INTEL			0x00aa00	Intel Corporation
61oui JMICRON			0x00d831	JMicron Technologies
62oui LEVEL1			0x00207b	Level 1
63oui MARVELL			0x005043	Marvell Semiconductor
64oui MICREL			0x0010a1	Micrel
65oui MOTORCOMM			0x000000	Motorcomm
66oui MYSON			0x00c0b4	Myson Technology
67oui NATSEMI			0x080017	National Semiconductor
68oui PMCSIERRA			0x00e004	PMC-Sierra
69oui QUALSEMI			0x006051	Quality Semiconductor
70oui RDC				0x00d02d	RDC Semiconductor
71oui REALTEK			0x00e04c	RealTek Semicondctor
72oui SEEQ			0x00a07d	Seeq Technology
73oui SIS				0x00e006	Silicon Integrated Systems
74oui SMC				0x00800f	SMC
75oui TI				0x080028	Texas Instruments
76oui TSC				0x00c039	TDK Semiconductor
77oui VITESSE			0x0001c1	Vitesse Semiconductor
78oui XAQTI			0x00e0ae	XaQti Corp.
79
80/* Some Intel 82553's use an alternative OUI. */
81oui xxINTEL			0x001f00	Intel Corporation
82
83/* Some VIA 6122's use an alternative OUI. */
84oui xxCICADA			0x00c08f	Cicada Semiconductor
85
86/* bad bitorder (bits "g" and "h" (= MSBs byte 1) lost) */
87oui yyAMD			0x000058	Advanced Micro Devices
88oui xxATHEROS			0x00c82e	Atheros Communications
89oui xxBROADCOM			0x000818	Broadcom Corporation
90oui xxBROADCOM_ALT1		0x0050ef	Broadcom Corporation
91oui xxDAVICOM			0x000676	Davicom Semiconductor
92oui yyINTEL			0x005500	Intel Corporation
93oui xxJATO			0x0007c1	Jato Technologies
94oui xxMARVELL			0x000ac2	Marvell Semiconductor
95oui xxMYSON			0x00032d	Myson Technology
96oui xxNATSEMI			0x1000e8	National Semiconductor
97oui xxQUALSEMI			0x00068a	Quality Semiconductor
98oui xxTSC			0x00039c	TDK Semiconductor
99oui xxVITESSE			0x008083	Vitesse Semiconductor
100
101/* bad byteorder (bits "q" and "r" (= LSBs byte 3) lost) */
102oui xxLEVEL1			0x782000	Level 1
103oui xxXAQTI			0xace000	XaQti Corp.
104
105/* Don't know what's going on here. */
106oui xxASIX			0x000674	Asix Semiconductor
107oui yyDAVICOM			0x000602	Davicom Semiconductor
108oui xxICPLUS			0x0009c3	IC Plus Corp.
109oui xxPMCSIERRA			0x0009c0	PMC-Sierra
110oui xxPMCSIERRA2		0x009057	PMC-Sierra
111oui xxREALTEK			0x000732	RealTek Semicondctor
112oui yyREALTEK			0x000004	RealTek Semicondctor
113oui xxTI			0x100014	Texas Instruments
114
115/*
116 * List of known models.  Grouped by oui.
117 */
118
119/* Agere Systems PHYs */
120model AGERE ET1011		0x0001 ET1011 10/100/1000baseT PHY
121model AGERE ET1011C		0x0004 ET1011C 10/100/1000baseT PHY
122
123/* Altima Communications PHYs */
124model ALTIMA ACXXX		0x0001 ACXXX 10/100 media interface
125model ALTIMA AC101L		0x0012 AC101L 10/100 media interface
126model ALTIMA AC101		0x0021 AC101 10/100 media interface
127/* AMD Am79C87[45] have ALTIMA OUI */
128model ALTIMA Am79C875		0x0014 Am79C875 10/100 media interface
129model ALTIMA Am79C874		0x0021 Am79C874 10/100 media interface
130
131/* Advanced Micro Devices PHYs */
132/* see Davicom DM9101 for Am79C873 */
133model yyAMD 79C972_10T		0x0001 Am79C972 internal 10BASE-T interface
134model yyAMD 79c973phy		0x0036 Am79C973 internal 10/100 media interface
135model yyAMD 79c901		0x0037 Am79C901 10BASE-T interface
136model yyAMD 79c901home		0x0039 Am79C901 HomePNA 1.0 interface
137
138/* Atheros Communications/Attansic PHYs */
139model xxATHEROS F1		0x0001 Atheros F1 10/100/1000 PHY
140model xxATHEROS F2		0x0002 Atheros F2 10/100 PHY
141model xxATHEROS AR8021		0x0004 Atheros AR8021 10/100/1000 PHY
142model xxATHEROS F1_7		0x0007 Atheros F1 10/100/1000 PHY
143
144/* Asix semiconductor PHYs */
145model xxASIX AX88X9X		0x0031 Ax88x9x internal PHY
146
147/* Broadcom Corp. PHYs */
148model xxBROADCOM 3C905B		0x0012 Broadcom 3c905B internal PHY
149model xxBROADCOM 3C905C		0x0017 Broadcom 3c905C internal PHY
150model xxBROADCOM BCM5201	0x0021 BCM5201 10/100 media interface
151model xxBROADCOM BCM5214	0x0028 BCM5214 Quad 10/100 media interface
152model xxBROADCOM BCM5221	0x001e BCM5221 10/100 media interface
153model xxBROADCOM BCM5222	0x0032 BCM5222 Dual 10/100 media interface
154model xxBROADCOM BCM4401	0x0036 BCM4401 10/100 media interface
155model xxBROADCOM BCM5365	0x0037 BCM5365 10/100 5-port PHY switch
156model BROADCOM BCM5400		0x0004 BCM5400 1000BASE-T media interface
157model BROADCOM BCM5401		0x0005 BCM5401 1000BASE-T media interface
158model BROADCOM BCM5402		0x0006 BCM5402 1000BASE-T media interface
159model BROADCOM BCM5411		0x0007 BCM5411 1000BASE-T media interface
160model BROADCOM BCM5404		0x0008 BCM5404 1000BASE-T media interface
161model BROADCOM BCM5424		0x000a BCM5424/BCM5234 1000BASE-T media interface
162model BROADCOM BCM5464		0x000b BCM5464 1000BASE-T media interface
163model BROADCOM BCM5461		0x000c BCM5461 1000BASE-T media interface
164model BROADCOM BCM5462		0x000d BCM5462 1000BASE-T media interface
165model BROADCOM BCM5421		0x000e BCM5421 1000BASE-T media interface
166model BROADCOM BCM5752		0x0010 BCM5752 1000BASE-T media interface
167model BROADCOM BCM5701		0x0011 BCM5701 1000BASE-T media interface
168model BROADCOM BCM5706		0x0015 BCM5706 1000BASE-T/SX media interface
169model BROADCOM BCM5703		0x0016 BCM5703 1000BASE-T media interface
170model BROADCOM BCM5750		0x0018 BCM5750 1000BASE-T media interface
171model BROADCOM BCM5704		0x0019 BCM5704 1000BASE-T media interface
172model BROADCOM BCM5705		0x001a BCM5705 1000BASE-T media interface
173model BROADCOM BCM54K2		0x002e BCM54K2 1000BASE-T media interface
174model BROADCOM BCM5714		0x0034 BCM5714 1000BASE-T media interface
175model BROADCOM BCM5780		0x0035 BCM5780 1000BASE-T media interface
176model BROADCOM BCM5708C		0x0036 BCM5708C 1000BASE-T media interface
177model BROADCOM BCM5466		0x003b BCM5466 1000BASE-T media interface
178model BROADCOM2 BCM5325		0x0003 BCM5325 10/100 5-port PHY switch
179model BROADCOM2 BCM5906		0x0004 BCM5906 10/100baseTX media interface
180model BROADCOM2 BCM5478		0x0008 BCM5478 1000BASE-T media interface
181model BROADCOM2 BCM5488		0x0009 BCM5488 1000BASE-T media interface
182model BROADCOM2 BCM5481		0x000a BCM5481 1000BASE-T media interface
183model BROADCOM2 BCM5482		0x000b BCM5482 1000BASE-T media interface
184model BROADCOM2 BCM5755		0x000c BCM5755 1000BASE-T media interface
185model BROADCOM2 BCM5754		0x000e BCM5754/BCM5787 1000BASE-T media interface
186model BROADCOM2 BCM5708S	0x0015 BCM5708S 1000/2500baseSX PHY
187model BROADCOM2 BCM5785		0x0016 BCM5785 1000BASE-T media interface
188model BROADCOM2 BCM5709CAX	0x002c BCM5709CAX 10/100/1000baseT PHY
189model BROADCOM2 BCM5722		0x002d BCM5722 1000BASE-T media interface
190model BROADCOM2 BCM5784		0x003a BCM5784 10/100/1000baseT PHY
191model BROADCOM2 BCM5709C	0x003c BCM5709 10/100/1000baseT PHY
192model BROADCOM2 BCM5761		0x003d BCM5761 10/100/1000baseT PHY
193model BROADCOM2 BCM5709S	0x003f BCM5709S/5720S 1000/2500baseSX PHY
194model BROADCOM3 BCM54618SE	0x000d BCM54618SE 10/100/1000BASE-T PHY
195model BROADCOM3 BCM54616S	0x0011 BCM54616S 10/100/1000BASE-T PHY
196model BROADCOM3 BCM57780	0x0019 BCM57780 1000BASE-T media interface
197model BROADCOM3 BCM5717C	0x0020 BCM5717C 1000BASE-T media interface
198model BROADCOM3 BCM5719C	0x0022 BCM5719C 1000BASE-T media interface
199model BROADCOM3 BCM57765	0x0024 BCM57765 1000BASE-T media interface
200model BROADCOM3 BCM5720C	0x0036 BCM5720C 1000BASE-T media interface
201model BROADCOM4 BCM54213PE	0x000a BCM54213PE 1000BASE-T media interface
202model BROADCOM4 BCM5725C	0x0038 BCM5725C 1000BASE-T media interface
203model xxBROADCOM_ALT1 BCM5906	0x0004 BCM5906 10/100baseTX media interface
204
205/* Cicada Semiconductor PHYs (now owned by Vitesse?) */
206model xxCICADA CS8201		0x0001 Cicada CS8201 10/100/1000TX PHY
207model xxCICADA CS8204		0x0004 Cicada CS8204 10/100/1000TX PHY
208model xxCICADA VSC8211		0x000b Cicada VSC8211 10/100/1000TX PHY
209model xxCICADA VSC8221		0x0015 Cicada CS8201 10/100/1000TX PHY
210model xxCICADA CS8201A		0x0020 Cicada CS8201 10/100/1000TX PHY
211model xxCICADA CS8201B		0x0021 Cicada CS8201 10/100/1000TX PHY
212model xxCICADA CS8244		0x002c Cicada CS8244 10/100/1000TX PHY
213model xxVITESSE VSC8601		0x0002 Vitesse VSC8601 10/100/1000TX PHY
214model xxVITESSE VSC8641		0x0003 Vitesse VSC8641 10/100/1000TX PHY
215
216/* Davicom Semiconductor PHYs */
217/* AMD Am79C873 seems to be a relabeled DM9101 */
218model xxDAVICOM DM9101		0x0000 DM9101 (AMD Am79C873) 10/100 media interface
219model xxDAVICOM DM9102		0x0004 DM9102 10/100 media interface
220model yyDAVICOM DM9101		0x0000 DM9101 10/100 media interface
221
222/* IC Plus Corp. PHYs */
223model xxICPLUS IP101		0x0005 IP101 10/100 PHY
224model xxICPLUS IP1000A		0x0008 IP100A 10/100/1000 media interface
225model xxICPLUS IP1001		0x0019 IP1001 10/100/1000 media interface
226
227/* Integrated Circuit Systems PHYs */
228model ICS 1889			0x0001 ICS1889 10/100 media interface
229model ICS 1890			0x0002 ICS1890 10/100 media interface
230model ICS 1892			0x0003 ICS1892 10/100 media interface
231model ICS 1893			0x0004 ICS1893 10/100 media interface
232model ICS 1893C			0x0005 ICS1893C 10/100 media interface
233
234/* Intel Corporation PHYs */
235model xxINTEL I82553		0x0000 i82553 10/100 media interface
236model yyINTEL I82555		0x0015 i82555 10/100 media interface
237model yyINTEL I82562EH		0x0017 i82562EH HomePNA interface
238model yyINTEL I82562G		0x0031 i82562G 10/100 media interface
239model yyINTEL I82562EM		0x0032 i82562EM 10/100 media interface
240model yyINTEL I82562ET		0x0033 i82562ET 10/100 media interface
241model yyINTEL I82553		0x0035 i82553 10/100 media interface
242model yyINTEL I82566		0x0039 i82566 10/100/1000 media interface
243model INTEL I82577		0x0005 i82577 10/100/1000 media interface
244model INTEL I82579		0x0009 i82579 10/100/1000 media interface
245model xxMARVELL I82563		0x000a i82563 10/100/1000 media interface
246
247model yyINTEL IGP01E1000	0x0038 Intel IGP01E1000 Gigabit PHY
248
249/* Jato Technologies PHYs */
250model xxJATO BASEX		0x0000 Jato 1000baseX media interface
251
252/* JMicron Technologies PHYs */
253model JMICRON JMP211		0x0021 JMP211 10/100/1000 media interface
254model JMICRON JMP202		0x0022 JMP202 10/100 media interface
255
256/* Level 1 PHYs */
257model xxLEVEL1 LXT970		0x0000 LXT970 10/100 media interface
258model LEVEL1 LXT971		0x000e LXT971/2 10/100 media interface
259model LEVEL1 LXT973		0x0021 LXT973 10/100 Dual PHY
260model LEVEL1 LXT974		0x0004 LXT974 10/100 Quad PHY
261model LEVEL1 LXT975		0x0005 LXT975 10/100 Quad PHY
262model LEVEL1 LXT1000_OLD	0x0003 LXT1000 1000BASE-T media interface
263model LEVEL1 LXT1000		0x000c LXT1000 1000BASE-T media interface
264
265/* Marvell Semiconductor PHYs */
266model xxMARVELL E1000		0x0000 Marvell 88E1000 Gigabit PHY
267model xxMARVELL E1011		0x0002 Marvell 88E1011 Gigabit PHY
268model xxMARVELL E1000_3		0x0003 Marvell 88E1000 Gigabit PHY
269model xxMARVELL E1000S		0x0004 Marvell 88E1000S Gigabit PHY
270model xxMARVELL E1000_5		0x0005 Marvell 88E1000 Gigabit PHY
271model xxMARVELL E1101		0x0006 Marvell 88E1101 Gigabit PHY
272model xxMARVELL E3082		0x0008 Marvell 88E3082 10/100 Fast Ethernet PHY
273model xxMARVELL E1112		0x0009 Marvell 88E1112 Gigabit PHY
274model xxMARVELL E1149		0x000b Marvell 88E1149 Gigabit PHY
275model xxMARVELL E1111		0x000c Marvell 88E1111 Gigabit PHY
276model xxMARVELL E1145		0x000d Marvell 88E1145 Quad Gigabit PHY
277model xxMARVELL E1512		0x001d Marvell 88E1512 Gigabit PHY
278model xxMARVELL E1116		0x0021 Marvell 88E1116 Gigabit PHY
279model xxMARVELL E1116R		0x0024 Marvell 88E1116R Gigabit PHY
280model xxMARVELL E1118		0x0022 Marvell 88E1118 Gigabit PHY
281model xxMARVELL E1149R		0x0025 Marvell 88E1149R Quad Gigabit PHY
282model xxMARVELL E3016		0x0026 Marvell 88E3016 10/100 Fast Ethernet PHY
283model xxMARVELL PHYG65G		0x0027 Marvell PHYG65G Gigabit PHY
284model xxMARVELL E1116R_29	0x0029 Marvell 88E1116R Gigabit PHY
285model MARVELL E1000		0x0005 Marvell 88E1000 Gigabit PHY
286model MARVELL E1011		0x0002 Marvell 88E1011 Gigabit PHY
287model MARVELL E1000_3		0x0003 Marvell 88E1000 Gigabit PHY
288model MARVELL E1000_5		0x0005 Marvell 88E1000 Gigabit PHY
289model MARVELL E1111		0x000c Marvell 88E1111 Gigabit PHY
290
291/* Micrel PHYs */
292model MICREL KSZ8081		0x0016 Micrel KSZ8081 10/100 PHY
293model MICREL KSZ9021		0x0021 Micrel KSZ9021 10/100/1000 PHY
294model MICREL KSZ9031		0x0022 Micrel KSZ9031 10/100/1000 PHY
295
296/* Motorcomm PHYs */
297model MOTORCOMM YT8511		0x010a Motorcomm YT8511 10/100/1000 PHY
298
299/* Myson Technology PHYs */
300model xxMYSON MTD972		0x0000 MTD972 10/100 media interface
301model MYSON MTD803		0x0000 MTD803 3-in-1 media interface
302
303/* National Semiconductor PHYs */
304model xxNATSEMI DP83840		0x0000 DP83840 10/100 media interface
305model xxNATSEMI DP83843		0x0001 DP83843 10/100 media interface
306model xxNATSEMI DP83815		0x0002 DP83815 10/100 media interface
307model xxNATSEMI DP83847		0x0003 DP83847 10/100 media interface
308model xxNATSEMI DP83891		0x0005 DP83891 1000BASE-T media interface
309model xxNATSEMI DP83861		0x0006 DP83861 1000BASE-T media interface
310model xxNATSEMI DP83865		0x0007 DP83865 1000BASE-T media interface
311model xxNATSEMI DP83849		0x000a DP83849 10/100 media interface
312
313/* PMC Sierra PHYs */
314model xxPMCSIERRA PM8351	0x0000 PM8351 OctalPHY Gigabit interface
315model xxPMCSIERRA2 PM8352	0x0002 PM8352 OctalPHY Gigabit interface
316model xxPMCSIERRA2 PM8353	0x0003 PM8353 QuadPHY Gigabit interface
317model PMCSIERRA PM8354		0x0004 PM8354 QuadPHY Gigabit interface
318
319/* Quality Semiconductor PHYs */
320model xxQUALSEMI QS6612		0x0000 QS6612 10/100 media interface
321
322/* RDC Semiconductor PHYs */
323model RDC R6040			0x0003 R6040 10/100 media interface
324model RDC R6040_2		0x0005 R6040 10/100 media interface
325
326/* RealTek Semicondctor PHYs */
327model yyREALTEK RTL8201L	0x0020 RTL8201L 10/100 media interface
328model xxREALTEK RTL8169S	0x0011 RTL8169S/8110S/8211 1000BASE-T media interface
329model REALTEK RTL8305SC		0x0005 RTL8305SC 10/100 802.1q switch
330model REALTEK RTL8201E		0x0008 RTL8201E 10/100 media interface
331model REALTEK RTL8251		0x0000 RTL8251/8153 1000BASE-T media interface
332model REALTEK RTL8169S		0x0011 RTL8169S/8110S/8211 1000BASE-T media interface
333
334/* Seeq Seeq PHYs */
335model SEEQ 80220		0x0003 Seeq 80220 10/100 media interface
336model SEEQ 84220		0x0004 Seeq 84220 10/100 media interface
337model SEEQ 80225		0x0008 Seeq 80225 10/100 media interface
338
339/* Silicon Integrated Systems PHYs */
340model SIS 900			0x0000 SiS 900 10/100 media interface
341
342/* Texas Instruments PHYs */
343model TI TLAN10T		0x0001 ThunderLAN 10BASE-T media interface
344model TI 100VGPMI		0x0002 ThunderLAN 100VG-AnyLan media interface
345model TI TNETE2101		0x0003 TNETE2101 media interface
346model xxTI DP83867		0x0023 High Immunity 10/100/1000 PHY
347model xxTI DP83822		0x0024 High Immunity 10/100 PHY
348
349/* TDK Semiconductor PHYs */
350model xxTSC 78Q2120		0x0014 78Q2120 10/100 media interface
351model xxTSC 78Q2121		0x0015 78Q2121 100BASE-TX media interface
352
353/* Vitesse Semiconductor (now Microsemi) */
354model xxVITESSE VSC8501		0x0013 Vitesse VSC8501 10/100/1000TX PHY
355model xxVITESSE VSC8504		0x000c Vitesse VSC8504 10/100/1000TX PHY
356model xxVITESSE VSC8514		0x0027 Vitesse VSC8514 10/100/1000TX PHY
357
358/* XaQti Corp. PHYs */
359model xxXAQTI XMACII		0x0000 XaQti Corp. XMAC II gigabit interface
360
361/* SMC */
362model SMC LAN8710A		0x000F SMC LAN8710A 10/100 interface
363model SMC LAN8700		0x000C SMC LAN8700  10/100 interface
364