Received: by 2002:a05:6512:3d0e:0:0:0:0 with SMTP id d14csp10527lfv; Tue, 12 Apr 2022 15:10:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzzbxDCY9Q5zUqutfxPTxx2Lpo25N22/An08fqs9bmRpcrUh0Jbo2FGI+/+5qcCIKaP+xll X-Received: by 2002:a17:90a:2b41:b0:1cb:62ba:d53 with SMTP id y1-20020a17090a2b4100b001cb62ba0d53mr7226612pjc.201.1649801423573; Tue, 12 Apr 2022 15:10:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649801423; cv=none; d=google.com; s=arc-20160816; b=l4NACygjNANq7YyUU0xyhc1bnlkO1E9lIV/s5BTg53xruLoqaAuoJZu0NcTTeLeuuU 5++EB7eNTYDmJ/LlMoamdXvNjuYIycxaHFKrIjB77uZ6SipR+cUnZsLYhzCqVyPNa5K4 dU+CzTwUuGbiD2RYMBnUK30Ny2x+uewQFVxW1NLG1CAae4gr40i1RAsgJVcorkwCFa49 Dr63Q/JSIJ5eRszHG2dsG8a3IxlwKjninm06op+96VTo1uSC/PltbP7F4tdsGBNzCsQG MnpVjcV86RKY9ruZWmLQyhFScFtlT6VEikAg/btAGIsVnGH+BNH3MNzYAa32aeSO2AWs LAMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=qHX/nGo/lHnm5j3JtKSn0zIo9mQUGCNtm1CQZdV9/yE=; b=LVOa+xsLTlP9WSROKJTu+MPh9VkQjQuf6UJY8HI+hAdZ5Lnn9PwdEXEwIXwpM467NL YT7heXE50pkZm3q5Gilrw47xp50uBznhhFFqRuLplfnMGxOnY1Wfeh1/4eqUuyu8oXZW ru6EjfQxvGnA0qFZxtJ2r/nsSPZeTLl8wc5870IznlK4+OsWR7XsPjmVpCNUIHKYbSro qPutSCJ5VYPG8bSwlaf4vEzHocVRsQ0JFN6DZLWOxMw02GRt4dAELjfmZfSW3W2StobS 1+Bg4aBop8emzf1FkKDIKblHZQtysyGJdWaOrNquWluR5v+/3ugX/44tPhn+dA+Y14Ck 2PAw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=Tu0bTUqR; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id s10-20020a63af4a000000b0039924bcb6a9si4007016pgo.172.2022.04.12.15.10.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Apr 2022 15:10:23 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=Tu0bTUqR; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 7C0FE171EE5; Tue, 12 Apr 2022 14:01:29 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1385061AbiDLIms (ORCPT + 99 others); Tue, 12 Apr 2022 04:42:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46356 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1357137AbiDLHjs (ORCPT ); Tue, 12 Apr 2022 03:39:48 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B9A0412639; Tue, 12 Apr 2022 00:12:47 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 6F4EEB81895; Tue, 12 Apr 2022 07:12:46 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B2C8BC385A1; Tue, 12 Apr 2022 07:12:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1649747565; bh=D395o5bGU/NH15icxNw1+v+DkBD0CVO/J/ItItHyemY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Tu0bTUqRLEPyJV+LrtGesJnv1c7S1IWPJ8/1MN5IlSrBn/oHRx4k/KlOgVQ8iIJyz mMVkoDQqCWwEoritY1arPmrh+anfMuzsshOp5o3j7bfIH9qZWAkM2sBe3vUKGRSBKo Zx+EQVXqEmiqaLhyUjZRQAifkP5XTfIrQmyPCPng= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Colin Winegarden , Pavan Chebbi , Michael Chan , "David S. Miller" , Sasha Levin Subject: [PATCH 5.17 125/343] bnxt_en: Eliminate unintended link toggle during FW reset Date: Tue, 12 Apr 2022 08:29:03 +0200 Message-Id: <20220412062954.992335228@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220412062951.095765152@linuxfoundation.org> References: <20220412062951.095765152@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Michael Chan [ Upstream commit 7c492a2530c1f05441da541307c2534230dfd59b ] If the flow control settings have been changed, a subsequent FW reset may cause the ethernet link to toggle unnecessarily. This link toggle will increase the down time by a few seconds. The problem is caused by bnxt_update_phy_setting() detecting a false mismatch in the flow control settings between the stored software settings and the current FW settings after the FW reset. This mismatch is caused by the AUTONEG bit added to link_info->req_flow_ctrl in an inconsistent way in bnxt_set_pauseparam() in autoneg mode. The AUTONEG bit should not be added to link_info->req_flow_ctrl. Reviewed-by: Colin Winegarden Reviewed-by: Pavan Chebbi Signed-off-by: Michael Chan Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c index 8aaa2335f848..f09b04556c32 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c @@ -2101,9 +2101,7 @@ static int bnxt_set_pauseparam(struct net_device *dev, } link_info->autoneg |= BNXT_AUTONEG_FLOW_CTRL; - if (bp->hwrm_spec_code >= 0x10201) - link_info->req_flow_ctrl = - PORT_PHY_CFG_REQ_AUTO_PAUSE_AUTONEG_PAUSE; + link_info->req_flow_ctrl = 0; } else { /* when transition from auto pause to force pause, * force a link change -- 2.35.1