[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
OpenBSD 3.4 EM driver does not recognise INTEL_82541MT
Hello,
Recently i bought a INTEL_82541MT 1gb network card, but it was not
recognized on my OpenBSD 3.4 machine (installed from cd).
I Updated the sources but there were no new drivers attached.
Looking at the current list, there is also nothing being mentioned about
the INTEL_82541MT card. Therefor i decided to patch it myself.
Below is the patch i used, very simple but it works, perhaps you want to
adopt it to support this network card also :-)
Cheers
diff ./if_em.c /usr/src/sys/dev/pci/if_em.c
--- ./if_em.c Sat Aug 23 20:52:18 2003
+++ /usr/src/sys/dev/pci/if_em.c Tue Feb 24 19:26:53 2004
@@ -117,6 +117,7 @@
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82545EM_SC },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82546EB_SC },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82541EI },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82541MT },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82540EM_LOM },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82540EP_LOM },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82540EP },
diff ./if_em_hw.c /usr/src/sys/dev/pci/if_em_hw.c
--- ./if_em_hw.c Fri Jun 13 21:21:21 2003
+++ /usr/src/sys/dev/pci/if_em_hw.c Tue Feb 24 19:27:16 2004
@@ -235,6 +235,9 @@
hw->mac_type = em_82546;
break;
case E1000_DEV_ID_82541EI:
+ case E1000_DEV_ID_82541MT:
+ hw->mac_type = em_82541;
+ break;
case E1000_DEV_ID_82541EP:
hw->mac_type = em_82541;
break;
@@ -3856,6 +3859,7 @@
case E1000_DEV_ID_82546EB_COPPER:
case E1000_DEV_ID_82546EB_QUAD_COPPER:
case E1000_DEV_ID_82541EI:
+ case E1000_DEV_ID_82541MT:
case E1000_DEV_ID_82541EP:
case E1000_DEV_ID_82547EI:
E1000_WRITE_REG(hw, LEDCTL, hw->ledctl_mode1);
@@ -3898,6 +3902,7 @@
case E1000_DEV_ID_82546EB_FIBER:
case E1000_DEV_ID_82546EB_QUAD_COPPER:
case E1000_DEV_ID_82541EI:
+ case E1000_DEV_ID_82541MT:
case E1000_DEV_ID_82541EP:
case E1000_DEV_ID_82547EI:
/* Restore LEDCTL settings */
@@ -3953,6 +3958,7 @@
case E1000_DEV_ID_82546EB_COPPER:
case E1000_DEV_ID_82546EB_QUAD_COPPER:
case E1000_DEV_ID_82541EI:
+ case E1000_DEV_ID_82541MT:
case E1000_DEV_ID_82541EP:
case E1000_DEV_ID_82547EI:
E1000_WRITE_REG(hw, LEDCTL, hw->ledctl_mode2);
@@ -4007,6 +4013,7 @@
case E1000_DEV_ID_82546EB_COPPER:
case E1000_DEV_ID_82546EB_QUAD_COPPER:
case E1000_DEV_ID_82541EI:
+ case E1000_DEV_ID_82541MT:
case E1000_DEV_ID_82541EP:
case E1000_DEV_ID_82547EI:
E1000_WRITE_REG(hw, LEDCTL, hw->ledctl_mode1);
diff ./if_em_hw.h /usr/src/sys/dev/pci/if_em_hw.h
--- ./if_em_hw.h Fri Jun 13 21:21:21 2003
+++ /usr/src/sys/dev/pci/if_em_hw.h Tue Feb 24 19:27:24 2004
@@ -323,6 +323,7 @@
#define E1000_DEV_ID_82546EB_FIBER 0x1012
#define E1000_DEV_ID_82546EB_QUAD_COPPER 0x101D
#define E1000_DEV_ID_82541EI 0x1013
+#define E1000_DEV_ID_82541MT 0x1076
#define E1000_DEV_ID_82541EP 0x1018
#define E1000_DEV_ID_82547EI 0x1019
#define NUM_DEV_IDS 20
diff ./pcidevs /usr/src/sys/dev/pci/pcidevs
--- ./pcidevs Wed Sep 3 23:23:16 2003
+++ /usr/src/sys/dev/pci/pcidevs Fri Feb 20 18:31:35 2004
@@ -1115,6 +1115,7 @@
product INTEL 82540EP_LOM 0x1016 PRO/1000 (82540EP LOM)
product INTEL 82540EP 0x1017 PRO/1000 (82540EP)
product INTEL 82541EP 0x1018 PRO/1000 (82541EP)
+product INTEL 82541MT 0x1076 PRO/1000 (82541MT)
product INTEL 82547EI 0x1019 PRO/1000 (82547EI)
product INTEL 82546EB_QUAD 0x101d PRO/1000 (82546EB_QUAD)
product INTEL 82540EP_LP 0x101e PRO/1000 (82540EP LP)
diff ./pcidevs.h /usr/src/sys/dev/pci/pcidevs.h
--- ./pcidevs.h Wed Sep 3 23:24:28 2003
+++ /usr/src/sys/dev/pci/pcidevs.h Tue Feb 24 19:27:44 2004
@@ -1116,6 +1116,7 @@
#define PCI_PRODUCT_INTEL_82545EM_SC 0x1011 /*
PRO/1000MF (PWLA8490MF) */
#define PCI_PRODUCT_INTEL_82546EB_SC 0x1012 /*
PRO/1000MF (PWLA8492MF) */
#define PCI_PRODUCT_INTEL_82541EI 0x1013 /*
PRO/1000 (82541EI) */
+#define PCI_PRODUCT_INTEL_82541MT 0x1076 /* PRO/1000MT
(82541MT) */
#define PCI_PRODUCT_INTEL_82540EM_LOM 0x1015 /*
PRO/1000MT (LOM) */
#define PCI_PRODUCT_INTEL_82540EP_LOM 0x1016 /*
PRO/1000 (82540EP LOM) */
#define PCI_PRODUCT_INTEL_82540EP 0x1017 /*
PRO/1000 (82540EP) */
diff ./pcidevs_data.h /usr/src/sys/dev/pci/pcidevs_data.h
--- ./pcidevs_data.h Wed Sep 3 23:24:28 2003
+++ /usr/src/sys/dev/pci/pcidevs_data.h Tue Feb 24 19:27:54 2004
@@ -2691,6 +2691,10 @@
"PRO/1000 (82541EI)",
},
{
+ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82541MT,
+ "PRO/1000 (82541MT)",
+ },
+ {
PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82540EM_LOM,
"PRO/1000MT (LOM)",
},
--
--
Kind regards,
Remko Lodder
Elvandar.org/DSINet.org
www.mostly-harmless.nl Dutch community for helping newcomers on the
hackerscene