[PATCH rdma-next v3 0/6] RDMA/mana_ib: Enable RNIC adapter and populate it with GIDs

From: Konstantin Taranov
Date: Wed Apr 10 2024 - 04:43:09 EST


From: Konstantin Taranov <kotaranov@xxxxxxxxxxxxx>

This patch series creates RNIC adapter in mana_ib.
To create the adapter, we must create one EQ.
In the future patches, this EQ will be used for fatal RC QP error events.
In the future patches, we will also add more EQs for CQs.

mana_ib is served by mana ethernet for RAW QPs and by RNIC for RC QPs.
If RNIC adapter cannot be created in the HW, we fail loading mana_ib.
RNIC is available only for port 1.

As a minimal usage, this patch series brings adding and removing GIDs.
For this, we set master netdev to the ib device and set required port
parameters to get GIDs. RNIC of mana supports IPv6 and IPv4 addresses
that are stored in the HW. The MAC address is also stored in the RNIC.

v2->v3:
* On RNIC creation errors, we fail the loading. Removed corresponding checks.
* Revised commit messages.
* Removed unused members of new enums.
* Added a patch to set mac address to the series

v1->v2:
* Fixed rcu_read_unlock() and updated commit message in "Enable RoCE on port 1"

Konstantin Taranov (6):
RDMA/mana_ib: Add EQ creation for rnic adapter
RDMA/mana_ib: Create and destroy rnic adapter
RDMA/mana_ib: implement port parameters
RDMA/mana_ib: enable RoCE on port 1
RDMA/mana_ib: adding and deleting GIDs
RDMA/mana_ib: Configure mac address in RNIC

drivers/infiniband/hw/mana/device.c | 48 ++++++-
drivers/infiniband/hw/mana/main.c | 203 ++++++++++++++++++++++++++-
drivers/infiniband/hw/mana/mana_ib.h | 87 ++++++++++++
3 files changed, 330 insertions(+), 8 deletions(-)


base-commit: f10242b3da908dc9d4bfa040e6511a5b86522499
--
2.43.0