net/ixgbe/base: fix response to apply-update command
authorGuinan Sun <guinanx.sun@intel.com>
Thu, 9 Jul 2020 08:00:29 +0000 (08:00 +0000)
committerFerruh Yigit <ferruh.yigit@intel.com>
Sat, 11 Jul 2020 04:18:53 +0000 (06:18 +0200)
For the "Apply Update" command the firmware does not
given an response. For this command, success should
be return.

Signed-off-by: Mateusz Kowalski <mateusz.kowalski@intel.com>
Signed-off-by: Guinan Sun <guinanx.sun@intel.com>
Reviewed-by: Wei Zhao <wei.zhao1@intel.com>
drivers/net/ixgbe/base/ixgbe_common.c

index 5889410..fec6241 100644 (file)
@@ -4528,11 +4528,18 @@ s32 ixgbe_hic_unlocked(struct ixgbe_hw *hw, u32 *buffer, u32 length,
                msec_delay(1);
        }
 
+       /* For each command except "Apply Update" perform
+        * status checks in the HICR registry.
+        */
+       if ((buffer[0] & IXGBE_HOST_INTERFACE_MASK_CMD) ==
+           IXGBE_HOST_INTERFACE_APPLY_UPDATE_CMD)
+               return IXGBE_SUCCESS;
+
        /* Check command completion */
        if ((timeout && i == timeout) ||
            !(IXGBE_READ_REG(hw, IXGBE_HICR) & IXGBE_HICR_SV)) {
                ERROR_REPORT1(IXGBE_ERROR_CAUTION,
-                            "Command has failed with no status valid.\n");
+                             "Command has failed with no status valid.\n");
                return IXGBE_ERR_HOST_INTERFACE_COMMAND;
        }