Hi,

This is just a hack, my first one too. But does seem to work in my
initial tests. I've just added the DEVICE ID and a few "case xxx:".

It is for the Intel 82583V GbE Controller [1], fitted in a small Atom
Pineview-M appliance kind of machine, CAD-0205 [2].

Any way, thought I'd share it; as I said, works for me but I have _no_
idea if it's DoneRight [tm].

[1] http://download.intel.com/design/network/datashts/322114.pdf
[2] http://www.portwell.com/products/detail.asp?CUSTCHAR1=CAD-0205

Regards,
Pontus


Excluding the rebuilt pcidevs headers, not sure what the procedure is.

Index: pcidevs
===================================================================
RCS file: /cvs/src/sys/dev/pci/pcidevs,v
retrieving revision 1.1552
diff -u -r1.1552 pcidevs
--- pcidevs     12 May 2010 16:18:12 -0000      1.1552
+++ pcidevs     12 May 2010 18:22:23 -0000
@@ -2404,6 +2404,7 @@
 product INTEL 82599_SFP_EM     0x1507  10GbE SFP EM (82599)
 product INTEL 82598_BX         0x1508  10GbE BX (82598)
 product INTEL 82576_NS         0x150a  PRO/1000 (82576NS)
+product INTEL 82583V           0x150c  PRO/1000 (82583V)
 product INTEL 82599_KX4_MEZZ   0x1514  10GbE KX4 (82599)
 product INTEL 80960RP_ATU      0x1960  80960RP ATU
 product INTEL 82840_HB         0x1a21  82840 Host
Index: if_em.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_em.c,v
retrieving revision 1.235
diff -u -r1.235 if_em.c
--- if_em.c     16 Mar 2010 22:48:43 -0000      1.235
+++ if_em.c     12 May 2010 18:22:24 -0000
@@ -126,6 +126,7 @@
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82576_SERDES },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82576_QUAD_COPPER },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82576_NS },
+       { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82583V },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_IFE },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_IFE_G },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_IFE_GT },
@@ -395,6 +396,7 @@
                        break;
                case em_82542_rev2_0:
                case em_82542_rev2_1:
+               case em_82583:
                case em_ich8lan:
                        /* Adapters that do not support Jumbo frames */
                        sc->hw.max_frame_size = ETHER_MAX_LEN;
@@ -748,6 +750,7 @@
                pba = E1000_PBA_12K; /* 12K for Rx, 20K for Tx */
                break;
        case em_82574: /* Total Packet Buffer is 40k */
+       case em_82583:
                pba = E1000_PBA_30K; /* 30K for Rx, 10K for Tx */
                break;
        case em_ich8lan:
Index: if_em_hw.h
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_em_hw.h,v
retrieving revision 1.36
diff -u -r1.36 if_em_hw.h
--- if_em_hw.h  2 Mar 2010 22:09:57 -0000       1.36
+++ if_em_hw.h  12 May 2010 18:22:25 -0000
@@ -70,6 +70,7 @@
     em_82573,
     em_82574,
     em_82575,
+    em_82583,
     em_80003es2lan,
     em_ich8lan,
     em_ich9lan,
@@ -528,6 +529,7 @@
 #define E1000_DEV_ID_82576_SERDES       0x10E7
 #define E1000_DEV_ID_82576_QUAD_COPPER  0x10E8
 #define E1000_DEV_ID_82576_NS           0x150A
+#define E1000_DEV_ID_82583V             0x150C
 #define E1000_DEV_ID_82574L             0x10D3
 #define E1000_DEV_ID_EP80579_LAN_1      0x5040          /* EP80579 LAN */
 #define E1000_DEV_ID_EP80579_LAN_2      0x5044          /* EP80579 LAN */
Index: if_em_hw.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_em_hw.c,v
retrieving revision 1.46
diff -u -r1.46 if_em_hw.c
--- if_em_hw.c  2 Mar 2010 22:09:57 -0000       1.46
+++ if_em_hw.c  12 May 2010 18:22:29 -0000
@@ -456,6 +456,7 @@
                hw->mac_type = em_82573;
                break;
        case E1000_DEV_ID_82574L:
+       case E1000_DEV_ID_82583V:
                hw->mac_type = em_82574;
                break;
        case E1000_DEV_ID_82575EB_PT:

Reply via email to