aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Bowling <kbowling@FreeBSD.org>2026-08-11 17:38:39 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2026-08-11 20:59:32 +0000
commitb1da641d23a95c4e7f61b7a546938ec8fceb47e7 (patch)
tree9b2b81caff53b7029077ef2bdbc9640d3c6424ae
parent505e6bb93f80fa3a7799cd88b0d0cafcaa468491 (diff)
e1000: Preserve errors while disabling D0 LPLU
Return a PHY write failure immediately when disabling D0 low-power link-up on 82571-family controllers. MFC after: 2 weeks
-rw-r--r--sys/dev/e1000/e1000_82571.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/e1000/e1000_82571.c b/sys/dev/e1000/e1000_82571.c
index a0a183e326ca..3621f35a819c 100644
--- a/sys/dev/e1000/e1000_82571.c
+++ b/sys/dev/e1000/e1000_82571.c
@@ -959,6 +959,8 @@ static s32 e1000_set_d0_lplu_state_82571(struct e1000_hw *hw, bool active)
data &= ~IGP02E1000_PM_D0_LPLU;
ret_val = phy->ops.write_reg(hw, IGP02E1000_PHY_POWER_MGMT,
data);
+ if (ret_val)
+ return ret_val;
/* LPLU and SmartSpeed are mutually exclusive. LPLU is used
* during Dx states where the power conservation is most
* important. During driver activity we should enable