Commit 68707acb authored by Bill Hayes's avatar Bill Hayes Committed by Jeff Garzik

igb: Fix panic with NICs with 1000BASE-SX PHY

This patch eliminates a kernel panic with the igb driver in 2.6.25-rc2 when
running on a Intel 82575 Ethernet controller with a 1000BASE-SX PHY.  The
panic does not happen with the 1000BASE-T PHY, only with a SX connection.
Signed-off-by: default avatarBill Hayes <bill.hayes@hp.com>
Signed-off-by: default avatarAndy Gospodarek <andy@greyhouse.net>
Signed-off-by: default avatarAuke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent cf782298
...@@ -816,6 +816,7 @@ void igb_reset(struct igb_adapter *adapter) ...@@ -816,6 +816,7 @@ void igb_reset(struct igb_adapter *adapter)
wr32(E1000_VET, ETHERNET_IEEE_VLAN_TYPE); wr32(E1000_VET, ETHERNET_IEEE_VLAN_TYPE);
igb_reset_adaptive(&adapter->hw); igb_reset_adaptive(&adapter->hw);
if (adapter->hw.phy.ops.get_phy_info)
adapter->hw.phy.ops.get_phy_info(&adapter->hw); adapter->hw.phy.ops.get_phy_info(&adapter->hw);
} }
...@@ -2052,6 +2053,7 @@ static void igb_set_multi(struct net_device *netdev) ...@@ -2052,6 +2053,7 @@ static void igb_set_multi(struct net_device *netdev)
static void igb_update_phy_info(unsigned long data) static void igb_update_phy_info(unsigned long data)
{ {
struct igb_adapter *adapter = (struct igb_adapter *) data; struct igb_adapter *adapter = (struct igb_adapter *) data;
if (adapter->hw.phy.ops.get_phy_info)
adapter->hw.phy.ops.get_phy_info(&adapter->hw); adapter->hw.phy.ops.get_phy_info(&adapter->hw);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment