Hi, This patch series introduces the Next generation RoCE driver for Broadcom’s BCM5770X chip family, which supports 50/100/200/400/800G link speeds. The driver is built as the bng_re.ko kernel module. To keep the series within a reviewable size (~3.5K lines of code), this initial submission focuses on the core infrastructure and hardware initialization, including: 1) bng_en: Auxiliary device support 2) Auxiliary device support (probe/remove) 3) Get the required resources from bng_en 4) Firmware communication mechanism 5) Allocation of ib device 6) Basic debugfs infrastructure support 7) Get the device capability (QPs, CQs, SRQs, etc.) 8) Initialize the Hardware Support for Verbs, User library and additional features will be built on top of this patchset. hence, they will be introduced in the subsequent patch series. The bng_re driver shares the roce_hsi.h file with the bnxt_re driver, as the bng_re driver leverages the hardware communication protocol used by the bnxt_re driver. Thanks, Siva Siva Reddy Kallam (7): RDMA/bng_re: Add Auxiliary interface RDMA/bng_re: Register and get the resources from bnge driver RDMA/bng_re: Allocate required memory resources for Firmware channel RDMA/bng_re: Add infrastructure for enabling Firmware channel RDMA/bng_re: Enable Firmware channel and query device attributes RDMA/bng_re: Add basic debugfs infrastructure RDMA/bng_re: Initialize the Firmware and Hardware Vikas Gupta (1): bng_en: Add RoCE aux device support MAINTAINERS | 7 + drivers/infiniband/Kconfig | 1 + drivers/infiniband/hw/Makefile | 1 + drivers/infiniband/hw/bng_re/Kconfig | 10 + drivers/infiniband/hw/bng_re/Makefile | 8 + drivers/infiniband/hw/bng_re/bng_debugfs.c | 39 + drivers/infiniband/hw/bng_re/bng_debugfs.h | 12 + drivers/infiniband/hw/bng_re/bng_dev.c | 539 ++++++++++++ drivers/infiniband/hw/bng_re/bng_fw.c | 786 ++++++++++++++++++ drivers/infiniband/hw/bng_re/bng_fw.h | 211 +++++ drivers/infiniband/hw/bng_re/bng_re.h | 86 ++ drivers/infiniband/hw/bng_re/bng_res.c | 279 +++++++ drivers/infiniband/hw/bng_re/bng_res.h | 215 +++++ drivers/infiniband/hw/bng_re/bng_sp.c | 133 +++ drivers/infiniband/hw/bng_re/bng_sp.h | 47 ++ drivers/infiniband/hw/bng_re/bng_tlv.h | 128 +++ drivers/net/ethernet/broadcom/bnge/Makefile | 3 +- drivers/net/ethernet/broadcom/bnge/bnge.h | 10 + .../net/ethernet/broadcom/bnge/bnge_auxr.c | 258 ++++++ .../net/ethernet/broadcom/bnge/bnge_auxr.h | 84 ++ .../net/ethernet/broadcom/bnge/bnge_core.c | 18 +- .../net/ethernet/broadcom/bnge/bnge_hwrm.c | 40 + .../net/ethernet/broadcom/bnge/bnge_hwrm.h | 2 + .../net/ethernet/broadcom/bnge/bnge_resc.c | 12 + .../net/ethernet/broadcom/bnge/bnge_resc.h | 1 + 25 files changed, 2928 insertions(+), 2 deletions(-) create mode 100644 drivers/infiniband/hw/bng_re/Kconfig create mode 100644 drivers/infiniband/hw/bng_re/Makefile create mode 100644 drivers/infiniband/hw/bng_re/bng_debugfs.c create mode 100644 drivers/infiniband/hw/bng_re/bng_debugfs.h create mode 100644 drivers/infiniband/hw/bng_re/bng_dev.c create mode 100644 drivers/infiniband/hw/bng_re/bng_fw.c create mode 100644 drivers/infiniband/hw/bng_re/bng_fw.h create mode 100644 drivers/infiniband/hw/bng_re/bng_re.h create mode 100644 drivers/infiniband/hw/bng_re/bng_res.c create mode 100644 drivers/infiniband/hw/bng_re/bng_res.h create mode 100644 drivers/infiniband/hw/bng_re/bng_sp.c create mode 100644 drivers/infiniband/hw/bng_re/bng_sp.h create mode 100644 drivers/infiniband/hw/bng_re/bng_tlv.h create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_auxr.c create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_auxr.h -- 2.34.1