]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
bnx2x: Ignore bandwidth attention in single function mode
authorShahed Shaikh <Shahed.Shaikh@cavium.com>
Thu, 20 Sep 2018 18:22:51 +0000 (11:22 -0700)
committerStefan Bader <stefan.bader@canonical.com>
Tue, 26 Nov 2019 12:16:45 +0000 (13:16 +0100)
BugLink: https://bugs.launchpad.net/bugs/1853915
[ Upstream commit 75a110a1783ef8324ffd763b24f4ac268253cbca ]

This is a workaround for FW bug -
MFW generates bandwidth attention in single function mode, which
is only expected to be generated in multi function mode.
This undesired attention in SF mode results in incorrect HW
configuration and resulting into Tx timeout.

Signed-off-by: Shahed Shaikh <Shahed.Shaikh@cavium.com>
Signed-off-by: Ariel Elior <ariel.elior@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

index 6c3cc7ce4113b599d365ac3e44258b02ef3cbd66..eb5c73d991eb0bb81aa01b944b2b92363f0e6895 100644 (file)
@@ -3540,6 +3540,16 @@ static void bnx2x_drv_info_iscsi_stat(struct bnx2x *bp)
  */
 static void bnx2x_config_mf_bw(struct bnx2x *bp)
 {
+       /* Workaround for MFW bug.
+        * MFW is not supposed to generate BW attention in
+        * single function mode.
+        */
+       if (!IS_MF(bp)) {
+               DP(BNX2X_MSG_MCP,
+                  "Ignoring MF BW config in single function mode\n");
+               return;
+       }
+
        if (bp->link_vars.link_up) {
                bnx2x_cmng_fns_init(bp, true, CMNG_FNS_MINMAX);
                bnx2x_link_sync_notify(bp);