Commit 6bf968e6 authored by Sreekanth Reddy's avatar Sreekanth Reddy Committed by Baogen Shang
Browse files

bnxt_en: Don't issue AP reset during ethtool's reset operation

stable inclusion
from stable-v5.10.184
commit 84dbd27ad5dace21830c67d01470e9121a044b22
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I8L4MY

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=84dbd27ad5dace21830c67d01470e9121a044b22



--------------------------------

[ Upstream commit 1d997801 ]

Only older NIC controller's firmware uses the PROC AP reset type.
Firmware on 5731X/5741X and newer chips does not support this reset
type.  When bnxt_reset() issues a series of resets, this PROC AP
reset may actually fail on these newer chips because the firmware
is not ready to accept this unsupported command yet.  Avoid this
unnecessary error by skipping this reset type on chips that don't
support it.

Fixes: 7a13240e ("bnxt_en: fix ethtool_reset_flags ABI violations")
Reviewed-by: default avatarPavan Chebbi <pavan.chebbi@broadcom.com>
Signed-off-by: default avatarSreekanth Reddy <sreekanth.reddy@broadcom.com>
Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
Signed-off-by: default avatarDapeng Yu <dapeng.yu@windriver.com>
parent 2a794af7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3446,7 +3446,7 @@ static int bnxt_reset(struct net_device *dev, u32 *flags)
		}
	}

	if (req & BNXT_FW_RESET_AP) {
	if (!BNXT_CHIP_P4_PLUS(bp) && (req & BNXT_FW_RESET_AP)) {
		/* This feature is not supported in older firmware versions */
		if (bp->hwrm_spec_code >= 0x10803) {
			if (!bnxt_firmware_reset_ap(dev)) {