This is the first series out of few more forthcoming series to refactor Broadcom's RoCE driver. This series contains patches to refactor control path. Since this is first series, there may be few code section which may look redundant or overkill but those will be taken care in future patch series. These patches apply clean on tip of for-next branch. Each patch in this series is tested against user and kernel functionality. v2->v3 -- Rebased the series on tip of for-nxt, linux-5.6-rc1 v1->v2 patch 0001 -- removed unwind logic when qp destroy fails. -- removed atomic dec out of mutex lock patch 0003 -- saved memset by using default initializer for hwq_attr and sginfo patch 0004 -- saved memset by using default initializer for rattr. patch 0008 -- a new patch to remove dev_err/dbg/warn/info from driver. Devesh Sharma (8): RDMA/bnxt_re: Refactor queue pair creation code RDMA/bnxt_re: Replace chip context structure with pointer RDMA/bnxt_re: Refactor hardware queue memory allocation RDMA/bnxt_re: Refactor net ring allocation function RDMA/bnxt_re: Refactor command queue management code RDMA/bnxt_re: Refactor notification queue management code RDMA/bnxt_re: Refactor doorbell management functions RDMA/bnxt_re: use ibdev based message printing functions drivers/infiniband/hw/bnxt_re/bnxt_re.h | 24 +- drivers/infiniband/hw/bnxt_re/ib_verbs.c | 900 ++++++++++++++++++----------- drivers/infiniband/hw/bnxt_re/main.c | 264 +++++---- drivers/infiniband/hw/bnxt_re/qplib_fp.c | 416 ++++++------- drivers/infiniband/hw/bnxt_re/qplib_fp.h | 94 +-- drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 467 +++++++++------ drivers/infiniband/hw/bnxt_re/qplib_rcfw.h | 85 +-- drivers/infiniband/hw/bnxt_re/qplib_res.c | 470 +++++++++------ drivers/infiniband/hw/bnxt_re/qplib_res.h | 145 ++++- drivers/infiniband/hw/bnxt_re/qplib_sp.c | 48 +- 10 files changed, 1737 insertions(+), 1176 deletions(-) -- 1.8.3.1