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:
