[PATCH v4 0/6] Add Auxiliary driver support

Ajit Khaparde
2022-11-09T18:42:58Z

[-- Attachment #1: Type: text/plain, Size: 2007 bytes --]

Add auxiliary device driver for Broadcom devices.
The bnxt_en driver will register and initialize an aux device
if RDMA is enabled in the underlying device.
The bnxt_re driver will then probe and initialize the
RoCE interfaces with the infiniband stack.

We got rid of the bnxt_en_ops which the bnxt_re driver used to
communicate with bnxt_en.
Similarly We have tried to clean up most of the bnxt_ulp_ops.
In most of the cases we used the functions and entry points provided
by the auxiliary bus driver framework.
And now these are the minimal functions needed to support the functionality.

We will try to work on getting rid of the remaining if we find any
other viable option in future.

v1->v2:
- Incorporated review comments including usage of ulp_id &
complex function indirections.
- Used function calls provided by the auxiliary bus interface
instead of proprietary calls.
- Refactor code to remove ROCE driver's access to bnxt structure.

v2->v3:
- Addressed review comments including cleanup of some unnecessary wrappers
- Fixed warnings seen during cross compilation

v3->v4:
- Cleaned up bnxt_ulp.c and bnxt_ulp.h further
- Removed some more dead code
- Sending the patchset as a standalone series

Please apply. Thanks.

Ajit Khaparde (5):
bnxt_en: Add auxiliary driver support
RDMA/bnxt_re: Use auxiliary driver interface
bnxt_en: Remove usage of ulp_id
bnxt_en: Use direct API instead of indirection
bnxt_en: Use auxiliary bus calls over proprietary calls

Hongguang Gao (1):
bnxt_en: Remove struct bnxt access from RoCE driver

drivers/infiniband/hw/bnxt_re/bnxt_re.h | 9 +-
drivers/infiniband/hw/bnxt_re/main.c | 578 +++++++-----------
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 10 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 8 +
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 388 ++++++------
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h | 52 +-
6 files changed, 463 insertions(+), 582 deletions(-)

--
2.37.1 (Apple Git-137.1)