The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=e49cb7f757f6db8976b0d247e6a897eab5867634
commit e49cb7f757f6db8976b0d247e6a897eab5867634 Author: Kevin Bowling <[email protected]> AuthorDate: 2026-08-11 16:19:02 +0000 Commit: Kevin Bowling <[email protected]> CommitDate: 2026-08-11 20:45:56 +0000 e1000: Allow more time for PCH ULP exit Firmware may take up to one second to unconfigure ULP, and affected Lenovo systems have required nearly two seconds. Allow 2.5 seconds before treating the transition as a PHY failure. This extends DPDK commit 7aa4c34581a5 using the field-tested bound from Linux commit 3cf31b1a9eff. MFC after: 2 weeks --- sys/dev/e1000/e1000_ich8lan.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/sys/dev/e1000/e1000_ich8lan.c b/sys/dev/e1000/e1000_ich8lan.c index e7ff5a581ad1..1a3433217682 100644 --- a/sys/dev/e1000/e1000_ich8lan.c +++ b/sys/dev/e1000/e1000_ich8lan.c @@ -1504,7 +1504,7 @@ out: s32 e1000_disable_ulp_lpt_lp(struct e1000_hw *hw, bool force) { s32 ret_val = E1000_SUCCESS; - u8 ulp_exit_timeout = 30; + u16 ulp_exit_timeout = 250; u32 mac_reg; u32 phy_retries; u16 phy_reg; @@ -1527,9 +1527,6 @@ s32 e1000_disable_ulp_lpt_lp(struct e1000_hw *hw, bool force) E1000_WRITE_REG(hw, E1000_H2ME, mac_reg); } - if (hw->mac.type == e1000_pch_cnp) - ulp_exit_timeout = 100; - while (E1000_READ_REG(hw, E1000_FWSM) & E1000_FWSM_ULP_CFG_DONE) { if (i++ == ulp_exit_timeout) {
