diff options
author | Guinan Sun <guinanx.sun@intel.com> | 2020-07-09 08:00:29 +0000 |
---|---|---|
committer | Kevin Bowling <kbowling@FreeBSD.org> | 2021-09-07 02:22:11 +0000 |
commit | c966c431c764c493fafbe65b717243a3c0b291be (patch) | |
tree | 17d8153e1cdaa5f842844fde93ea0ad87b12bd1a | |
parent | f511cd22586a9c0358b86334a51e3db60ca2db01 (diff) | |
download | src-c966c431c764c493fafbe65b717243a3c0b291be.tar.gz src-c966c431c764c493fafbe65b717243a3c0b291be.zip |
ixgbe: fix response to apply-update command
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>
Approved by: imp
Obtained from: DPDK (03b09c71c0c6c516ce05cad8e8aa75e8b9e14fba)
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D31621
-rw-r--r-- | sys/dev/ixgbe/ixgbe_common.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 34c0f128aae4..6ee71dec4fda 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -4557,11 +4557,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; } |