git: 410ec4c16ab4 - stable/12 - e1000: prevent ULP flow if cable connected
Kevin Bowling
kbowling at FreeBSD.org
Fri Sep 24 01:41:52 UTC 2021
The branch stable/12 has been updated by kbowling (ports committer):
URL: https://cgit.FreeBSD.org/src/commit/?id=410ec4c16ab4ac7e6dff266dd7a5a3659400b760
commit 410ec4c16ab4ac7e6dff266dd7a5a3659400b760
Author: Wenzhuo Lu <wenzhuo.lu at intel.com>
AuthorDate: 2015-10-16 02:51:03 +0000
Commit: Kevin Bowling <kbowling at FreeBSD.org>
CommitDate: 2021-09-24 01:40:19 +0000
e1000: prevent ULP flow if cable connected
Enabling ulp on link down when cable is connect caused an infinite
loop of linkup/down indications in the NDIS driver.
After discussed, correct flow is to enable ULP only when cable is
disconnected.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu at intel.com>
Approved by: imp
Obtained from: DPDK (4bff263d54d299269966365f9697941eecaa241b)
MFC after: 1 week
(cherry picked from commit 40fa6e53f53cde84f6f5c7330f89e4ae373d7d93)
---
sys/dev/e1000/e1000_ich8lan.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sys/dev/e1000/e1000_ich8lan.c b/sys/dev/e1000/e1000_ich8lan.c
index b29d53ea4b54..5d0c9fccf626 100644
--- a/sys/dev/e1000/e1000_ich8lan.c
+++ b/sys/dev/e1000/e1000_ich8lan.c
@@ -1307,6 +1307,10 @@ s32 e1000_enable_ulp_lpt_lp(struct e1000_hw *hw, bool to_sx)
(E1000_READ_REG(hw, E1000_FEXT) &
E1000_FEXT_PHY_CABLE_DISCONNECTED) ? "" : "not",
i * 50);
+ if (!(E1000_READ_REG(hw, E1000_FEXT) &
+ E1000_FEXT_PHY_CABLE_DISCONNECTED))
+ return 0;
+
}
ret_val = hw->phy.ops.acquire(hw);
More information about the dev-commits-src-branches
mailing list