RDMA/bnxt_re: remove virt_func check while creating RoCE FW channel
authorKashyap Desai <kashyap.desai@broadcom.com>
Fri, 9 Jun 2023 11:01:40 +0000 (04:01 -0700)
committerLeon Romanovsky <leon@kernel.org>
Mon, 12 Jun 2023 07:10:16 +0000 (10:10 +0300)
There is a common FW communication offset for both PF and VF.
Removed code around virt_fn check while creating FW channel.

Signed-off-by: Kashyap Desai <kashyap.desai@broadcom.com>
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Link: https://lore.kernel.org/r/1686308514-11996-4-git-send-email-selvin.xavier@broadcom.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/hw/bnxt_re/main.c
drivers/infiniband/hw/bnxt_re/qplib_rcfw.c
drivers/infiniband/hw/bnxt_re/qplib_rcfw.h

index 4718af6c4c47b0027a9df75f817252e2f7e93667..51372de19e22cca166348bb601658b930a538e8c 100644 (file)
@@ -1202,7 +1202,7 @@ static int bnxt_re_dev_init(struct bnxt_re_dev *rdev, u8 wqe_mode)
        db_offt = bnxt_re_get_nqdb_offset(rdev, BNXT_RE_AEQ_IDX);
        vid = rdev->en_dev->msix_entries[BNXT_RE_AEQ_IDX].vector;
        rc = bnxt_qplib_enable_rcfw_channel(&rdev->rcfw,
-                                           vid, db_offt, rdev->is_virtfn,
+                                           vid, db_offt,
                                            &bnxt_re_aeq_handler);
        if (rc) {
                ibdev_err(&rdev->ibdev, "Failed to enable RCFW channel: %#x\n",
index c11b8e708844c2d1910b0ec2e045a551cf7d9ec6..67140eb02c4d25e43a65bf2dac16d3997c081129 100644 (file)
@@ -724,13 +724,11 @@ int bnxt_qplib_rcfw_start_irq(struct bnxt_qplib_rcfw *rcfw, int msix_vector,
        return 0;
 }
 
-static int bnxt_qplib_map_cmdq_mbox(struct bnxt_qplib_rcfw *rcfw, bool is_vf)
+static int bnxt_qplib_map_cmdq_mbox(struct bnxt_qplib_rcfw *rcfw)
 {
        struct bnxt_qplib_cmdq_mbox *mbox;
        resource_size_t bar_reg;
        struct pci_dev *pdev;
-       u16 prod_offt;
-       int rc = 0;
 
        pdev = rcfw->pdev;
        mbox = &rcfw->cmdq.cmdq_mbox;
@@ -755,11 +753,10 @@ static int bnxt_qplib_map_cmdq_mbox(struct bnxt_qplib_rcfw *rcfw, bool is_vf)
                return -ENOMEM;
        }
 
-       prod_offt = is_vf ? RCFW_VF_COMM_PROD_OFFSET :
-                           RCFW_PF_COMM_PROD_OFFSET;
-       mbox->prod = (void  __iomem *)(mbox->reg.bar_reg + prod_offt);
+       mbox->prod = (void  __iomem *)(mbox->reg.bar_reg +
+                       RCFW_PF_VF_COMM_PROD_OFFSET);
        mbox->db = (void __iomem *)(mbox->reg.bar_reg + RCFW_COMM_TRIG_OFFSET);
-       return rc;
+       return 0;
 }
 
 static int bnxt_qplib_map_creq_db(struct bnxt_qplib_rcfw *rcfw, u32 reg_offt)
@@ -820,7 +817,7 @@ static void bnxt_qplib_start_rcfw(struct bnxt_qplib_rcfw *rcfw)
 
 int bnxt_qplib_enable_rcfw_channel(struct bnxt_qplib_rcfw *rcfw,
                                   int msix_vector,
-                                  int cp_bar_reg_off, int virt_fn,
+                                  int cp_bar_reg_off,
                                   aeq_handler_t aeq_handler)
 {
        struct bnxt_qplib_cmdq_ctx *cmdq;
@@ -840,7 +837,7 @@ int bnxt_qplib_enable_rcfw_channel(struct bnxt_qplib_rcfw *rcfw,
        creq->stats.creq_func_event_processed = 0;
        creq->aeq_handler = aeq_handler;
 
-       rc = bnxt_qplib_map_cmdq_mbox(rcfw, virt_fn);
+       rc = bnxt_qplib_map_cmdq_mbox(rcfw);
        if (rc)
                return rc;
 
index 92f7a25533d3bdfbf16d47fcc5269ef9322e0822..0dff56e3db8828b4dc647787e881adb83bf2c9ed 100644 (file)
@@ -45,8 +45,7 @@
 #define RCFW_COMM_PCI_BAR_REGION       0
 #define RCFW_COMM_CONS_PCI_BAR_REGION  2
 #define RCFW_COMM_BASE_OFFSET          0x600
-#define RCFW_PF_COMM_PROD_OFFSET       0xc
-#define RCFW_VF_COMM_PROD_OFFSET       0xc
+#define RCFW_PF_VF_COMM_PROD_OFFSET    0xc
 #define RCFW_COMM_TRIG_OFFSET          0x100
 #define RCFW_COMM_SIZE                 0x104
 
@@ -235,7 +234,7 @@ int bnxt_qplib_rcfw_start_irq(struct bnxt_qplib_rcfw *rcfw, int msix_vector,
                              bool need_init);
 int bnxt_qplib_enable_rcfw_channel(struct bnxt_qplib_rcfw *rcfw,
                                   int msix_vector,
-                                  int cp_bar_reg_off, int virt_fn,
+                                  int cp_bar_reg_off,
                                   aeq_handler_t aeq_handler);
 
 struct bnxt_qplib_rcfw_sbuf *bnxt_qplib_rcfw_alloc_sbuf(