Commit b4bb2ac0 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

Merge branch 'add-vf-drivers-for-wangxun-virtual-functions'

Mengyuan Lou says:

====================
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 link status changeing flow.
Patches 9–12 implement the ngbevf driver, mirroring the functionality
added in txgbevf.

v2: https://lore.kernel.org/20250625102058.19898-1-mengyuanlou@net-swift.com
v1: https://lore.kernel.org/20250611083559.14175-1-mengyuanlou@net-swift.com
====================

Link: https://patch.msgid.link/20250704094923.652-1-mengyuanlou@net-swift.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 6a971e48 cfeedf6a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -58,7 +58,9 @@ Contents:
   ti/tlan
   ti/icssg_prueth
   wangxun/txgbe
   wangxun/txgbevf
   wangxun/ngbe
   wangxun/ngbevf

.. only::  subproject and html

+16 −0
Original line number Diff line number Diff line
.. SPDX-License-Identifier: GPL-2.0+

==================================================================
Linux Base Virtual Function Driver for Wangxun(R) Gigabit Ethernet
==================================================================

WangXun Gigabit Virtual Function Linux driver.
Copyright(c) 2015 - 2025 Beijing WangXun Technology Co., Ltd.

Support
=======
For general information, go to the website at:
https://www.net-swift.com

If you got any problem, contact Wangxun support team via nic-support@net-swift.com
and Cc: netdev.
+16 −0
Original line number Diff line number Diff line
.. SPDX-License-Identifier: GPL-2.0+

===========================================================================
Linux Base Virtual Function Driver for Wangxun(R) 10/25/40 Gigabit Ethernet
===========================================================================

WangXun 10/25/40 Gigabit Virtual Function Linux driver.
Copyright(c) 2015 - 2025 Beijing WangXun Technology Co., Ltd.

Support
=======
For general information, go to the website at:
https://www.net-swift.com

If you got any problem, contact Wangxun support team via nic-support@net-swift.com
and Cc: netdev.
+33 −0
Original line number Diff line number Diff line
@@ -64,4 +64,37 @@ config TXGBE
	  To compile this driver as a module, choose M here. The module
	  will be called txgbe.

config TXGBEVF
	tristate "Wangxun(R) 10/25/40G Virtual Function Ethernet support"
	depends on PCI
	depends on PCI_MSI
	select LIBWX
	select PHYLINK
	help
	  This driver supports virtual functions for SP1000A, WX1820AL,
	  WX5XXX, WX5XXXAL.

	  This driver was formerly named txgbevf.

	  More specific information on configuring the driver is in
	  <file:Documentation/networking/device_drivers/ethernet/wangxun/txgbevf.rst>.

	  To compile this driver as a module, choose M here. MSI-X interrupt
	  support is required for this driver to work correctly.

config NGBEVF
	tristate "Wangxun(R) GbE Virtual Function Ethernet support"
	depends on PCI_MSI
	select LIBWX
	help
	  This driver supports virtual functions for WX1860, WX1860AL.

	  This driver was formerly named ngbevf.

	  More specific information on configuring the driver is in
	  <file:Documentation/networking/device_drivers/ethernet/wangxun/ngbevf.rst>.

	  To compile this driver as a module, choose M here. MSI-X interrupt
	  support is required for this driver to work correctly.

endif # NET_VENDOR_WANGXUN
+2 −0
Original line number Diff line number Diff line
@@ -5,4 +5,6 @@

obj-$(CONFIG_LIBWX) += libwx/
obj-$(CONFIG_TXGBE) += txgbe/
obj-$(CONFIG_TXGBEVF) += txgbevf/
obj-$(CONFIG_NGBE) += ngbe/
obj-$(CONFIG_NGBEVF) += ngbevf/
Loading