aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ixgbe
diff options
context:
space:
mode:
authorBarbara Skobiej <barbara.skobiej@intel.com>2024-09-20 03:29:36 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2024-09-20 03:31:18 +0000
commitcc9944183187308a71489651b11342d293aac7d1 (patch)
tree904ded7872bd88333b58ac0a02033caed29bce38 /sys/dev/ixgbe
parentbfa48c32bc4099cb58b9fe7efab7f376475539ef (diff)
Diffstat (limited to 'sys/dev/ixgbe')
-rw-r--r--sys/dev/ixgbe/ixgbe_x550.c41
1 files changed, 22 insertions, 19 deletions
diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c
index 961d5c285e51..ba72b5d1366e 100644
--- a/sys/dev/ixgbe/ixgbe_x550.c
+++ b/sys/dev/ixgbe/ixgbe_x550.c
@@ -4242,36 +4242,39 @@ static s32 ixgbe_acquire_swfw_sync_X550a(struct ixgbe_hw *hw, u32 mask)
DEBUGFUNC("ixgbe_acquire_swfw_sync_X550a");
- while (--retries) {
- status = IXGBE_SUCCESS;
- if (hmask)
- status = ixgbe_acquire_swfw_sync_X540(hw, hmask);
- if (status) {
- DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n",
- status);
- return status;
- }
- if (!(mask & IXGBE_GSSR_TOKEN_SM))
- return IXGBE_SUCCESS;
+ status = IXGBE_SUCCESS;
+ if (hmask)
+ status = ixgbe_acquire_swfw_sync_X540(hw, hmask);
+
+ if (status) {
+ DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n", status);
+ return status;
+ }
+
+ if (!(mask & IXGBE_GSSR_TOKEN_SM))
+ return IXGBE_SUCCESS;
+ while (--retries) {
status = ixgbe_get_phy_token(hw);
- if (status == IXGBE_ERR_TOKEN_RETRY)
- DEBUGOUT1("Could not acquire PHY token, Status = %d\n",
- status);
if (status == IXGBE_SUCCESS)
return IXGBE_SUCCESS;
- if (hmask)
- ixgbe_release_swfw_sync_X540(hw, hmask);
-
if (status != IXGBE_ERR_TOKEN_RETRY) {
- DEBUGOUT1("Unable to retry acquiring the PHY token, Status = %d\n",
- status);
+ DEBUGOUT1("Retry acquiring the PHY token failed, Status = %d\n", status);
+ if (hmask)
+ ixgbe_release_swfw_sync_X540(hw, hmask);
return status;
}
+
+ if (status == IXGBE_ERR_TOKEN_RETRY)
+ DEBUGOUT1("Could not acquire PHY token, Status = %d\n",
+ status);
}
+ if (hmask)
+ ixgbe_release_swfw_sync_X540(hw, hmask);
+
DEBUGOUT1("Semaphore acquisition retries failed!: PHY ID = 0x%08X\n",
hw->phy.id);
return status;