[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250927093930.552191-1-pavan.chebbi@broadcom.com>
Date: Sat, 27 Sep 2025 02:39:25 -0700
From: Pavan Chebbi <pavan.chebbi@...adcom.com>
To: jgg@...pe.ca,
michael.chan@...adcom.com
Cc: dave.jiang@...el.com,
saeedm@...dia.com,
Jonathan.Cameron@...wei.com,
davem@...emloft.net,
corbet@....net,
edumazet@...gle.com,
gospo@...adcom.com,
kuba@...nel.org,
netdev@...r.kernel.org,
pabeni@...hat.com,
andrew+netdev@...n.ch,
selvin.xavier@...adcom.com,
leon@...nel.org,
kalesh-anakkur.purayil@...adcom.com,
Pavan Chebbi <pavan.chebbi@...adcom.com>
Subject: [PATCH net-next v4 0/5] bnxt_fwctl: fwctl for Broadcom Netxtreme devices
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/
v4: In patch #4, added the missing kfree on error for response
buffer. Improved documentation in patch #5 based on comments
from Dave.
v3: Addressed the review comments as below
Patch #1: Removed redundant common.h [thanks Saeed]
Patch #2 and #3 merged into a single patch [thanks Jonathan]
Patch #3: Addressed comments from Jonathan
Patch #4 and #5: Addressed comments from Jonathan and Dave
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/
The following are changes since commit fec734e8d564d55fb6bd4909ae2e68814d21d0a1:
Merge tag 'riscv-for-linus-v6.17-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux
and are available in the git repository at:
https://github.com/pavanchebbi/linux/tree/bnxt_fwctl_v4
Pavan Chebbi (5):
bnxt_en: Move common definitions to include/linux/bnxt/
bnxt_en: Refactor aux bus functions to be more generic
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 | 78 +++
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 | 454 ++++++++++++++++++
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 | 12 +-
.../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 | 245 +++++++---
.../bnxt_ulp.h => include/linux/bnxt/ulp.h | 22 +-
include/uapi/fwctl/bnxt.h | 64 +++
include/uapi/fwctl/fwctl.h | 1 +
21 files changed, 858 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
rename drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h => include/linux/bnxt/ulp.h (87%)
create mode 100644 include/uapi/fwctl/bnxt.h
--
2.39.1
Powered by blists - more mailing lists