Re: [net-next PATCH 00/15] eth: fbnic: Add network driver for Meta Platforms Host Network Interface

Przemek Kitszel
2024-04-05T14:01:58Z

On 4/3/24 22:08, Alexander Duyck wrote:
> This patch set includes the necessary patches to enable basic Tx and Rx
> over the Meta Platforms Host Network Interface. To do this we introduce a
> new driver and driver and directories in the form of
> "drivers/net/ethernet/meta/fbnic".
>
> Due to submission limits the general plan to submit a minimal driver for
> now almost equivalent to a UEFI driver in functionality, and then follow up
> over the coming weeks enabling additional offloads and more features for
> the device.
>
> The general plan is to look at adding support for ethtool, statistics, and
> start work on offloads in the next set of patches.
>
> ---
>
> Alexander Duyck (15):
> PCI: Add Meta Platforms vendor ID
> eth: fbnic: add scaffolding for Meta's NIC driver
> eth: fbnic: Allocate core device specific structures and devlink interface
> eth: fbnic: Add register init to set PCIe/Ethernet device config
> eth: fbnic: add message parsing for FW messages
> eth: fbnic: add FW communication mechanism
> eth: fbnic: allocate a netdevice and napi vectors with queues
> eth: fbnic: implement Tx queue alloc/start/stop/free
> eth: fbnic: implement Rx queue alloc/start/stop/free
> eth: fbnic: Add initial messaging to notify FW of our presence
> eth: fbnic: Enable Ethernet link setup
> eth: fbnic: add basic Tx handling
> eth: fbnic: add basic Rx handling
> eth: fbnic: add L2 address programming
> eth: fbnic: write the TCAM tables used for RSS control and Rx to host
>
>
> MAINTAINERS | 7 +
> drivers/net/ethernet/Kconfig | 1 +
> drivers/net/ethernet/Makefile | 1 +
> drivers/net/ethernet/meta/Kconfig | 29 +
> drivers/net/ethernet/meta/Makefile | 6 +
> drivers/net/ethernet/meta/fbnic/Makefile | 18 +
> drivers/net/ethernet/meta/fbnic/fbnic.h | 148 ++
> drivers/net/ethernet/meta/fbnic/fbnic_csr.h | 912 ++++++++
> .../net/ethernet/meta/fbnic/fbnic_devlink.c | 86 +
> .../net/ethernet/meta/fbnic/fbnic_drvinfo.h | 5 +
> drivers/net/ethernet/meta/fbnic/fbnic_fw.c | 823 ++++++++
> drivers/net/ethernet/meta/fbnic/fbnic_fw.h | 133 ++
> drivers/net/ethernet/meta/fbnic/fbnic_irq.c | 251 +++
> drivers/net/ethernet/meta/fbnic/fbnic_mac.c | 1025 +++++++++
> drivers/net/ethernet/meta/fbnic/fbnic_mac.h | 83 +
> .../net/ethernet/meta/fbnic/fbnic_netdev.c | 470 +++++
> .../net/ethernet/meta/fbnic/fbnic_netdev.h | 59 +
> drivers/net/ethernet/meta/fbnic/fbnic_pci.c | 633 ++++++
> drivers/net/ethernet/meta/fbnic/fbnic_rpc.c | 709 +++++++
> drivers/net/ethernet/meta/fbnic/fbnic_rpc.h | 189 ++
> drivers/net/ethernet/meta/fbnic/fbnic_tlv.c | 529 +++++
> drivers/net/ethernet/meta/fbnic/fbnic_tlv.h | 175 ++
> drivers/net/ethernet/meta/fbnic/fbnic_txrx.c | 1873 +++++++++++++++++
> drivers/net/ethernet/meta/fbnic/fbnic_txrx.h | 125 ++
> include/linux/pci_ids.h | 2 +
> 25 files changed, 8292 insertions(+)

Even if this is just a basic scaffolding for what will come, it's hard
to believe that no patch was co-developed, or should be marked as
authored-by some other developer. …