I have a server with an Intel X520-LR1 Ethernet card, which is a
10GBase-LR card:

  http://ark.intel.com/Product.aspx?id=41164

The card contains the Intel 82599ES controller:

  http://ark.intel.com/Product.aspx?id=41282

pciconf -lv shows:

ix0@pci0:28:0:0:        class=0x020000 card=0x00068086 chip=0x10fb8086 rev=0x01 
hdr=0x00
    vendor     = 'Intel Corporation'
    class      = network
    subclass   = ethernet

where /sys/dev/ixgbe/ixgbe_type.h has the PCI ID definition:

#define IXGBE_DEV_ID_82599_SFP  0x10FB

The problem is that this card is shown by ifconfig as a 10GBase-SR card:

% ifconfig ix0
ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        
options=1bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4>
        ether 00:1b:21:7c:7b:94
        media: Ethernet autoselect (10Gbase-SR <full-duplex>)
        status: active

I believe this is due to the following code in /sys/dev/ixgbe/ixgbe.c
line 423, routine ixgbe_attach():

                case IXGBE_DEV_ID_82599_SFP:
                        adapter->optics = IFM_10G_SR;

I'm looking at version 1.17.2.12.2.1, from 8.2-RC1, but I see this code
is the same in version 1.45, from HEAD:

  
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/ixgbe/ixgbe.c?rev=1.45;content-type=text/plain

I made a 1-line patch to the 8.2-RC1 code, enclosed below, and now have
ifconfig showing the expected value:

y% ifconfig ix0
ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        
options=1bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4>
        ether 00:1b:21:7c:7b:94
        media: Ethernet autoselect (10Gbase-LR <full-duplex>)
        status: active

Steinar Haug, Nethelp consulting, sth...@nethelp.no
----------------------------------------------------------------------
--- ixgbe.c.orig        2010-12-21 18:09:25.000000000 +0100
+++ ixgbe.c     2011-01-13 14:31:14.000000000 +0100
@@ -421,7 +421,7 @@
                        adapter->optics = IFM_10G_LR;
                        break;
                case IXGBE_DEV_ID_82599_SFP:
-                       adapter->optics = IFM_10G_SR;
+                       adapter->optics = IFM_10G_LR;
                        ixgbe_num_segs = IXGBE_82599_SCATTER;
                        break;
                case IXGBE_DEV_ID_82598_DA_DUAL_PORT :
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to