summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authormsaitoh <msaitoh@NetBSD.org>2018-04-02 10:51:35 +0000
committermsaitoh <msaitoh@NetBSD.org>2018-04-02 10:51:35 +0000
commit0d07a2cb76260667df32fd00be216f4f76c9da05 (patch)
treeeefd7c80035ac53778f6b84d50a575bb18e46fcd /sys/dev
parent987f0c015a592ea050663a2d9a024247473e4d46 (diff)
Fix long standing bug that 82598 SFP+ panics in ixgbe_handle_mod() because
hw->mac.ops.setup_sfp is NULL. This change is a part of FreeBSD r327031.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/pci/ixgbe/ixgbe.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/pci/ixgbe/ixgbe.c b/sys/dev/pci/ixgbe/ixgbe.c
index 205a5afab03..ab5bee722c1 100644
--- a/sys/dev/pci/ixgbe/ixgbe.c
+++ b/sys/dev/pci/ixgbe/ixgbe.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.141 2018/04/02 05:02:55 knakahara Exp $ */
+/* $NetBSD: ixgbe.c,v 1.142 2018/04/02 10:51:35 msaitoh Exp $ */
/******************************************************************************
@@ -4405,7 +4405,11 @@ ixgbe_handle_mod(void *context)
return;
}
- err = hw->mac.ops.setup_sfp(hw);
+ if (hw->mac.type == ixgbe_mac_82598EB)
+ err = hw->phy.ops.reset(hw);
+ else
+ err = hw->mac.ops.setup_sfp(hw);
+
if (err == IXGBE_ERR_SFP_NOT_SUPPORTED) {
device_printf(dev,
"Setup failure - unsupported SFP+ module type.\n");