netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] Add Auxiliary driver support
@ 2023-01-08  3:02 Ajit Khaparde
  2023-01-08  3:02 ` [PATCH 1/8] bnxt_en: Add auxiliary " Ajit Khaparde
                   ` (8 more replies)
  0 siblings, 9 replies; 13+ messages in thread
From: Ajit Khaparde @ 2023-01-08  3:02 UTC (permalink / raw)
  To: ajit.khaparde
  Cc: andrew.gospodarek, davem, edumazet, jgg, kuba, leon,
	linux-kernel, linux-rdma, michael.chan, netdev, pabeni,
	selvin.xavier

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


Ajit Khaparde <ajit.khaparde@broadcom.com>
Dec 7, 2022, 9:53 AM
to me, andrew.gospodarek, davem, edumazet, jgg, kuba, leon, linux-kernel, linux-rdma, michael.chan, netdev, pabeni, selvin.xavier

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

v4->v5:
- Removed the SRIOV config callback which bnxt_en driver was calling into
  bnxt_re driver.
- Removed excessive checks for rdev and other pointers.

v5->v6:
- Removed excessive checks for dev and other pointers
- Remove runtime interrupt vector allocation. bnxt_en preallocates
interrupt vectors for bnxt_re to use.

Please apply. Thanks.

Ajit Khaparde (7):
  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
  RDMA/bnxt_re: Remove the sriov config callback
  bnxt_en: Remove runtime interrupt vector allocation

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

 drivers/infiniband/hw/bnxt_re/bnxt_re.h       |  10 +-
 drivers/infiniband/hw/bnxt_re/main.c          | 635 +++++++-----------
 drivers/net/ethernet/broadcom/bnxt/bnxt.c     |  11 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |   8 +
 .../net/ethernet/broadcom/bnxt/bnxt_sriov.c   |   7 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 489 ++++++--------
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h |  57 +-
 7 files changed, 494 insertions(+), 723 deletions(-)

-- 
2.37.1 (Apple Git-137.1)


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4218 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-01-12 19:20 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-08  3:02 [PATCH 0/8] Add Auxiliary driver support Ajit Khaparde
2023-01-08  3:02 ` [PATCH 1/8] bnxt_en: Add auxiliary " Ajit Khaparde
2023-01-10 22:51   ` Jakub Kicinski
2023-01-10 23:49     ` Ajit Khaparde
2023-01-12 19:08   ` kernel test robot
2023-01-08  3:02 ` [PATCH 2/8] RDMA/bnxt_re: Use auxiliary driver interface Ajit Khaparde
2023-01-08  3:02 ` [PATCH 3/8] bnxt_en: Remove usage of ulp_id Ajit Khaparde
2023-01-08  3:02 ` [PATCH 4/8] bnxt_en: Use direct API instead of indirection Ajit Khaparde
2023-01-08  3:02 ` [PATCH 5/8] bnxt_en: Use auxiliary bus calls over proprietary calls Ajit Khaparde
2023-01-08  3:02 ` [PATCH 6/8] bnxt_en: Remove struct bnxt access from RoCE driver Ajit Khaparde
2023-01-08  3:02 ` [PATCH 7/8] RDMA/bnxt_re: Remove the sriov config callback Ajit Khaparde
2023-01-08  3:02 ` [PATCH 8/8] bnxt_en: Remove runtime interrupt vector allocation Ajit Khaparde
2023-01-10  8:38 ` [PATCH 0/8] Add Auxiliary driver support Leon Romanovsky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).