git: 40fa6e53f53c - main - e1000: prevent ULP flow if cable connected
Kevin Bowling
kbowling at FreeBSD.org
Fri Sep 17 21:37:38 UTC 2021
The branch main has been updated by kbowling (ports committer):
URL: https://cgit.FreeBSD.org/src/commit/?id=40fa6e53f53cde84f6f5c7330f89e4ae373d7d93
commit 40fa6e53f53cde84f6f5c7330f89e4ae373d7d93
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-17 21:25:38 +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
---
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 635be03f2900..dd4e85d64aff 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-all
mailing list