mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [net-next, v3 00/10] Introducing Broadcom BNGE Ethernet Driver
@ 2025-07-01 14:34 Vikas Gupta
  2025-07-01 14:34 ` [net-next, v3 01/10] bng_en: Add PCI interface Vikas Gupta
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Vikas Gupta @ 2025-07-01 14:34 UTC (permalink / raw)
  To: davem, edumazet, kuba, pabeni, andrew+netdev, horms
  Cc: netdev, linux-kernel, michael.chan, pavan.chebbi,
	vsrama-krishna.nemani, Vikas Gupta

Hi,

This patch series introduces the Ethernet driver for Broadcom’s
BCM5770X chip family, which supports 50/100/200/400/800 Gbps
link speeds. The driver is built as the bng_en.ko kernel module.

To keep the series within a reviewable size (~5K lines of code), this initial
submission focuses on the core infrastructure and initialization, including:
1) PCIe support (device IDs, probe/remove)
2) Devlink support
3) Firmware communication mechanism
4) Creation of network device
5) PF Resource management (rings, IRQs, etc. for netdev & aux dev)

Support for Tx/Rx datapaths, link management, ethtool/devlink operations and
additional features will be introduced in the subsequent patch series.

The bng_en driver shares the bnxt_hsi.h file with the bnxt_en driver, as the bng_en
driver leverages the hardware communication protocol used by the bnxt_en driver.

Changes from:
=====================================================================
v2->v3
 Addressed following comments by Jakub Kicinski
 Patch 04/10:
  - Move devlink register at appropriate place.
 Patch 10/10:
  - Free skb in xmit call

=====================================================================
v1->v2

Addressed warnings and errors in the following patches:
-Patch 8/10
-Patch 10/10

Addressed the following major comments by Vadim Fedorenko on Patch 1/10:
Patch 1/10:
  - Use of the dma_set_mask_and_coherent() API.
Patch 2/10:
  - Added error logs via extack.
Patch 3/10:
  - Renamed functions to use the hwrm prefix. This change affects other
patches in the series as well.
=====================================================================


Thanks,
Vikas


Vikas Gupta (10):
  bng_en: Add PCI interface
  bng_en: Add devlink interface
  bng_en: Add firmware communication mechanism
  bng_en: Add initial interaction with firmware
  bng_en: Add ring memory allocation support
  bng_en: Add backing store support
  bng_en: Add resource management support
  bng_en: Add irq allocation support
  bng_en: Initialize default configuration
  bng_en: Add a network device

 MAINTAINERS                                   |   6 +
 drivers/net/ethernet/broadcom/Kconfig         |   9 +
 drivers/net/ethernet/broadcom/Makefile        |   1 +
 drivers/net/ethernet/broadcom/bnge/Makefile   |  12 +
 drivers/net/ethernet/broadcom/bnge/bnge.h     | 218 ++++++
 .../net/ethernet/broadcom/bnge/bnge_core.c    | 388 ++++++++++
 .../net/ethernet/broadcom/bnge/bnge_devlink.c | 306 ++++++++
 .../net/ethernet/broadcom/bnge/bnge_devlink.h |  18 +
 .../net/ethernet/broadcom/bnge/bnge_ethtool.c |  33 +
 .../net/ethernet/broadcom/bnge/bnge_ethtool.h |   9 +
 .../net/ethernet/broadcom/bnge/bnge_hwrm.c    | 508 +++++++++++++
 .../net/ethernet/broadcom/bnge/bnge_hwrm.h    | 110 +++
 .../ethernet/broadcom/bnge/bnge_hwrm_lib.c    | 703 ++++++++++++++++++
 .../ethernet/broadcom/bnge/bnge_hwrm_lib.h    |  27 +
 .../net/ethernet/broadcom/bnge/bnge_netdev.c  | 268 +++++++
 .../net/ethernet/broadcom/bnge/bnge_netdev.h  | 206 +++++
 .../net/ethernet/broadcom/bnge/bnge_resc.c    | 605 +++++++++++++++
 .../net/ethernet/broadcom/bnge/bnge_resc.h    |  94 +++
 .../net/ethernet/broadcom/bnge/bnge_rmem.c    | 438 +++++++++++
 .../net/ethernet/broadcom/bnge/bnge_rmem.h    | 188 +++++
 20 files changed, 4147 insertions(+)
 create mode 100644 drivers/net/ethernet/broadcom/bnge/Makefile
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_core.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_devlink.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_devlink.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_ethtool.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_ethtool.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_hwrm.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_hwrm.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_hwrm_lib.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_hwrm_lib.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_netdev.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_netdev.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_resc.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_resc.h
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_rmem.c
 create mode 100644 drivers/net/ethernet/broadcom/bnge/bnge_rmem.h

-- 
2.47.1


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

end of thread, other threads:[~2025-07-08  2:10 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-01 14:34 [net-next, v3 00/10] Introducing Broadcom BNGE Ethernet Driver Vikas Gupta
2025-07-01 14:34 ` [net-next, v3 01/10] bng_en: Add PCI interface Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 02/10] bng_en: Add devlink interface Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 03/10] bng_en: Add firmware communication mechanism Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 04/10] bng_en: Add initial interaction with firmware Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 05/10] bng_en: Add ring memory allocation support Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 06/10] bng_en: Add backing store support Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 07/10] bng_en: Add resource management support Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 08/10] bng_en: Add irq allocation support Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 09/10] bng_en: Initialize default configuration Vikas Gupta
2025-07-01 14:35 ` [net-next, v3 10/10] bng_en: Add a network device Vikas Gupta
2025-07-08  2:10 ` [net-next, v3 00/10] Introducing Broadcom BNGE Ethernet Driver patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®