Allow the AMD PHY driver to support the DM9101 PHY. The DM9101 and the
AMD AM79c873 have identical registers. I'm not sure why; one is probably a clone of the other.
This commit is contained in:
parent
eb0519dbda
commit
2d8fad26b3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=51428
@ -34,6 +34,8 @@
|
||||
|
||||
/*
|
||||
* driver for AMD AM79c873 PHYs
|
||||
* This driver also works for the Davicom DM9101 PHY, which appears to
|
||||
* be an AM79c873 workalike.
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -92,11 +94,16 @@ static int amphy_probe(dev)
|
||||
|
||||
ma = device_get_ivars(dev);
|
||||
|
||||
if (MII_OUI(ma->mii_id1, ma->mii_id2) != MII_OUI_xxAMD ||
|
||||
MII_MODEL(ma->mii_id2) != MII_MODEL_xxAMD_79C873)
|
||||
if ((MII_OUI(ma->mii_id1, ma->mii_id2) != MII_OUI_xxAMD ||
|
||||
MII_MODEL(ma->mii_id2) != MII_MODEL_xxAMD_79C873) &&
|
||||
(MII_OUI(ma->mii_id1, ma->mii_id2) != MII_OUI_xxDAVICOM ||
|
||||
MII_MODEL(ma->mii_id2) != MII_MODEL_xxDAVICOM_DM9101))
|
||||
return(ENXIO);
|
||||
|
||||
device_set_desc(dev, MII_STR_xxAMD_79C873);
|
||||
if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxAMD)
|
||||
device_set_desc(dev, MII_STR_xxAMD_79C873);
|
||||
else if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxDAVICOM)
|
||||
device_set_desc(dev, MII_STR_xxDAVICOM_DM9101);
|
||||
|
||||
return(0);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user