summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMike Belopuhov <mikeb@cvs.openbsd.org>2016-11-24 17:39:50 +0000
committerMike Belopuhov <mikeb@cvs.openbsd.org>2016-11-24 17:39:50 +0000
commit9e62d0dd00698cfd9774a335dcf3c043efa9ec92 (patch)
tree702092e238ff3d4d37ad8ed29b9fe156980a3909 /sys
parent8a783c8f62af02796a06d02b8665e21b827706e1 (diff)
Enable support for the X550 family of 10 Gigabit controllers
Code was obtained from FreeBSD. Make release testing by tb@ on i386 and mikeb@ on amd64 and sparc64. X552 SFP tested by Hrvoje Popovski, HUGE thanks! X550T tested by mikeb@ on amd64 and sparc64. ok kettenis, deraadt
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/files.pci3
-rw-r--r--sys/dev/pci/if_ix.c12
-rw-r--r--sys/dev/pci/ixgbe.c8
3 files changed, 20 insertions, 3 deletions
diff --git a/sys/dev/pci/files.pci b/sys/dev/pci/files.pci
index a6b91fb30d7..78968b0a84b 100644
--- a/sys/dev/pci/files.pci
+++ b/sys/dev/pci/files.pci
@@ -1,4 +1,4 @@
-# $OpenBSD: files.pci,v 1.326 2016/09/04 10:35:39 tedu Exp $
+# $OpenBSD: files.pci,v 1.327 2016/11/24 17:39:49 mikeb Exp $
# $NetBSD: files.pci,v 1.20 1996/09/24 17:47:15 christos Exp $
#
# Config file and device description for machine-independent PCI code.
@@ -358,6 +358,7 @@ file dev/pci/ixgbe.c ix
file dev/pci/ixgbe_82598.c ix
file dev/pci/ixgbe_82599.c ix
file dev/pci/ixgbe_x540.c ix
+file dev/pci/ixgbe_x550.c ix
file dev/pci/ixgbe_phy.c ix
# Neterion Xframe 10 Gigabit ethernet
diff --git a/sys/dev/pci/if_ix.c b/sys/dev/pci/if_ix.c
index 4edaf227a04..fd2f72af404 100644
--- a/sys/dev/pci/if_ix.c
+++ b/sys/dev/pci/if_ix.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ix.c,v 1.143 2016/11/24 11:50:58 mikeb Exp $ */
+/* $OpenBSD: if_ix.c,v 1.144 2016/11/24 17:39:49 mikeb Exp $ */
/******************************************************************************
@@ -71,10 +71,20 @@ const struct pci_matchid ixgbe_devices[] = {
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_T3_LOM },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_SFP },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_SFP_EM },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_SFP_SF_QP },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_SFP_SF2 },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_SFP_FCOE },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599EN_SFP },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82599_QSFP_SF_QP },
{ PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X540T },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X540T1 },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550T },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550T1 },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550EM_X_KX4 },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550EM_X_KR },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550EM_X_SFP },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550EM_X_10G_T },
+ { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_X550EM_X_1G_T },
};
/*********************************************************************
diff --git a/sys/dev/pci/ixgbe.c b/sys/dev/pci/ixgbe.c
index 6405f20078b..0b0e19083db 100644
--- a/sys/dev/pci/ixgbe.c
+++ b/sys/dev/pci/ixgbe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ixgbe.c,v 1.21 2016/11/21 17:08:56 mikeb Exp $ */
+/* $OpenBSD: ixgbe.c,v 1.22 2016/11/24 17:39:49 mikeb Exp $ */
/******************************************************************************
@@ -3954,6 +3954,12 @@ int32_t ixgbe_init_shared_code(struct ixgbe_hw *hw)
case ixgbe_mac_X540:
status = ixgbe_init_ops_X540(hw);
break;
+ case ixgbe_mac_X550:
+ status = ixgbe_init_ops_X550(hw);
+ break;
+ case ixgbe_mac_X550EM_x:
+ status = ixgbe_init_ops_X550EM(hw);
+ break;
default:
status = IXGBE_ERR_DEVICE_NOT_SUPPORTED;
break;