summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/mii/inphy.c31
-rw-r--r--sys/dev/mii/miidevs4
2 files changed, 20 insertions, 15 deletions
diff --git a/sys/dev/mii/inphy.c b/sys/dev/mii/inphy.c
index 79b40d28f77b..09bcd5a59447 100644
--- a/sys/dev/mii/inphy.c
+++ b/sys/dev/mii/inphy.c
@@ -87,20 +87,6 @@ inphy_probe(device_t dev)
ma = device_get_ivars(dev);
parent = device_get_parent(device_get_parent(dev));
- /* Intel 82555 */
- if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_INTEL &&
- MII_MODEL(ma->mii_id2) == MII_MODEL_INTEL_I82555) {
- device_set_desc(dev, MII_STR_INTEL_I82555);
- return (0);
- }
-
- /* Intel 82553 C stepping */
- if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_INTEL &&
- MII_MODEL(ma->mii_id2) == MII_MODEL_INTEL_I82553C) {
- device_set_desc(dev, MII_STR_INTEL_I82553C);
- return (0);
- }
-
/* Intel 82553 A/B steppings */
if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxINTEL &&
MII_MODEL(ma->mii_id2) == MII_MODEL_xxINTEL_I82553AB) {
@@ -108,6 +94,23 @@ inphy_probe(device_t dev)
return (0);
}
+ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_INTEL) {
+ switch (MII_MODEL(ma->mii_id2)) {
+ case MII_MODEL_INTEL_I82555:
+ device_set_desc(dev, MII_STR_INTEL_I82555);
+ return (0);
+ case MII_MODEL_INTEL_I82553C:
+ device_set_desc(dev, MII_STR_INTEL_I82553C);
+ return (0);
+ case MII_MODEL_INTEL_I82562EM:
+ device_set_desc(dev, MII_STR_INTEL_I82562EM);
+ return (0);
+ case MII_MODEL_INTEL_I82562ET:
+ device_set_desc(dev, MII_STR_INTEL_I82562ET);
+ return (0);
+ }
+ }
+
return (ENXIO);
}
diff --git a/sys/dev/mii/miidevs b/sys/dev/mii/miidevs
index 27221c84ff2c..1d20d86de285 100644
--- a/sys/dev/mii/miidevs
+++ b/sys/dev/mii/miidevs
@@ -113,8 +113,10 @@ model xxICS 1890 0x0002 ICS1890 10/100 media interface
/* Intel PHYs */
model xxINTEL I82553AB 0x0000 i83553 10/100 media interface
-model INTEL I82553C 0x0035 i82553 10/100 media interface
model INTEL I82555 0x0015 i82555 10/100 media interface
+model INTEL I82562EM 0x0032 i82562EM 10/100 media interface
+model INTEL I82562ET 0x0033 i82562ET 10/100 media interface
+model INTEL I82553C 0x0035 i82553 10/100 media interface
/* Level 1 PHYs */
model xxLEVEL1 LXT970 0x0000 LXT970 10/100 media interface