Well, you'd ideally install a snapshot and check out the src tree as described here:
http://www.openbsd.org/faq/faq5.html#Bld apply the diff via patch before building a kernel. cd /usr/src/sys/dev/pci patch -p0 < /path/to/patch If that sounds a bit overwhelming I can perhaps build a snapshot with the change here over the weekend. The 'special casing' meaning some of the i354 specific code in the Intel driver in FreeBSD/Linux I have not included in the diff. On Fri, Feb 14, 2014 at 12:29:03AM -0600, Andrew Lester wrote: > Jonathan, > > Thanks for the reply (I also saw the update you sent). How would I make use > of that? > Simply use the install files from /pub/OpenBSD/snapshots/amd64 versus > /pub/OpenBSD/5.4/amd64? Could you elaborate what you mean by not handling > some of the special casing? Sorry, this is my first run with any sort of > BSD! > > Thanks, > Andrew > > -----Original Message----- > From: Jonathan Gray [mailto:[email protected]] > Sent: Friday, February 14, 2014 12:00 AM > To: Andrew Lester > Cc: [email protected] > Subject: Re: Support for Intel i354 Quad GbE network adapter? > > On Thu, Feb 13, 2014 at 11:30:14PM -0600, Andrew Lester wrote: > > Hi All, > > > > > > > > I tried to install OpenBSD 5.4 (amd64) on a PC using a Supermicro > > > > A1SRi-2758F motherboard which is based on the Intel Atom C2000 > > > > (Rangeley) platform, and has an integrated i354 Quad-port GbE > > > > network adapter. The installation was unable to detect any of the > > > > network interfaces. Is anybody aware of some sort of workaround for > > > > this problem? I tried to do a PXE install which is ironic because it > > > > was over one of the interfaces. At the network configuration part of > > > > the installation, it detected a "vlan0" interface which I was unable > > > > to configure. > > Here is a diff against -current that may work but doesn't handle some of the > i354 special casing: > > Index: if_em.c > =================================================================== > RCS file: /cvs/src/sys/dev/pci/if_em.c,v retrieving revision 1.275 diff -u > -p -r1.275 if_em.c > --- if_em.c 28 Dec 2013 03:34:54 -0000 1.275 > +++ if_em.c 14 Feb 2014 05:55:27 -0000 > @@ -144,6 +144,9 @@ const struct pci_matchid em_devices[] = > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I350_FIBER }, > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I350_SERDES }, > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I350_SGMII }, > + { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I354_BP_1GBPS }, > + { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I354_BP_2_5GBPS }, > + { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_I354_SGMII }, > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_82567V_3 }, > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_IFE }, > { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_ICH8_IFE_G }, > Index: if_em_hw.c > =================================================================== > RCS file: /cvs/src/sys/dev/pci/if_em_hw.c,v retrieving revision 1.75 diff -u > -p -r1.75 if_em_hw.c > --- if_em_hw.c 27 Nov 2013 01:13:10 -0000 1.75 > +++ if_em_hw.c 14 Feb 2014 05:54:27 -0000 > @@ -523,6 +523,9 @@ em_set_mac_type(struct em_hw *hw) > case E1000_DEV_ID_I350_SERDES: > case E1000_DEV_ID_I350_SGMII: > case E1000_DEV_ID_I350_DA4: > + case E1000_DEV_ID_I354_BACKPLANE_1GBPS: > + case E1000_DEV_ID_I354_SGMII: > + case E1000_DEV_ID_I354_BACKPLANE_2_5GBPS: > hw->mac_type = em_i350; > hw->initialize_hw_bits_disable = 1; > hw->eee_enable = 1; > Index: if_em_hw.h > =================================================================== > RCS file: /cvs/src/sys/dev/pci/if_em_hw.h,v retrieving revision 1.56 diff -u > -p -r1.56 if_em_hw.h > --- if_em_hw.h 27 Nov 2013 01:13:10 -0000 1.56 > +++ if_em_hw.h 14 Feb 2014 05:55:22 -0000 > @@ -571,6 +571,9 @@ int32_t em_check_phy_reset_block(struct > #define E1000_DEV_ID_I350_SGMII 0x1524 > #define E1000_DEV_ID_82576_QUAD_CU_ET2 0x1526 > #define E1000_DEV_ID_I350_DA4 0x1546 > +#define E1000_DEV_ID_I354_BACKPLANE_1GBPS 0x1F40 > +#define E1000_DEV_ID_I354_SGMII 0x1F41 > +#define E1000_DEV_ID_I354_BACKPLANE_2_5GBPS 0x1F45 > #define E1000_DEV_ID_82574L 0x10D3 > #define E1000_DEV_ID_EP80579_LAN_1 0x5040 > #define E1000_DEV_ID_EP80579_LAN_2 0x5044

