Luca and me in the Children’s zoo VI_poster
Jun 05
    Change language to:

We wrote a patch for OpenBSD 3.4 so that it supports the gigabit intel network card (82541MT) since it’s not yet supported there. After having some chats with Theo, Henning and Henric there was a notice that it’s supported in 3.5 now. Upon suggestion from Henric, i used the 3.5 kernel and it got detected there. If you do not wish to upgrade, you can find the patch here!



Common subdirectories: ./CVS and /usr/src/sys/dev/pci/CVS
Common subdirectories: ./bktr and /usr/src/sys/dev/pci/bktr
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       0×1012
 #define E1000_DEV_ID_82546EB_QUAD_COPPER 0×101D
 #define E1000_DEV_ID_82541EI             0×1013
+#define E1000_DEV_ID_82541MT             0×1076
 #define E1000_DEV_ID_82541EP             0×1018
 #define E1000_DEV_ID_82547EI             0×1019
 #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      0×1016  PRO/1000 (82540EP LOM)
 product INTEL 82540EP          0×1017  PRO/1000 (82540EP)
 product INTEL 82541EP          0×1018  PRO/1000 (82541EP)
+product INTEL 82541MT          0×1076  PRO/1000 (82541MT)
 product INTEL 82547EI          0×1019  PRO/1000 (82547EI)
 product INTEL 82546EB_QUAD     0×101d  PRO/1000 (82546EB_QUAD)
 product INTEL 82540EP_LP       0×101e  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    0×1011          /* PRO/1000MF (PWLA8490MF) */
 #define        PCI_PRODUCT_INTEL_82546EB_SC    0×1012          /* PRO/1000MF (PWLA8492MF) */
 #define        PCI_PRODUCT_INTEL_82541EI       0×1013          /* PRO/1000 (82541EI) */
+#define PCI_PRODUCT_INTEL_82541MT      0×1076          /* PRO/1000MT (82541MT) */
 #define        PCI_PRODUCT_INTEL_82540EM_LOM   0×1015          /* PRO/1000MT (LOM) */
 #define        PCI_PRODUCT_INTEL_82540EP_LOM   0×1016          /* PRO/1000 (82540EP LOM) */
 #define        PCI_PRODUCT_INTEL_82540EP       0×1017          /* 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)”,
        },

written by Remko

Leave a Reply