|
@@ -294,6 +294,16 @@ static s32 e1000_init_phy_params_pchlan(struct e1000_hw *hw)
|
|
msleep(50);
|
|
msleep(50);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /*
|
|
|
|
+ * Reset the PHY before any acccess to it. Doing so, ensures that
|
|
|
|
+ * the PHY is in a known good state before we read/write PHY registers.
|
|
|
|
+ * The generic reset is sufficient here, because we haven't determined
|
|
|
|
+ * the PHY type yet.
|
|
|
|
+ */
|
|
|
|
+ ret_val = e1000e_phy_hw_reset_generic(hw);
|
|
|
|
+ if (ret_val)
|
|
|
|
+ goto out;
|
|
|
|
+
|
|
phy->id = e1000_phy_unknown;
|
|
phy->id = e1000_phy_unknown;
|
|
ret_val = e1000e_get_phy_id(hw);
|
|
ret_val = e1000e_get_phy_id(hw);
|
|
if (ret_val)
|
|
if (ret_val)
|