[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250611083559.14175-1-mengyuanlou@net-swift.com>
Date: Wed, 11 Jun 2025 16:35:47 +0800
From: Mengyuan Lou <mengyuanlou@...-swift.com>
To: netdev@...r.kernel.org
Cc: kuba@...nel.org,
pabeni@...hat.com,
horms@...nel.org,
andrew+netdev@...n.ch,
duanqiangwen@...-swift.com,
linglingzhang@...stnetic.com,
jiawenwu@...-swift.com,
Mengyuan Lou <mengyuanlou@...-swift.com>
Subject: [PATCH net-next 00/12] Add vf drivers for wangxun virtual functions
Introduces basic support for Wangxun’s virtual function (VF) network
drivers, specifically txgbevf and ngbevf. These drivers provide SR-IOV
VF functionality for Wangxun 10/25/40G network devices.
The first three patches add common APIs for Wangxun VF drivers, including
mailbox communication and shared initialization logic.These abstractions
are placed in libwx to reduce duplication across VF drivers.
Patches 4–8 introduce the txgbevf driver, including:
PCI device initialization, Hardware reset, Interrupt setup, Rx/Tx datapath
implementation and Basic phylink integration for link status checking.
Patches 9–12 implement the ngbevf driver, mirroring the functionality
added in txgbevf.
Mengyuan Lou (12):
net: libwx: add mailbox api for wangxun vf drivers
net: libwx: add base vf api for vf drivers
net: libwx: add wangxun vf common api
net: wangxun: add txgbevf build
net: txgbevf: add sw init pci info and reset hardware
net: txgbevf: init interrupts and request irqs
net: txgbevf: Support Rx and Tx process path
net: txgbevf: add phylink check flow
net: wangxun: add ngbevf build
net: ngbevf: add sw init pci info and reset hardware
net: ngbevf: init interrupts and request irqs
net: ngbevf: add phylink check flow
.../device_drivers/ethernet/index.rst | 2 +
.../ethernet/wangxun/ngbevf.rst | 16 +
.../ethernet/wangxun/txgbevf.rst | 16 +
drivers/net/ethernet/wangxun/Kconfig | 33 +
drivers/net/ethernet/wangxun/Makefile | 2 +
drivers/net/ethernet/wangxun/libwx/Makefile | 1 +
drivers/net/ethernet/wangxun/libwx/wx_hw.c | 14 +-
drivers/net/ethernet/wangxun/libwx/wx_hw.h | 2 +
drivers/net/ethernet/wangxun/libwx/wx_lib.c | 29 +-
drivers/net/ethernet/wangxun/libwx/wx_mbx.c | 256 +++++++
drivers/net/ethernet/wangxun/libwx/wx_mbx.h | 22 +
drivers/net/ethernet/wangxun/libwx/wx_type.h | 9 +
drivers/net/ethernet/wangxun/libwx/wx_vf.c | 642 ++++++++++++++++++
drivers/net/ethernet/wangxun/libwx/wx_vf.h | 124 ++++
.../net/ethernet/wangxun/libwx/wx_vf_common.c | 365 ++++++++++
.../net/ethernet/wangxun/libwx/wx_vf_common.h | 29 +
.../net/ethernet/wangxun/libwx/wx_vf_lib.c | 290 ++++++++
.../net/ethernet/wangxun/libwx/wx_vf_lib.h | 14 +
drivers/net/ethernet/wangxun/ngbevf/Makefile | 9 +
.../net/ethernet/wangxun/ngbevf/ngbevf_main.c | 308 +++++++++
.../net/ethernet/wangxun/ngbevf/ngbevf_type.h | 29 +
drivers/net/ethernet/wangxun/txgbevf/Makefile | 9 +
.../ethernet/wangxun/txgbevf/txgbevf_main.c | 402 +++++++++++
.../ethernet/wangxun/txgbevf/txgbevf_type.h | 26 +
24 files changed, 2639 insertions(+), 10 deletions(-)
create mode 100644 Documentation/networking/device_drivers/ethernet/wangxun/ngbevf.rst
create mode 100644 Documentation/networking/device_drivers/ethernet/wangxun/txgbevf.rst
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf.c
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf.h
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf_common.c
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf_common.h
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf_lib.c
create mode 100644 drivers/net/ethernet/wangxun/libwx/wx_vf_lib.h
create mode 100644 drivers/net/ethernet/wangxun/ngbevf/Makefile
create mode 100644 drivers/net/ethernet/wangxun/ngbevf/ngbevf_main.c
create mode 100644 drivers/net/ethernet/wangxun/ngbevf/ngbevf_type.h
create mode 100644 drivers/net/ethernet/wangxun/txgbevf/Makefile
create mode 100644 drivers/net/ethernet/wangxun/txgbevf/txgbevf_main.c
create mode 100644 drivers/net/ethernet/wangxun/txgbevf/txgbevf_type.h
--
2.30.1
Powered by blists - more mailing lists