-/* $OpenBSD: if_ix.c,v 1.118 2015/03/20 10:41:15 mikeb Exp $ */
+/* $OpenBSD: if_ix.c,v 1.119 2015/04/30 14:17:26 jsg Exp $ */
/******************************************************************************
ifmr->ifm_active |= IFM_100_TX | IFM_FDX;
break;
case IXGBE_LINK_SPEED_1GB_FULL:
- ifmr->ifm_active |= ((sc->optics == IFM_1000_SX) ?
- IFM_1000_SX : IFM_1000_T) | IFM_FDX;
+ switch (sc->optics) {
+ case IFM_1000_SX:
+ case IFM_1000_LX:
+ ifmr->ifm_active |= sc->optics | IFM_FDX;
+ break;
+ default:
+ ifmr->ifm_active |= IFM_1000_T | IFM_FDX;
+ break;
+ }
break;
case IXGBE_LINK_SPEED_10GB_FULL:
ifmr->ifm_active |= sc->optics | IFM_FDX;
sc->optics = IFM_10G_CX4;
else if (layer & IXGBE_PHYSICAL_LAYER_1000BASE_SX)
sc->optics = IFM_1000_SX;
+ else if (layer & IXGBE_PHYSICAL_LAYER_1000BASE_LX)
+ sc->optics = IFM_1000_LX;
}
/*********************************************************************
-/* $OpenBSD: ixgbe_82599.c,v 1.11 2015/04/30 13:24:36 sthen Exp $ */
+/* $OpenBSD: ixgbe_82599.c,v 1.12 2015/04/30 14:17:26 jsg Exp $ */
/******************************************************************************
physical_layer = IXGBE_PHYSICAL_LAYER_1000BASE_T;
else if (comp_codes_1g & IXGBE_SFF_1GBASESX_CAPABLE)
physical_layer = IXGBE_PHYSICAL_LAYER_1000BASE_SX;
+ else if (comp_codes_1g & IXGBE_SFF_1GBASELX_CAPABLE)
+ physical_layer = IXGBE_PHYSICAL_LAYER_1000BASE_LX;
break;
default:
break;
-/* $OpenBSD: ixgbe_type.h,v 1.21 2015/04/30 13:24:36 sthen Exp $ */
+/* $OpenBSD: ixgbe_type.h,v 1.22 2015/04/30 14:17:26 jsg Exp $ */
/******************************************************************************
#define IXGBE_PHYSICAL_LAYER_10GBASE_XAUI 0x1000
#define IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA 0x2000
#define IXGBE_PHYSICAL_LAYER_1000BASE_SX 0x4000
+#define IXGBE_PHYSICAL_LAYER_1000BASE_LX 0x8000
/* Flow Control Data Sheet defined values
* Calculation and defines taken from 802.1bb Annex O