Thread (26 messages) 26 messages, 5 authors, 2025-09-26

Re: [PATCH net-next v2 0/6] bnxt_fwctl: fwctl for Broadcom Netxtreme devices

From: Saeed Mahameed <saeed@kernel.org>
Date: 2025-09-23 16:25:26

On 23 Sep 02:58, Pavan Chebbi wrote:
Introducing bnxt_fwctl which follows along Jason's work [1].
It is an aux bus driver that enables fwctl for Broadcom
NetXtreme 574xx, 575xx and 576xx series chipsets by using
bnxt driver's capability to talk to devices' firmware.

The first patch moves the ULP definitions to a common place
inside include/linux/bnxt/. The second and third patches
refactor and extend the existing bnxt aux bus functions to
be able to add more than one auxiliary device. The last three
patches create an additional bnxt aux device, add bnxt_fwctl,
and the documentation.

[1] https://lore.kernel.org/netdev/0-v5-642aa0c94070+4447f-fwctl_jgg@nvidia.com/ (local)

v2: In patch #5, fixed a sparse warning where a __le16 was
degraded to an integer. Also addressed kdoc warnings for
include/uapi/fwctl/bnxt.h in the same patch.

v1: https://lore.kernel.org/netdev/20250922090851.719913-1-pavan.chebbi@broadcom.com/ (local)

Pavan Chebbi (6):
 bnxt_en: Move common definitions to include/linux/bnxt/
 bnxt_en: Refactor aux bus functions to be generic
 bnxt_en: Make a lookup table for supported aux bus devices
 bnxt_en: Create an aux device for fwctl
 bnxt_fwctl: Add bnxt fwctl device
 bnxt_fwctl: Add documentation entries

.../userspace-api/fwctl/bnxt_fwctl.rst        |  27 ++
Documentation/userspace-api/fwctl/fwctl.rst   |   1 +
Documentation/userspace-api/fwctl/index.rst   |   1 +
MAINTAINERS                                   |   6 +
drivers/fwctl/Kconfig                         |  11 +
drivers/fwctl/Makefile                        |   1 +
drivers/fwctl/bnxt/Makefile                   |   4 +
drivers/fwctl/bnxt/main.c                     | 297 ++++++++++++++++++
drivers/infiniband/hw/bnxt_re/debugfs.c       |   2 +-
drivers/infiniband/hw/bnxt_re/main.c          |   2 +-
drivers/infiniband/hw/bnxt_re/qplib_fp.c      |   2 +-
drivers/infiniband/hw/bnxt_re/qplib_res.h     |   2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.c     |  30 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  13 +-
.../net/ethernet/broadcom/bnxt/bnxt_devlink.c |   2 +-
.../net/ethernet/broadcom/bnxt/bnxt_ethtool.c |   4 +-
.../net/ethernet/broadcom/bnxt/bnxt_sriov.c   |   2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 266 ++++++++++++----
include/linux/bnxt/common.h                   |  20 ++
.../bnxt_ulp.h => include/linux/bnxt/ulp.h    |  14 +-
include/uapi/fwctl/bnxt.h                     |  63 ++++
include/uapi/fwctl/fwctl.h                    |   1 +
22 files changed, 683 insertions(+), 88 deletions(-)
create mode 100644 Documentation/userspace-api/fwctl/bnxt_fwctl.rst
create mode 100644 drivers/fwctl/bnxt/Makefile
create mode 100644 drivers/fwctl/bnxt/main.c
create mode 100644 include/linux/bnxt/common.h
rename drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h => include/linux/bnxt/ulp.h (90%)
create mode 100644 include/uapi/fwctl/bnxt.h
We need to better plan the target tree, this series is touching 3
sub-systems, this is very dangerous this late in the release cycle.

To apply this I would recommend a side branch to be pulled into all
subsystems at once before merge window,

 From the patch planing it seems that:
1. First patch infra common code movement. (rdma + netdev)
2. 2nd..4th patches aux refactoring (netdev only)
3. final patch bnxt fwctl (fwctl only)


-- 
2.39.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help