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:j...@jsg.id.au] 
Sent: Friday, February 14, 2014 12:00 AM
To: Andrew Lester
Cc: misc@openbsd.org
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

Reply via email to