mbox series

[v4,for-next,0/6] RDMA/bnxt_re: driver update for supporting low latency push

Message ID 1685617837-15725-1-git-send-email-selvin.xavier@broadcom.com (mailing list archive)
Headers show
Series RDMA/bnxt_re: driver update for supporting low latency push | expand

Message

Selvin Xavier June 1, 2023, 11:10 a.m. UTC
The series aims to add support for Low latency push path in
some of the bnxt devices. The low latency implementation is
supported only for the user applications. Also, the code
is modified to use  common mmap helper functions exported
by IB core. 

User library changes are in the pull request
https://github.com/linux-rdma/rdma-core/pull/1321

Please review.

Thanks,
Selvin Xavier

v3-> v4:
  - Remove the newly added comp_mask in the alloc_pd resp. This is
    not required after using the new UAPI mechanism.
  - Return -EINVAL if WC page mmap requested for an unsupported
    adapter.

v2-> v3:
  - Rebasing after the merge window
  - Fix the return value check in bnxt_re_hwrm_qcfg

v1 - v2:
  - Fixes the review comments from Leon and Jason
  - As suggested by Jason, implements the new uapi
    driver definitions for allocating pages in the
    driver and return the cookie for mmap

Selvin Xavier (6):
  RDMA/bnxt_re: Use the common mmap helper functions
  RDMA/bnxt_re: Add disassociate ucontext support
  RDMA/bnxt_re: Query function capabilities from firmware
  RDMA/bnxt_re: Move the interface version to chip context structure
  RDMA/bnxt_re: Reorg the bar mapping
  RDMA/bnxt_re: Enable low latency push

 drivers/infiniband/hw/bnxt_re/bnxt_re.h    |   3 +
 drivers/infiniband/hw/bnxt_re/ib_verbs.c   | 263 ++++++++++++++++++++++++++---
 drivers/infiniband/hw/bnxt_re/ib_verbs.h   |  19 +++
 drivers/infiniband/hw/bnxt_re/main.c       | 117 ++++++++++++-
 drivers/infiniband/hw/bnxt_re/qplib_fp.c   |   4 +-
 drivers/infiniband/hw/bnxt_re/qplib_rcfw.c |   2 +-
 drivers/infiniband/hw/bnxt_re/qplib_rcfw.h |   1 +
 drivers/infiniband/hw/bnxt_re/qplib_res.c  | 177 ++++++++++++-------
 drivers/infiniband/hw/bnxt_re/qplib_res.h  |  33 +++-
 drivers/infiniband/hw/bnxt_re/qplib_sp.c   |   3 +
 drivers/infiniband/hw/bnxt_re/qplib_sp.h   |   1 +
 include/uapi/rdma/bnxt_re-abi.h            |  28 +++
 12 files changed, 549 insertions(+), 102 deletions(-)