From: Soumen Karmakar <[email protected]> According to FW documentation, the most time-consuming part of continuous FW activity is Shadow RAM (SR) dump which takes up to 3.2 seconds. For X550 devices, the module-update FW command can take over 4.5 s. Increase the max Software/Firmware (SW/FW) semaphore wait time from the default 200 ms to 5 s for X550 to avoid spurious semaphore timeout failures during FW update operations.
Signed-off-by: Soumen Karmakar <[email protected]> Signed-off-by: Aleksandr Loktionov <[email protected]> --- drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c index e67e2fe..85047ef 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c @@ -577,6 +577,9 @@ int ixgbe_acquire_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask) swmask |= swi2c_mask; fwmask |= swi2c_mask << 2; + if (hw->mac.type == ixgbe_mac_X550) + timeout = 1000; + for (i = 0; i < timeout; i++) { /* SW NVM semaphore bit is used for access to all * SW_FW_SYNC bits (not just NVM) -- 2.52.0
