miidevs.h revision 1.136 1 1.99 jym /* $NetBSD: miidevs.h,v 1.136 2019/02/08 09:16:28 msaitoh Exp $ */
2 1.1 thorpej
3 1.1 thorpej /*
4 1.1 thorpej * THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.
5 1.1 thorpej *
6 1.1 thorpej * generated from:
7 1.136 msaitoh * NetBSD: miidevs,v 1.133 2019/02/08 09:16:11 msaitoh Exp
8 1.1 thorpej */
9 1.1 thorpej
10 1.1 thorpej /*-
11 1.5 thorpej * Copyright (c) 1998, 1999 The NetBSD Foundation, Inc.
12 1.1 thorpej * All rights reserved.
13 1.1 thorpej *
14 1.1 thorpej * This code is derived from software contributed to The NetBSD Foundation
15 1.1 thorpej * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
16 1.1 thorpej * NASA Ames Research Center.
17 1.1 thorpej *
18 1.1 thorpej * Redistribution and use in source and binary forms, with or without
19 1.1 thorpej * modification, are permitted provided that the following conditions
20 1.1 thorpej * are met:
21 1.1 thorpej * 1. Redistributions of source code must retain the above copyright
22 1.1 thorpej * notice, this list of conditions and the following disclaimer.
23 1.1 thorpej * 2. Redistributions in binary form must reproduce the above copyright
24 1.1 thorpej * notice, this list of conditions and the following disclaimer in the
25 1.1 thorpej * documentation and/or other materials provided with the distribution.
26 1.1 thorpej *
27 1.1 thorpej * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
28 1.1 thorpej * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
29 1.1 thorpej * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
30 1.1 thorpej * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
31 1.1 thorpej * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32 1.1 thorpej * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33 1.1 thorpej * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34 1.1 thorpej * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35 1.1 thorpej * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36 1.1 thorpej * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37 1.1 thorpej * POSSIBILITY OF SUCH DAMAGE.
38 1.1 thorpej */
39 1.1 thorpej
40 1.1 thorpej /*
41 1.6 drochner * List of known MII OUIs.
42 1.6 drochner * For a complete list see http://standards.ieee.org/regauth/oui/
43 1.6 drochner *
44 1.15 drochner * XXX Vendors do obviously not agree how OUIs (24 bit) are mapped
45 1.15 drochner * to the 22 bits available in the id registers.
46 1.15 drochner * IEEE 802.3u-1995, subclause 22.2.4.3.1, figure 22-12, depicts the right
47 1.15 drochner * mapping; the bit positions are defined in IEEE 802-1990, figure 5.2.
48 1.15 drochner * (There is a formal 802.3 interpretation, number 1-07/98 of July 09 1998,
49 1.15 drochner * about this.)
50 1.109 isaki * The MII_OUI() macro in "miivar.h" reflects this.
51 1.15 drochner * If a vendor uses a different mapping, an "xx" prefixed OUI is defined here
52 1.15 drochner * which is mangled accordingly to compensate.
53 1.1 thorpej */
54 1.1 thorpej
55 1.85 cegger /*
56 1.85 cegger * Use "make -f Makefile.miidevs" to regenerate miidevs.h and miidevs_data.h
57 1.85 cegger */
58 1.85 cegger
59 1.133 msaitoh #define MII_OUI_AMD 0x00001a /* Advanced Micro Devices */
60 1.133 msaitoh #define MII_OUI_CICADA 0x0003f1 /* Cicada Semiconductor */
61 1.82 jnemeth #define MII_OUI_AGERE 0x00053d /* Agere */
62 1.133 msaitoh #define MII_OUI_BROADCOM2 0x000af7 /* Broadcom Corporation */
63 1.133 msaitoh #define MII_OUI_BROADCOM 0x001018 /* Broadcom Corporation */
64 1.133 msaitoh #define MII_OUI_MICREL 0x0010a1 /* Micrel */
65 1.14 augustss #define MII_OUI_ALTIMA 0x0010a9 /* Altima Communications */
66 1.133 msaitoh #define MII_OUI_ENABLESEMI 0x0010dd /* Enable Semiconductor */
67 1.84 cegger #define MII_OUI_ATHEROS 0x001374 /* Atheros */
68 1.112 tsutsui #define MII_OUI_BROADCOM3 0x001be9 /* Broadcom Corporation */
69 1.133 msaitoh #define MII_OUI_LEVEL1 0x00207b /* Level 1 */
70 1.133 msaitoh #define MII_OUI_MARVELL 0x005043 /* Marvell Semiconductor */
71 1.133 msaitoh #define MII_OUI_QUALSEMI 0x006051 /* Quality Semiconductor */
72 1.14 augustss #define MII_OUI_DAVICOM 0x00606e /* Davicom Semiconductor */
73 1.133 msaitoh #define MII_OUI_SMSC 0x00800f /* SMSC */
74 1.67 chs #define MII_OUI_ICPLUS 0x0090c3 /* IC Plus Corp. */
75 1.133 msaitoh #define MII_OUI_SEEQ 0x00a07d /* Seeq */
76 1.6 drochner #define MII_OUI_ICS 0x00a0be /* Integrated Circuit Systems */
77 1.1 thorpej #define MII_OUI_INTEL 0x00aa00 /* Intel */
78 1.133 msaitoh #define MII_OUI_TSC 0x00c039 /* TDK Semiconductor */
79 1.133 msaitoh #define MII_OUI_MYSON 0x00c0b4 /* Myson Technology */
80 1.133 msaitoh #define MII_OUI_ATTANSIC 0x00c82e /* Attansic Technology */
81 1.133 msaitoh #define MII_OUI_RDC 0x00d02d /* RDC Semiconductor */
82 1.81 bouyer #define MII_OUI_JMICRON 0x00d831 /* JMicron */
83 1.19 drochner #define MII_OUI_PMCSIERRA 0x00e004 /* PMC-Sierra */
84 1.133 msaitoh #define MII_OUI_SIS 0x00e006 /* Silicon Integrated Systems */
85 1.56 jonathan #define MII_OUI_REALTEK 0x00e04c /* RealTek */
86 1.133 msaitoh #define MII_OUI_XAQTI 0x00e0ae /* XaQti Corp. */
87 1.133 msaitoh #define MII_OUI_NATSEMI 0x080017 /* National Semiconductor */
88 1.6 drochner #define MII_OUI_TI 0x080028 /* Texas Instruments */
89 1.6 drochner
90 1.7 soren /* Some Intel 82553's use an alternative OUI. */
91 1.15 drochner #define MII_OUI_xxINTEL 0x001f00 /* Intel */
92 1.7 soren
93 1.60 briggs /* Some VIA 6122's use an alternative OUI. */
94 1.60 briggs #define MII_OUI_xxCICADA 0x00c08f /* Cicada Semiconductor */
95 1.60 briggs
96 1.15 drochner /* bad bitorder (bits "g" and "h" (= MSBs byte 1) lost) */
97 1.15 drochner #define MII_OUI_yyAMD 0x000058 /* Advanced Micro Devices */
98 1.12 augustss #define MII_OUI_xxBROADCOM 0x000818 /* Broadcom Corporation */
99 1.80 cegger #define MII_OUI_xxBROADCOM_ALT1 0x0050ef /* Broadcom Corporation */
100 1.39 drochner #define MII_OUI_xxDAVICOM 0x000676 /* Davicom Semiconductor */
101 1.15 drochner #define MII_OUI_yyINTEL 0x005500 /* Intel */
102 1.39 drochner #define MII_OUI_xxMARVELL 0x000ac2 /* Marvell Semiconductor */
103 1.15 drochner #define MII_OUI_xxMYSON 0x00032d /* Myson Technology */
104 1.15 drochner #define MII_OUI_xxNATSEMI 0x1000e8 /* National Semiconductor */
105 1.15 drochner #define MII_OUI_xxQUALSEMI 0x00068a /* Quality Semiconductor */
106 1.15 drochner #define MII_OUI_xxTSC 0x00039c /* TDK Semiconductor */
107 1.15 drochner
108 1.15 drochner /* bad byteorder (bits "q" and "r" (= LSBs byte 3) lost) */
109 1.15 drochner #define MII_OUI_xxLEVEL1 0x782000 /* Level 1 */
110 1.15 drochner #define MII_OUI_xxXAQTI 0xace000 /* XaQti Corp. */
111 1.6 drochner
112 1.6 drochner /* Don't know what's going on here. */
113 1.134 msaitoh #define MII_OUI_xxASIX 0x000674 /* Asix Semiconductor */
114 1.19 drochner #define MII_OUI_xxPMCSIERRA 0x0009c0 /* PMC-Sierra */
115 1.37 matt #define MII_OUI_xxPMCSIERRA2 0x009057 /* PMC-Sierra */
116 1.6 drochner
117 1.56 jonathan #define MII_OUI_xxREALTEK 0x000732 /* Realtek */
118 1.65 xtraeme #define MII_OUI_yyREALTEK 0x000004 /* Realtek */
119 1.1 thorpej /*
120 1.1 thorpej * List of known models. Grouped by oui.
121 1.1 thorpej */
122 1.14 augustss
123 1.82 jnemeth /*
124 1.83 tsutsui * Agere PHYs
125 1.82 jnemeth */
126 1.82 jnemeth #define MII_MODEL_AGERE_ET1011 0x0004
127 1.82 jnemeth #define MII_STR_AGERE_ET1011 "Agere ET1011 10/100/1000baseT PHY"
128 1.82 jnemeth
129 1.134 msaitoh /* Asix semiconductor PHYs */
130 1.134 msaitoh #define MII_MODEL_xxASIX_AX88X9X 0x0031
131 1.134 msaitoh #define MII_STR_xxASIX_AX88X9X "Ax88x9x internal PHY"
132 1.134 msaitoh
133 1.84 cegger /* Atheros PHYs */
134 1.84 cegger #define MII_MODEL_ATHEROS_F1 0x0001
135 1.84 cegger #define MII_STR_ATHEROS_F1 "F1 10/100/1000 PHY"
136 1.84 cegger #define MII_MODEL_ATHEROS_F2 0x0002
137 1.84 cegger #define MII_STR_ATHEROS_F2 "F2 10/100 PHY"
138 1.84 cegger
139 1.85 cegger /* Attansic PHYs */
140 1.85 cegger #define MII_MODEL_ATTANSIC_L1 0x0001
141 1.85 cegger #define MII_STR_ATTANSIC_L1 "L1 10/100/1000 PHY"
142 1.85 cegger #define MII_MODEL_ATTANSIC_L2 0x0002
143 1.85 cegger #define MII_STR_ATTANSIC_L2 "L2 10/100 PHY"
144 1.101 matt #define MII_MODEL_ATTANSIC_AR8021 0x0004
145 1.101 matt #define MII_STR_ATTANSIC_AR8021 "Atheros AR8021 10/100/1000 PHY"
146 1.111 matt #define MII_MODEL_ATTANSIC_AR8035 0x0007
147 1.111 matt #define MII_STR_ATTANSIC_AR8035 "Atheros AR8035 10/100/1000 PHY"
148 1.85 cegger
149 1.14 augustss /* Altima Communications PHYs */
150 1.32 augustss /* Don't know the model for ACXXX */
151 1.32 augustss #define MII_MODEL_ALTIMA_ACXXX 0x0001
152 1.32 augustss #define MII_STR_ALTIMA_ACXXX "ACXXX 10/100 media interface"
153 1.15 drochner #define MII_MODEL_ALTIMA_AC101 0x0021
154 1.15 drochner #define MII_STR_ALTIMA_AC101 "AC101 10/100 media interface"
155 1.45 gendalia #define MII_MODEL_ALTIMA_AC101L 0x0012
156 1.45 gendalia #define MII_STR_ALTIMA_AC101L "AC101L 10/100 media interface"
157 1.46 matt /* AMD Am79C87[45] have ALTIMA OUI */
158 1.46 matt #define MII_MODEL_ALTIMA_Am79C875 0x0014
159 1.46 matt #define MII_STR_ALTIMA_Am79C875 "Am79C875 10/100 media interface"
160 1.46 matt #define MII_MODEL_ALTIMA_Am79C874 0x0021
161 1.46 matt #define MII_STR_ALTIMA_Am79C874 "Am79C874 10/100 media interface"
162 1.3 thorpej
163 1.3 thorpej /* Advanced Micro Devices PHYs */
164 1.39 drochner /* see Davicom DM9101 for Am79C873 */
165 1.28 thorpej #define MII_MODEL_yyAMD_79C972_10T 0x0001
166 1.28 thorpej #define MII_STR_yyAMD_79C972_10T "Am79C972 internal 10BASE-T interface"
167 1.15 drochner #define MII_MODEL_yyAMD_79c973phy 0x0036
168 1.29 thorpej #define MII_STR_yyAMD_79c973phy "Am79C973 internal 10/100 media interface"
169 1.15 drochner #define MII_MODEL_yyAMD_79c901 0x0037
170 1.29 thorpej #define MII_STR_yyAMD_79c901 "Am79C901 10BASE-T interface"
171 1.15 drochner #define MII_MODEL_yyAMD_79c901home 0x0039
172 1.29 thorpej #define MII_STR_yyAMD_79c901home "Am79C901 HomePNA 1.0 interface"
173 1.10 augustss
174 1.12 augustss /* Broadcom Corp. PHYs */
175 1.27 thorpej #define MII_MODEL_xxBROADCOM_3C905B 0x0012
176 1.27 thorpej #define MII_STR_xxBROADCOM_3C905B "Broadcom 3c905B internal PHY"
177 1.15 drochner #define MII_MODEL_xxBROADCOM_3C905C 0x0017
178 1.27 thorpej #define MII_STR_xxBROADCOM_3C905C "Broadcom 3c905C internal PHY"
179 1.15 drochner #define MII_MODEL_xxBROADCOM_BCM5201 0x0021
180 1.15 drochner #define MII_STR_xxBROADCOM_BCM5201 "BCM5201 10/100 media interface"
181 1.47 scw #define MII_MODEL_xxBROADCOM_BCM5214 0x0028
182 1.47 scw #define MII_STR_xxBROADCOM_BCM5214 "BCM5214 Quad 10/100 media interface"
183 1.27 thorpej #define MII_MODEL_xxBROADCOM_BCM5221 0x001e
184 1.27 thorpej #define MII_STR_xxBROADCOM_BCM5221 "BCM5221 10/100 media interface"
185 1.57 scw #define MII_MODEL_xxBROADCOM_BCM5222 0x0032
186 1.57 scw #define MII_STR_xxBROADCOM_BCM5222 "BCM5222 Dual 10/100 media interface"
187 1.55 martin #define MII_MODEL_xxBROADCOM_BCM4401 0x0036
188 1.55 martin #define MII_STR_xxBROADCOM_BCM4401 "BCM4401 10/100 media interface"
189 1.106 jakllsch #define MII_MODEL_xxBROADCOM_BCM5365 0x0037
190 1.106 jakllsch #define MII_STR_xxBROADCOM_BCM5365 "BCM5365 10/100 5-port PHY switch"
191 1.15 drochner #define MII_MODEL_BROADCOM_BCM5400 0x0004
192 1.25 thorpej #define MII_STR_BROADCOM_BCM5400 "BCM5400 1000BASE-T media interface"
193 1.22 thorpej #define MII_MODEL_BROADCOM_BCM5401 0x0005
194 1.25 thorpej #define MII_STR_BROADCOM_BCM5401 "BCM5401 1000BASE-T media interface"
195 1.22 thorpej #define MII_MODEL_BROADCOM_BCM5411 0x0007
196 1.25 thorpej #define MII_STR_BROADCOM_BCM5411 "BCM5411 1000BASE-T media interface"
197 1.91 simonb #define MII_MODEL_BROADCOM_BCM5464 0x000b
198 1.91 simonb #define MII_STR_BROADCOM_BCM5464 "BCM5464 1000BASE-T media interface"
199 1.95 msaitoh #define MII_MODEL_BROADCOM_BCM5461 0x000c
200 1.95 msaitoh #define MII_STR_BROADCOM_BCM5461 "BCM5461 1000BASE-T media interface"
201 1.87 msaitoh #define MII_MODEL_BROADCOM_BCM5462 0x000d
202 1.87 msaitoh #define MII_STR_BROADCOM_BCM5462 "BCM5462 1000BASE-T media interface"
203 1.40 matt #define MII_MODEL_BROADCOM_BCM5421 0x000e
204 1.40 matt #define MII_STR_BROADCOM_BCM5421 "BCM5421 1000BASE-T media interface"
205 1.72 tsutsui #define MII_MODEL_BROADCOM_BCM5752 0x0010
206 1.72 tsutsui #define MII_STR_BROADCOM_BCM5752 "BCM5752 1000BASE-T media interface"
207 1.38 fvdl #define MII_MODEL_BROADCOM_BCM5701 0x0011
208 1.38 fvdl #define MII_STR_BROADCOM_BCM5701 "BCM5701 1000BASE-T media interface"
209 1.123 msaitoh #define MII_MODEL_BROADCOM_BCM5706 0x0015
210 1.123 msaitoh #define MII_STR_BROADCOM_BCM5706 "BCM5706 1000BASE-T/SX media interface"
211 1.43 matt #define MII_MODEL_BROADCOM_BCM5703 0x0016
212 1.43 matt #define MII_STR_BROADCOM_BCM5703 "BCM5703 1000BASE-T media interface"
213 1.87 msaitoh #define MII_MODEL_BROADCOM_BCM5750 0x0018
214 1.87 msaitoh #define MII_STR_BROADCOM_BCM5750 "BCM5750 1000BASE-T media interface"
215 1.44 jonathan #define MII_MODEL_BROADCOM_BCM5704 0x0019
216 1.44 jonathan #define MII_STR_BROADCOM_BCM5704 "BCM5704 1000BASE-T media interface"
217 1.49 hannken #define MII_MODEL_BROADCOM_BCM5705 0x001a
218 1.49 hannken #define MII_STR_BROADCOM_BCM5705 "BCM5705 1000BASE-T media interface"
219 1.87 msaitoh #define MII_MODEL_BROADCOM_BCM54K2 0x002e
220 1.87 msaitoh #define MII_STR_BROADCOM_BCM54K2 "BCM54K2 1000BASE-T media interface"
221 1.64 soren #define MII_MODEL_BROADCOM_BCM5714 0x0034
222 1.124 msaitoh #define MII_STR_BROADCOM_BCM5714 "BCM5714 1000BASE-T/X media interface"
223 1.69 jonathan #define MII_MODEL_BROADCOM_BCM5780 0x0035
224 1.124 msaitoh #define MII_STR_BROADCOM_BCM5780 "BCM5780 1000BASE-T/X media interface"
225 1.78 markd #define MII_MODEL_BROADCOM_BCM5708C 0x0036
226 1.78 markd #define MII_STR_BROADCOM_BCM5708C "BCM5708C 1000BASE-T media interface"
227 1.106 jakllsch #define MII_MODEL_BROADCOM2_BCM5325 0x0003
228 1.106 jakllsch #define MII_STR_BROADCOM2_BCM5325 "BCM5325 10/100 5-port PHY switch"
229 1.87 msaitoh #define MII_MODEL_BROADCOM2_BCM5906 0x0004
230 1.87 msaitoh #define MII_STR_BROADCOM2_BCM5906 "BCM5906 10/100baseTX media interface"
231 1.97 pgoyette #define MII_MODEL_BROADCOM2_BCM5481 0x000a
232 1.97 pgoyette #define MII_STR_BROADCOM2_BCM5481 "BCM5481 1000BASE-T media interface"
233 1.96 kiyohara #define MII_MODEL_BROADCOM2_BCM5482 0x000b
234 1.96 kiyohara #define MII_STR_BROADCOM2_BCM5482 "BCM5482 1000BASE-T media interface"
235 1.74 markd #define MII_MODEL_BROADCOM2_BCM5755 0x000c
236 1.74 markd #define MII_STR_BROADCOM2_BCM5755 "BCM5755 1000BASE-T media interface"
237 1.116 msaitoh #define MII_MODEL_BROADCOM2_BCM5756 0x000d
238 1.116 msaitoh #define MII_STR_BROADCOM2_BCM5756 "BCM5756 1000BASE-T media interface XXX"
239 1.74 markd #define MII_MODEL_BROADCOM2_BCM5754 0x000e
240 1.74 markd #define MII_STR_BROADCOM2_BCM5754 "BCM5754/5787 1000BASE-T media interface"
241 1.115 msaitoh #define MII_MODEL_BROADCOM2_BCM5708S 0x0015
242 1.115 msaitoh #define MII_STR_BROADCOM2_BCM5708S "BCM5708S 1000/2500baseSX PHY"
243 1.105 cegger #define MII_MODEL_BROADCOM2_BCM5785 0x0016
244 1.105 cegger #define MII_STR_BROADCOM2_BCM5785 "BCM5785 1000BASE-T media interface"
245 1.92 bouyer #define MII_MODEL_BROADCOM2_BCM5709CAX 0x002c
246 1.92 bouyer #define MII_STR_BROADCOM2_BCM5709CAX "BCM5709CAX 10/100/1000baseT PHY"
247 1.87 msaitoh #define MII_MODEL_BROADCOM2_BCM5722 0x002d
248 1.87 msaitoh #define MII_STR_BROADCOM2_BCM5722 "BCM5722 1000BASE-T media interface"
249 1.95 msaitoh #define MII_MODEL_BROADCOM2_BCM5784 0x003a
250 1.95 msaitoh #define MII_STR_BROADCOM2_BCM5784 "BCM5784 10/100/1000baseT PHY"
251 1.92 bouyer #define MII_MODEL_BROADCOM2_BCM5709C 0x003c
252 1.92 bouyer #define MII_STR_BROADCOM2_BCM5709C "BCM5709 10/100/1000baseT PHY"
253 1.95 msaitoh #define MII_MODEL_BROADCOM2_BCM5761 0x003d
254 1.95 msaitoh #define MII_STR_BROADCOM2_BCM5761 "BCM5761 10/100/1000baseT PHY"
255 1.97 pgoyette #define MII_MODEL_BROADCOM2_BCM5709S 0x003f
256 1.98 jym #define MII_STR_BROADCOM2_BCM5709S "BCM5709S 1000/2500baseSX PHY"
257 1.115 msaitoh #define MII_MODEL_BROADCOM3_BCM57780 0x0019
258 1.115 msaitoh #define MII_STR_BROADCOM3_BCM57780 "BCM57780 1000BASE-T media interface"
259 1.115 msaitoh #define MII_MODEL_BROADCOM3_BCM5717C 0x0020
260 1.115 msaitoh #define MII_STR_BROADCOM3_BCM5717C "BCM5717C 1000BASE-T media interface"
261 1.115 msaitoh #define MII_MODEL_BROADCOM3_BCM5719C 0x0022
262 1.115 msaitoh #define MII_STR_BROADCOM3_BCM5719C "BCM5719C 1000BASE-T media interface"
263 1.112 tsutsui #define MII_MODEL_BROADCOM3_BCM57765 0x0024
264 1.112 tsutsui #define MII_STR_BROADCOM3_BCM57765 "BCM57765 1000BASE-T media interface"
265 1.115 msaitoh #define MII_MODEL_BROADCOM3_BCM5720C 0x0036
266 1.115 msaitoh #define MII_STR_BROADCOM3_BCM5720C "BCM5720C 1000BASE-T media interface"
267 1.80 cegger #define MII_MODEL_xxBROADCOM_ALT1_BCM5906 0x0004
268 1.80 cegger #define MII_STR_xxBROADCOM_ALT1_BCM5906 "BCM5906 10/100baseTX media interface"
269 1.64 soren
270 1.58 jdolecek /* Cicada Semiconductor PHYs (now owned by Vitesse?) */
271 1.58 jdolecek #define MII_MODEL_CICADA_CS8201 0x0001
272 1.58 jdolecek #define MII_STR_CICADA_CS8201 "Cicada CS8201 10/100/1000TX PHY"
273 1.86 cegger #define MII_MODEL_CICADA_CS8204 0x0004
274 1.86 cegger #define MII_STR_CICADA_CS8204 "Cicada CS8204 10/100/1000TX PHY"
275 1.86 cegger #define MII_MODEL_CICADA_VSC8211 0x000b
276 1.86 cegger #define MII_STR_CICADA_VSC8211 "Cicada VSC8211 10/100/1000TX PHY"
277 1.58 jdolecek #define MII_MODEL_CICADA_CS8201A 0x0020
278 1.58 jdolecek #define MII_STR_CICADA_CS8201A "Cicada CS8201 10/100/1000TX PHY"
279 1.58 jdolecek #define MII_MODEL_CICADA_CS8201B 0x0021
280 1.58 jdolecek #define MII_STR_CICADA_CS8201B "Cicada CS8201 10/100/1000TX PHY"
281 1.110 matt #define MII_MODEL_xxCICADA_VSC8221 0x0015
282 1.110 matt #define MII_STR_xxCICADA_VSC8221 "Vitesse VSC8221 10/100/1000BASE-T PHY"
283 1.104 matt #define MII_MODEL_xxCICADA_VSC8244 0x002c
284 1.104 matt #define MII_STR_xxCICADA_VSC8244 "Vitesse VSC8244 Quad 10/100/1000BASE-T PHY"
285 1.60 briggs #define MII_MODEL_xxCICADA_CS8201B 0x0021
286 1.60 briggs #define MII_STR_xxCICADA_CS8201B "Cicada CS8201 10/100/1000TX PHY"
287 1.58 jdolecek
288 1.4 thorpej /* Davicom Semiconductor PHYs */
289 1.39 drochner /* AMD Am79C873 seems to be a relabeled DM9101 */
290 1.6 drochner #define MII_MODEL_xxDAVICOM_DM9101 0x0000
291 1.39 drochner #define MII_STR_xxDAVICOM_DM9101 "DM9101 (AMD Am79C873) 10/100 media interface"
292 1.62 kiyohara #define MII_MODEL_xxDAVICOM_DM9102 0x0004
293 1.62 kiyohara #define MII_STR_xxDAVICOM_DM9102 "DM9102 10/100 media interface"
294 1.1 thorpej
295 1.67 chs /* IC Plus Corp. PHYs */
296 1.119 msaitoh #define MII_MODEL_ICPLUS_IP100 0x0004
297 1.119 msaitoh #define MII_STR_ICPLUS_IP100 "IP100 10/100 PHY"
298 1.67 chs #define MII_MODEL_ICPLUS_IP101 0x0005
299 1.67 chs #define MII_STR_ICPLUS_IP101 "IP101 10/100 PHY"
300 1.119 msaitoh #define MII_MODEL_ICPLUS_IP1000A 0x0008
301 1.119 msaitoh #define MII_STR_ICPLUS_IP1000A "IP1000A 10/100/1000 PHY"
302 1.119 msaitoh #define MII_MODEL_ICPLUS_IP1001 0x0019
303 1.119 msaitoh #define MII_STR_ICPLUS_IP1001 "IP1001 10/100/1000 PHY"
304 1.67 chs
305 1.1 thorpej /* Integrated Circuit Systems PHYs */
306 1.48 msaitoh #define MII_MODEL_ICS_1889 0x0001
307 1.48 msaitoh #define MII_STR_ICS_1889 "ICS1889 10/100 media interface"
308 1.15 drochner #define MII_MODEL_ICS_1890 0x0002
309 1.15 drochner #define MII_STR_ICS_1890 "ICS1890 10/100 media interface"
310 1.48 msaitoh #define MII_MODEL_ICS_1892 0x0003
311 1.48 msaitoh #define MII_STR_ICS_1892 "ICS1892 10/100 media interface"
312 1.34 wiz #define MII_MODEL_ICS_1893 0x0004
313 1.34 wiz #define MII_STR_ICS_1893 "ICS1893 10/100 media interface"
314 1.1 thorpej
315 1.1 thorpej /* Intel PHYs */
316 1.7 soren #define MII_MODEL_xxINTEL_I82553 0x0000
317 1.7 soren #define MII_STR_xxINTEL_I82553 "i82553 10/100 media interface"
318 1.15 drochner #define MII_MODEL_yyINTEL_I82555 0x0015
319 1.15 drochner #define MII_STR_yyINTEL_I82555 "i82555 10/100 media interface"
320 1.16 drochner #define MII_MODEL_yyINTEL_I82562EH 0x0017
321 1.16 drochner #define MII_STR_yyINTEL_I82562EH "i82562EH HomePNA interface"
322 1.70 cube #define MII_MODEL_yyINTEL_I82562G 0x0031
323 1.70 cube #define MII_STR_yyINTEL_I82562G "i82562G 10/100 media interface"
324 1.16 drochner #define MII_MODEL_yyINTEL_I82562EM 0x0032
325 1.16 drochner #define MII_STR_yyINTEL_I82562EM "i82562EM 10/100 media interface"
326 1.20 soren #define MII_MODEL_yyINTEL_I82562ET 0x0033
327 1.20 soren #define MII_STR_yyINTEL_I82562ET "i82562ET 10/100 media interface"
328 1.15 drochner #define MII_MODEL_yyINTEL_I82553 0x0035
329 1.15 drochner #define MII_STR_yyINTEL_I82553 "i82553 10/100 media interface"
330 1.128 msaitoh #define MII_MODEL_yyINTEL_IGP01E1000 0x0038
331 1.128 msaitoh #define MII_STR_yyINTEL_IGP01E1000 "Intel IGP01E1000 Gigabit PHY"
332 1.75 msaitoh #define MII_MODEL_yyINTEL_I82566 0x0039
333 1.75 msaitoh #define MII_STR_yyINTEL_I82566 "i82566 10/100/1000 media interface"
334 1.100 christos #define MII_MODEL_INTEL_I82577 0x0005
335 1.100 christos #define MII_STR_INTEL_I82577 "i82577 10/100/1000 media interface"
336 1.103 msaitoh #define MII_MODEL_INTEL_I82579 0x0009
337 1.103 msaitoh #define MII_STR_INTEL_I82579 "i82579 10/100/1000 media interface"
338 1.118 msaitoh #define MII_MODEL_INTEL_I217 0x000a
339 1.118 msaitoh #define MII_STR_INTEL_I217 "i217 10/100/1000 media interface"
340 1.130 msaitoh #define MII_MODEL_INTEL_X540 0x0020
341 1.130 msaitoh #define MII_STR_INTEL_X540 "X540 100M/1G/10G media interface"
342 1.129 msaitoh #define MII_MODEL_INTEL_X550 0x0022
343 1.129 msaitoh #define MII_STR_INTEL_X550 "X550 100M/1G/10G media interface"
344 1.129 msaitoh #define MII_MODEL_INTEL_X557 0x0024
345 1.129 msaitoh #define MII_STR_INTEL_X557 "X557 100M/1G/10G media interface"
346 1.128 msaitoh #define MII_MODEL_INTEL_I82580 0x003a
347 1.128 msaitoh #define MII_STR_INTEL_I82580 "82580 10/100/1000 media interface"
348 1.128 msaitoh #define MII_MODEL_INTEL_I350 0x003b
349 1.128 msaitoh #define MII_STR_INTEL_I350 "I350 10/100/1000 media interface"
350 1.117 msaitoh #define MII_MODEL_xxMARVELL_I210 0x0000
351 1.117 msaitoh #define MII_STR_xxMARVELL_I210 "I210 10/100/1000 media interface"
352 1.71 bouyer #define MII_MODEL_xxMARVELL_I82563 0x000a
353 1.71 bouyer #define MII_STR_xxMARVELL_I82563 "i82563 10/100/1000 media interface"
354 1.128 msaitoh #define MII_MODEL_ATHEROS_I82578 0x0004
355 1.128 msaitoh #define MII_STR_ATHEROS_I82578 "Intel 82578 10/100/1000 media interface"
356 1.51 fvdl
357 1.1 thorpej
358 1.81 bouyer /* JMicron PHYs */
359 1.81 bouyer #define MII_MODEL_JMICRON_JMC250 0x0021
360 1.81 bouyer #define MII_STR_JMICRON_JMC250 "JMC250 10/100/1000 media interface"
361 1.81 bouyer #define MII_MODEL_JMICRON_JMC260 0x0022
362 1.81 bouyer #define MII_STR_JMICRON_JMC260 "JMC260 10/100 media interface"
363 1.81 bouyer
364 1.1 thorpej /* Level 1 PHYs */
365 1.6 drochner #define MII_MODEL_xxLEVEL1_LXT970 0x0000
366 1.6 drochner #define MII_STR_xxLEVEL1_LXT970 "LXT970 10/100 media interface"
367 1.35 chs #define MII_MODEL_LEVEL1_LXT971 0x000e
368 1.53 matt #define MII_STR_LEVEL1_LXT971 "LXT971/2 10/100 media interface"
369 1.53 matt #define MII_MODEL_LEVEL1_LXT973 0x0021
370 1.53 matt #define MII_STR_LEVEL1_LXT973 "LXT973 10/100 Dual PHY"
371 1.53 matt #define MII_MODEL_LEVEL1_LXT974 0x0004
372 1.53 matt #define MII_STR_LEVEL1_LXT974 "LXT974 10/100 Quad PHY"
373 1.53 matt #define MII_MODEL_LEVEL1_LXT975 0x0005
374 1.53 matt #define MII_STR_LEVEL1_LXT975 "LXT975 10/100 Quad PHY"
375 1.25 thorpej #define MII_MODEL_LEVEL1_LXT1000_OLD 0x0003
376 1.25 thorpej #define MII_STR_LEVEL1_LXT1000_OLD "LXT1000 1000BASE-T media interface"
377 1.25 thorpej #define MII_MODEL_LEVEL1_LXT1000 0x000c
378 1.25 thorpej #define MII_STR_LEVEL1_LXT1000 "LXT1000 1000BASE-T media interface"
379 1.1 thorpej
380 1.22 thorpej /* Marvell Semiconductor PHYs */
381 1.122 christos #define MII_MODEL_xxMARVELL_E1000 0x0000
382 1.122 christos #define MII_STR_xxMARVELL_E1000 "Marvell 88E1000 Gigabit PHY"
383 1.41 fvdl #define MII_MODEL_xxMARVELL_E1011 0x0002
384 1.41 fvdl #define MII_STR_xxMARVELL_E1011 "Marvell 88E1011 Gigabit PHY"
385 1.33 thorpej #define MII_MODEL_xxMARVELL_E1000_3 0x0003
386 1.33 thorpej #define MII_STR_xxMARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY"
387 1.122 christos #define MII_MODEL_xxMARVELL_E1000S 0x0004
388 1.122 christos #define MII_STR_xxMARVELL_E1000S "Marvell 88E1000S Gigabit PHY"
389 1.33 thorpej #define MII_MODEL_xxMARVELL_E1000_5 0x0005
390 1.33 thorpej #define MII_STR_xxMARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY"
391 1.122 christos #define MII_MODEL_xxMARVELL_E1101 0x0006
392 1.122 christos #define MII_STR_xxMARVELL_E1101 "Marvell 88E1101 Gigabit PHY"
393 1.122 christos #define MII_MODEL_xxMARVELL_E3082 0x0008
394 1.122 christos #define MII_STR_xxMARVELL_E3082 "Marvell 88E3082 10/100 Fast Ethernet PHY"
395 1.122 christos #define MII_MODEL_xxMARVELL_E1112 0x0009
396 1.122 christos #define MII_STR_xxMARVELL_E1112 "Marvell 88E1112 Gigabit PHY"
397 1.93 enami #define MII_MODEL_xxMARVELL_E1149 0x000b
398 1.93 enami #define MII_STR_xxMARVELL_E1149 "Marvell 88E1149 Gigabit PHY"
399 1.61 briggs #define MII_MODEL_xxMARVELL_E1111 0x000c
400 1.61 briggs #define MII_STR_xxMARVELL_E1111 "Marvell 88E1111 Gigabit PHY"
401 1.101 matt #define MII_MODEL_xxMARVELL_E1145 0x000d
402 1.101 matt #define MII_STR_xxMARVELL_E1145 "Marvell 88E1145 Quad Gigabit PHY"
403 1.126 matt #define MII_MODEL_xxMARVELL_E6060 0x0010
404 1.126 matt #define MII_STR_xxMARVELL_E6060 "Marvell 88E6060 6-Port 10/100 Fast Ethernet Switch"
405 1.128 msaitoh #define MII_MODEL_xxMARVELL_I347 0x001c
406 1.128 msaitoh #define MII_STR_xxMARVELL_I347 "Intel I347-AT4 Gigabit PHY"
407 1.127 knakahar #define MII_MODEL_xxMARVELL_E1512 0x001d
408 1.132 msaitoh #define MII_STR_xxMARVELL_E1512 "Marvell 88E151[0248] Gigabit PHY"
409 1.128 msaitoh #define MII_MODEL_xxMARVELL_E1340M 0x001f
410 1.128 msaitoh #define MII_STR_xxMARVELL_E1340M "Marvell 88E1340 Gigabit PHY"
411 1.77 wiz #define MII_MODEL_xxMARVELL_E1116 0x0021
412 1.77 wiz #define MII_STR_xxMARVELL_E1116 "Marvell 88E1116 Gigabit PHY"
413 1.122 christos #define MII_MODEL_xxMARVELL_E1118 0x0022
414 1.122 christos #define MII_STR_xxMARVELL_E1118 "Marvell 88E1118 Gigabit PHY"
415 1.136 msaitoh #define MII_MODEL_xxMARVELL_E1240 0x0023
416 1.136 msaitoh #define MII_STR_xxMARVELL_E1240 "Marvell 88E1240 Gigabit PHY"
417 1.90 rjs #define MII_MODEL_xxMARVELL_E1116R 0x0024
418 1.90 rjs #define MII_STR_xxMARVELL_E1116R "Marvell 88E1116R Gigabit PHY"
419 1.122 christos #define MII_MODEL_xxMARVELL_E1149R 0x0025
420 1.122 christos #define MII_STR_xxMARVELL_E1149R "Marvell 88E1149R Quad Gigabit PHY"
421 1.122 christos #define MII_MODEL_xxMARVELL_E3016 0x0026
422 1.122 christos #define MII_STR_xxMARVELL_E3016 "Marvell 88E3016 10/100 Fast Ethernet PHY"
423 1.122 christos #define MII_MODEL_xxMARVELL_PHYG65G 0x0027
424 1.122 christos #define MII_STR_xxMARVELL_PHYG65G "Marvell PHYG65G Gigabit PHY"
425 1.136 msaitoh #define MII_MODEL_xxMARVELL_E1318S 0x0029
426 1.136 msaitoh #define MII_STR_xxMARVELL_E1318S "Marvell 88E1318S Gigabit PHY"
427 1.120 kiyohara #define MII_MODEL_xxMARVELL_E1543 0x002a
428 1.135 msaitoh #define MII_STR_xxMARVELL_E1543 "Marvell 88E154[358] Alaska Quad Port Gb PHY"
429 1.131 jdolecek #define MII_MODEL_MARVELL_E1000_0 0x0000
430 1.131 jdolecek #define MII_STR_MARVELL_E1000_0 "Marvell 88E1000 Gigabit PHY"
431 1.122 christos #define MII_MODEL_MARVELL_E1011 0x0002
432 1.122 christos #define MII_STR_MARVELL_E1011 "Marvell 88E1011 Gigabit PHY"
433 1.122 christos #define MII_MODEL_MARVELL_E1000_3 0x0003
434 1.122 christos #define MII_STR_MARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY"
435 1.122 christos #define MII_MODEL_MARVELL_E1000_5 0x0005
436 1.122 christos #define MII_STR_MARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY"
437 1.131 jdolecek #define MII_MODEL_MARVELL_E1000_6 0x0006
438 1.131 jdolecek #define MII_STR_MARVELL_E1000_6 "Marvell 88E1000 Gigabit PHY"
439 1.122 christos #define MII_MODEL_MARVELL_E1111 0x000c
440 1.122 christos #define MII_STR_MARVELL_E1111 "Marvell 88E1111 Gigabit PHY"
441 1.22 thorpej
442 1.121 ozaki /* Micrel PHYs */
443 1.121 ozaki #define MII_MODEL_MICREL_KSZ9021RNI 0x0021
444 1.121 ozaki #define MII_STR_MICREL_KSZ9021RNI "Micrel KSZ9021RNI 10/100/1000 PHY"
445 1.121 ozaki
446 1.12 augustss /* Myson Technology PHYs */
447 1.15 drochner #define MII_MODEL_xxMYSON_MTD972 0x0000
448 1.15 drochner #define MII_STR_xxMYSON_MTD972 "MTD972 10/100 media interface"
449 1.42 martin #define MII_MODEL_MYSON_MTD803 0x0000
450 1.42 martin #define MII_STR_MYSON_MTD803 "MTD803 3-in-1 media interface"
451 1.12 augustss
452 1.1 thorpej /* National Semiconductor PHYs */
453 1.15 drochner #define MII_MODEL_xxNATSEMI_DP83840 0x0000
454 1.15 drochner #define MII_STR_xxNATSEMI_DP83840 "DP83840 10/100 media interface"
455 1.15 drochner #define MII_MODEL_xxNATSEMI_DP83843 0x0001
456 1.15 drochner #define MII_STR_xxNATSEMI_DP83843 "DP83843 10/100 media interface"
457 1.22 thorpej #define MII_MODEL_xxNATSEMI_DP83815 0x0002
458 1.134 msaitoh #define MII_STR_xxNATSEMI_DP83815 "DP83815/DP83846A 10/100 media interface"
459 1.66 thorpej #define MII_MODEL_xxNATSEMI_DP83847 0x0003
460 1.68 wiz #define MII_STR_xxNATSEMI_DP83847 "DP83847 10/100 media interface"
461 1.21 thorpej #define MII_MODEL_xxNATSEMI_DP83891 0x0005
462 1.25 thorpej #define MII_STR_xxNATSEMI_DP83891 "DP83891 1000BASE-T media interface"
463 1.17 thorpej #define MII_MODEL_xxNATSEMI_DP83861 0x0006
464 1.25 thorpej #define MII_STR_xxNATSEMI_DP83861 "DP83861 1000BASE-T media interface"
465 1.94 jdc #define MII_MODEL_xxNATSEMI_DP83865 0x0007
466 1.94 jdc #define MII_STR_xxNATSEMI_DP83865 "DP83865 1000BASE-T media interface"
467 1.108 jakllsch #define MII_MODEL_xxNATSEMI_DP83849 0x000a
468 1.108 jakllsch #define MII_STR_xxNATSEMI_DP83849 "DP83849 10/100 media interface"
469 1.18 matt
470 1.19 drochner /* PMC Sierra PHYs */
471 1.19 drochner #define MII_MODEL_xxPMCSIERRA_PM8351 0x0000
472 1.19 drochner #define MII_STR_xxPMCSIERRA_PM8351 "PM8351 OctalPHY Gigabit interface"
473 1.37 matt #define MII_MODEL_xxPMCSIERRA2_PM8352 0x0002
474 1.37 matt #define MII_STR_xxPMCSIERRA2_PM8352 "PM8352 OctalPHY Gigabit interface"
475 1.36 matt #define MII_MODEL_xxPMCSIERRA2_PM8353 0x0003
476 1.36 matt #define MII_STR_xxPMCSIERRA2_PM8353 "PM8353 QuadPHY Gigabit interface"
477 1.37 matt #define MII_MODEL_PMCSIERRA_PM8354 0x0004
478 1.37 matt #define MII_STR_PMCSIERRA_PM8354 "PM8354 QuadPHY Gigabit interface"
479 1.1 thorpej
480 1.1 thorpej /* Quality Semiconductor PHYs */
481 1.15 drochner #define MII_MODEL_xxQUALSEMI_QS6612 0x0000
482 1.15 drochner #define MII_STR_xxQUALSEMI_QS6612 "QS6612 10/100 media interface"
483 1.1 thorpej
484 1.102 bouyer /* RDC Semiconductor PHYs */
485 1.102 bouyer #define MII_MODEL_RDC_R6040 0x0003
486 1.102 bouyer #define MII_STR_RDC_R6040 "R6040 10/100 media interface"
487 1.56 jonathan /* RealTek PHYs */
488 1.65 xtraeme #define MII_MODEL_yyREALTEK_RTL8201L 0x0020
489 1.65 xtraeme #define MII_STR_yyREALTEK_RTL8201L "RTL8201L 10/100 media interface"
490 1.56 jonathan #define MII_MODEL_xxREALTEK_RTL8169S 0x0011
491 1.76 tsutsui #define MII_STR_xxREALTEK_RTL8169S "RTL8169S/8110S/8211 1000BASE-T media interface"
492 1.125 riz #define MII_MODEL_REALTEK_RTL8251 0x0000
493 1.125 riz #define MII_STR_REALTEK_RTL8251 "RTL8251 1000BASE-T media interface"
494 1.56 jonathan #define MII_MODEL_REALTEK_RTL8169S 0x0011
495 1.76 tsutsui #define MII_STR_REALTEK_RTL8169S "RTL8169S/8110S/8211 1000BASE-T media interface"
496 1.56 jonathan
497 1.1 thorpej /* Seeq PHYs */
498 1.15 drochner #define MII_MODEL_SEEQ_80220 0x0003
499 1.15 drochner #define MII_STR_SEEQ_80220 "Seeq 80220 10/100 media interface"
500 1.15 drochner #define MII_MODEL_SEEQ_84220 0x0004
501 1.15 drochner #define MII_STR_SEEQ_84220 "Seeq 84220 10/100 media interface"
502 1.23 thorpej #define MII_MODEL_SEEQ_80225 0x0008
503 1.23 thorpej #define MII_STR_SEEQ_80225 "Seeq 80225 10/100 media interface"
504 1.5 thorpej
505 1.5 thorpej /* Silicon Integrated Systems PHYs */
506 1.15 drochner #define MII_MODEL_SIS_900 0x0000
507 1.15 drochner #define MII_STR_SIS_900 "SiS 900 10/100 media interface"
508 1.1 thorpej
509 1.113 jakllsch /* SMSC PHYs */
510 1.113 jakllsch #define MII_MODEL_SMSC_LAN8700 0x000c
511 1.114 jakllsch #define MII_STR_SMSC_LAN8700 "SMSC LAN8700 10/100 Ethernet Transceiver"
512 1.113 jakllsch #define MII_MODEL_SMSC_LAN8710_LAN8720 0x000f
513 1.114 jakllsch #define MII_STR_SMSC_LAN8710_LAN8720 "SMSC LAN8710/LAN8720 10/100 Ethernet Transceiver"
514 1.113 jakllsch
515 1.1 thorpej /* Texas Instruments PHYs */
516 1.15 drochner #define MII_MODEL_TI_TLAN10T 0x0001
517 1.25 thorpej #define MII_STR_TI_TLAN10T "ThunderLAN 10BASE-T media interface"
518 1.15 drochner #define MII_MODEL_TI_100VGPMI 0x0002
519 1.15 drochner #define MII_STR_TI_100VGPMI "ThunderLAN 100VG-AnyLan media interface"
520 1.15 drochner #define MII_MODEL_TI_TNETE2101 0x0003
521 1.15 drochner #define MII_STR_TI_TNETE2101 "TNETE2101 media interface"
522 1.7 soren
523 1.7 soren /* TDK Semiconductor PHYs */
524 1.15 drochner #define MII_MODEL_xxTSC_78Q2120 0x0014
525 1.15 drochner #define MII_STR_xxTSC_78Q2120 "78Q2120 10/100 media interface"
526 1.15 drochner #define MII_MODEL_xxTSC_78Q2121 0x0015
527 1.25 thorpej #define MII_STR_xxTSC_78Q2121 "78Q2121 100BASE-TX media interface"
528 1.12 augustss
529 1.12 augustss /* XaQti Corp. PHYs */
530 1.15 drochner #define MII_MODEL_xxXAQTI_XMACII 0x0000
531 1.15 drochner #define MII_STR_xxXAQTI_XMACII "XaQti Corp. XMAC II gigabit interface"
532