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 patche series. These patches apply clean on tip of for-next branch. Each patch in this series is tested against user and kernel functionality. Devesh Sharma (7): 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 drivers/infiniband/hw/bnxt_re/bnxt_re.h | 24 +- drivers/infiniband/hw/bnxt_re/ib_verbs.c | 670 +++++++++++++++++++---------- drivers/infiniband/hw/bnxt_re/main.c | 134 +++--- drivers/infiniband/hw/bnxt_re/qplib_fp.c | 423 +++++++++--------- drivers/infiniband/hw/bnxt_re/qplib_fp.h | 94 ++-- drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 474 ++++++++++++-------- drivers/infiniband/hw/bnxt_re/qplib_rcfw.h | 85 ++-- drivers/infiniband/hw/bnxt_re/qplib_res.c | 475 ++++++++++++-------- drivers/infiniband/hw/bnxt_re/qplib_res.h | 145 ++++++- drivers/infiniband/hw/bnxt_re/qplib_sp.c | 52 ++- 10 files changed, 1579 insertions(+), 997 deletions(-) -- 1.8.3.1