This is a partial revert to commit 76a0a3f9cc2f ("e1000e: fix force smbus
during suspend flow"). That commit fixed a sporadic PHY access issue but
introduced a regression in runtime suspend flows.
The original issue on Meteor Lake systems was rare in terms of the
reproduction rate and the number of the systems affected.

After the integration of commit 0a6ad4d9e169 ("e1000e: avoid failing the
system during pm_suspend"), PHY access loss can no longer cause a
system-level suspend failure. As it only occurs when the LAN cable is
disconnected, and is recovered during system resume flow. Therefore, its
functional impact is low, and the priority is given to stabilizing
runtime suspend.

Fixes: 76a0a3f9cc2f ("e1000e: fix force smbus during suspend flow")
Signed-off-by: Vitaly Lifshits <vitaly.lifsh...@intel.com>
---
 drivers/net/ethernet/intel/e1000e/ich8lan.c | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)

diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c 
b/drivers/net/ethernet/intel/e1000e/ich8lan.c
index ce227b56cf72..2f9655cf5dd9 100644
--- a/drivers/net/ethernet/intel/e1000e/ich8lan.c
+++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c
@@ -1205,12 +1205,10 @@ s32 e1000_enable_ulp_lpt_lp(struct e1000_hw *hw, bool 
to_sx)
        if (ret_val)
                goto out;
 
-       if (hw->mac.type != e1000_pch_mtp) {
-               ret_val = e1000e_force_smbus(hw);
-               if (ret_val) {
-                       e_dbg("Failed to force SMBUS: %d\n", ret_val);
-                       goto release;
-               }
+       ret_val = e1000e_force_smbus(hw);
+       if (ret_val) {
+               e_dbg("Failed to force SMBUS: %d\n", ret_val);
+               goto release;
        }
 
        /* Si workaround for ULP entry flow on i127/rev6 h/w.  Enable
@@ -1273,13 +1271,6 @@ s32 e1000_enable_ulp_lpt_lp(struct e1000_hw *hw, bool 
to_sx)
        }
 
 release:
-       if (hw->mac.type == e1000_pch_mtp) {
-               ret_val = e1000e_force_smbus(hw);
-               if (ret_val)
-                       e_dbg("Failed to force SMBUS over MTL system: %d\n",
-                             ret_val);
-       }
-
        hw->phy.ops.release(hw);
 out:
        if (ret_val)
-- 
2.34.1

Reply via email to