This series adds ionic Shared Receive Queue support and lets firmware assign
CQ/SRQ IDs when the LIF advertises qid-allocation capability.
Patch 1: extends the RDMA LIF identity with SRQ qtype and alloc_qid_cap.
Patch 2: uses that for firmware-assigned CQ IDs and splits CQ create/destroy
so cq_tbl is updated only after the ID is known, and removed before the ID
is returned to firmware.
Patches 3: Refactor RQ state into ionic_rq so QP RQ and SRQ share init/destroy.
Patches 4-5: add SRQ verbs and EQ events. Userspace ABI field srqid is new
with this series;
rdma-core PR: https://github.com/linux-rdma/rdma-core/pull/1799
Net changes pull request:
he following changes since commit 93f51579e7df248780214094418f205253383cc5:
Linux 7.3-rc4 (2026-09-20 13:48:15 -0700)
are available in the Git repository at:
https://github.com/abhijitG-xlnx/linux.git ionic-shared
for you to fetch changes up to 0de2c94091670f14c33029a793083516d34ef277:
net: ionic: Fetch qid allocation and SRQ capability from firmware (2026-09-22 11:14:02 +0530)
v2:
- Addressed sashiko review comments
- https://lore.kernel.org/linux-rdma/20260908090802.152142-1-abhijit.gangurde@amd.com/T/#t
Abhijit Gangurde (2):
net: ionic: Fetch qid allocation and SRQ capability from firmware
RDMA/ionic: support firmware-assigned CQ IDs
Amit Kumar (3):
RDMA/ionic: segregate rq related fields from ionic_qp into a new
ionic_rq struct
RDMA/ionic: add Shared receive queue (SRQ) support
RDMA/ionic: implement SRQ event handling support
drivers/infiniband/hw/ionic/ionic_admin.c | 117 ++-
.../infiniband/hw/ionic/ionic_controlpath.c | 782 +++++++++++++-----
drivers/infiniband/hw/ionic/ionic_datapath.c | 98 +--
drivers/infiniband/hw/ionic/ionic_fw.h | 74 +-
drivers/infiniband/hw/ionic/ionic_ibdev.c | 20 +
drivers/infiniband/hw/ionic/ionic_ibdev.h | 85 +-
drivers/infiniband/hw/ionic/ionic_lif_cfg.c | 2 +
drivers/infiniband/hw/ionic/ionic_lif_cfg.h | 2 +
.../net/ethernet/pensando/ionic/ionic_if.h | 31 +-
include/uapi/rdma/ionic-abi.h | 2 +-
10 files changed, 922 insertions(+), 291 deletions(-)
--
2.43.0