From f9b7742405b7ed0fea17ba0bfcb00a654e7201d7 Mon Sep 17 00:00:00 2001 From: "David E. O'Brien" Date: Sun, 12 Jan 2003 21:03:38 +0000 Subject: [PATCH] Partial support for the nVidia nForce2 chipset's on-board Broadcom/Altima PHY and 3com MAC. Specifications for the Altima PHY are available at: http://www.altimacom.com/products/ac101L.html Submitted by: Mikko S. Hyvarinen --- sys/dev/mii/acphy.c | 3 +++ sys/dev/mii/miidevs | 1 + sys/pci/if_xl.c | 2 ++ sys/pci/if_xlreg.h | 1 + 4 files changed, 7 insertions(+) diff --git a/sys/dev/mii/acphy.c b/sys/dev/mii/acphy.c index 731209aa124..42834f6825e 100644 --- a/sys/dev/mii/acphy.c +++ b/sys/dev/mii/acphy.c @@ -129,6 +129,9 @@ acphy_probe(dev) if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxALTIMA && MII_MODEL(ma->mii_id2) == MII_MODEL_xxALTIMA_AC101) { device_set_desc(dev, MII_STR_xxALTIMA_AC101); + } else if(MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxALTIMA && + MII_MODEL(ma->mii_id2) == MII_MODEL_xxALTIMA_AC101L) { + device_set_desc(dev, MII_STR_xxALTIMA_AC101L); } else return (ENXIO); diff --git a/sys/dev/mii/miidevs b/sys/dev/mii/miidevs index 82efd89bca6..3f3b7623b1c 100644 --- a/sys/dev/mii/miidevs +++ b/sys/dev/mii/miidevs @@ -98,6 +98,7 @@ oui xxDAVICOM 0x006040 Davicom Semiconductor /* Altima Communications PHYs */ model xxALTIMA AC101 0x0021 AC101 10/100 media interface +model xxALTIMA AC101L 0x0012 AC101L 10/100 media interface /* Advanced Micro Devices PHYs */ model xxAMD 79C873 0x0000 Am79C873 10/100 media interface diff --git a/sys/pci/if_xl.c b/sys/pci/if_xl.c index 4ac41347c04..181e6dcf84f 100644 --- a/sys/pci/if_xl.c +++ b/sys/pci/if_xl.c @@ -183,6 +183,8 @@ static struct xl_type xl_devs[] = { "3Com 3c905B-COMBO Fast Etherlink XL" }, { TC_VENDORID, TC_DEVICEID_TORNADO_10_100BT, "3Com 3c905C-TX Fast Etherlink XL" }, + { TC_VENDORID, TC_DEVICEID_TORNADO_10_100BT_NVIDIA, + "3Com 3c905C-TX on nVidia nForce2 chipset" }, { TC_VENDORID, TC_DEVICEID_HURRICANE_10_100BT_SERV, "3Com 3c980 Fast Etherlink XL" }, { TC_VENDORID, TC_DEVICEID_TORNADO_10_100BT_SERV, diff --git a/sys/pci/if_xlreg.h b/sys/pci/if_xlreg.h index 2092853d0cf..4f08afb7e24 100644 --- a/sys/pci/if_xlreg.h +++ b/sys/pci/if_xlreg.h @@ -676,6 +676,7 @@ struct xl_stats { #define TC_DEVICEID_CYCLONE_10_100_COMBO 0x9058 #define TC_DEVICEID_CYCLONE_10_100FX 0x905A #define TC_DEVICEID_TORNADO_10_100BT 0x9200 +#define TC_DEVICEID_TORNADO_10_100BT_NVIDIA 0x9201 #define TC_DEVICEID_HURRICANE_10_100BT_SERV 0x9800 #define TC_DEVICEID_TORNADO_10_100BT_SERV 0x9805 #define TC_DEVICEID_HURRICANE_SOHO100TX 0x7646