bnxt_en: Device serial number is supported only for PFs. [Linux 5.2]

bnxt_en: Device serial number is supported only for PFs. [Linux 5.2]

This Linux kernel change "bnxt_en: Device serial number is supported only for PFs" is included in the Linux 5.2 release. This change is authored by Vasundhara Volam <vasundhara-v.volam [at] broadcom.com> on Wed May 22 19:12:57 2019 -0400. The commit for this change in Linux stable tree is 2e9217d (patch).

bnxt_en: Device serial number is supported only for PFs.

Don't read DSN on VFs that do not have the PCI capability.

Fixes: 03213a996531 ("bnxt: move bp->switch_id initialization to PF probe")
Signed-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

There are 11 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 79812da..f758b2e 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -10725,11 +10725,12 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
        goto init_err_pci_clean;
    }

-   /* Read the adapter's DSN to use as the eswitch switch_id */
-   rc = bnxt_pcie_dsn_get(bp, bp->switch_id);
-   if (rc)
-       goto init_err_pci_clean;
-
+   if (BNXT_PF(bp)) {
+       /* Read the adapter's DSN to use as the eswitch switch_id */
+       rc = bnxt_pcie_dsn_get(bp, bp->switch_id);
+       if (rc)
+           goto init_err_pci_clean;
+   }
    bnxt_hwrm_func_qcfg(bp);
    bnxt_hwrm_vnic_qcaps(bp);
    bnxt_hwrm_port_led_qcaps(bp);

Leave a Reply

Your email address will not be published. Required fields are marked *