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

eth: remove neterion/vxge

The last meaningful change to this driver was made by Jon in 2011.
As much as we'd like to believe that this is because the code is
perfect the chances are nobody is using this hardware.

Because of the size of this driver there is a nontrivial maintenance
cost to keeping this code around, in the last 2 years we're averaging
more than 1 change a month. Some of which require nontrivial review
effort, see commit 877fe9d4 ("Revert "drivers/net/ethernet/neterion/vxge:
Fix a use-after-free bug in vxge-main.c"") for example.

Let's try to remove this driver. In general, IMHO, we need to
establish a clear path for shedding dead code. It will be hard
to unless we have some experience trying to delete stuff.

Link: https://lore.kernel.org/r/20220701044234.706229-1-kuba@kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 3359619a
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -42,7 +42,6 @@ Contents:
   mellanox/mlx5
   microsoft/netvsc
   neterion/s2io
   neterion/vxge
   netronome/nfp
   pensando/ionic
   smsc/smc9
+0 −115
Original line number Diff line number Diff line
.. SPDX-License-Identifier: GPL-2.0

==============================================================================
Neterion's (Formerly S2io) X3100 Series 10GbE PCIe Server Adapter Linux driver
==============================================================================

.. Contents

  1) Introduction
  2) Features supported
  3) Configurable driver parameters
  4) Troubleshooting

1. Introduction
===============

This Linux driver supports all Neterion's X3100 series 10 GbE PCIe I/O
Virtualized Server adapters.

The X3100 series supports four modes of operation, configurable via
firmware:

	- Single function mode
	- Multi function mode
	- SRIOV mode
	- MRIOV mode

The functions share a 10GbE link and the pci-e bus, but hardly anything else
inside the ASIC. Features like independent hw reset, statistics, bandwidth/
priority allocation and guarantees, GRO, TSO, interrupt moderation etc are
supported independently on each function.

(See below for a complete list of features supported for both IPv4 and IPv6)

2. Features supported
=====================

i)   Single function mode (up to 17 queues)

ii)  Multi function mode (up to 17 functions)

iii) PCI-SIG's I/O Virtualization

       - Single Root mode: v1.0 (up to 17 functions)
       - Multi-Root mode: v1.0 (up to 17 functions)

iv)  Jumbo frames

       X3100 Series supports MTU up to 9600 bytes, modifiable using
       ip command.

v)   Offloads supported: (Enabled by default)

       - Checksum offload (TCP/UDP/IP) on transmit and receive paths
       - TCP Segmentation Offload (TSO) on transmit path
       - Generic Receive Offload (GRO) on receive path

vi)  MSI-X: (Enabled by default)

       Resulting in noticeable performance improvement (up to 7% on certain
       platforms).

vii) NAPI: (Enabled by default)

       For better Rx interrupt moderation.

viii)RTH (Receive Traffic Hash): (Enabled by default)

       Receive side steering for better scaling.

ix)  Statistics

       Comprehensive MAC-level and software statistics displayed using
       "ethtool -S" option.

x)   Multiple hardware queues: (Enabled by default)

       Up to 17 hardware based transmit and receive data channels, with
       multiple steering options (transmit multiqueue enabled by default).

3) Configurable driver parameters:
----------------------------------

i)  max_config_dev
       Specifies maximum device functions to be enabled.

       Valid range: 1-8

ii) max_config_port
       Specifies number of ports to be enabled.

       Valid range: 1,2

       Default: 1

iii) max_config_vpath
       Specifies maximum VPATH(s) configured for each device function.

       Valid range: 1-17

iv) vlan_tag_strip
       Enables/disables vlan tag stripping from all received tagged frames that
       are not replicated at the internal L2 switch.

       Valid range: 0,1 (disabled, enabled respectively)

       Default: 1

v)  addr_learn_en
       Enable learning the mac address of the guest OS interface in
       virtualization environment.

       Valid range: 0,1 (disabled, enabled respectively)

       Default: 0
+1 −2
Original line number Diff line number Diff line
@@ -13775,12 +13775,11 @@ L: netdev@vger.kernel.org
S:	Maintained
F:	net/sched/sch_netem.c
NETERION 10GbE DRIVERS (s2io/vxge)
NETERION 10GbE DRIVERS (s2io)
M:	Jon Mason <jdmason@kudzu.us>
L:	netdev@vger.kernel.org
S:	Supported
F:	Documentation/networking/device_drivers/ethernet/neterion/s2io.rst
F:	Documentation/networking/device_drivers/ethernet/neterion/vxge.rst
F:	drivers/net/ethernet/neterion/
NETFILTER
+0 −24
Original line number Diff line number Diff line
@@ -32,28 +32,4 @@ config S2IO
	  To compile this driver as a module, choose M here. The module
	  will be called s2io.

config VXGE
	tristate "Neterion (Exar) X3100 Series 10GbE PCIe Server Adapter"
	depends on PCI
	help
	  This driver supports Exar Corp's X3100 Series 10 GbE PCIe
	  I/O Virtualized Server Adapter.  These were originally released from
	  Neterion, which was later acquired by Exar.  So, the adapters might be
	  labeled as either one, depending on its age.

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

	  To compile this driver as a module, choose M here. The module
	  will be called vxge.

config VXGE_DEBUG_TRACE_ALL
	bool "Enabling All Debug trace statements in driver"
	default n
	depends on VXGE
	help
	  Say Y here if you want to enabling all the debug trace statements in
	  the vxge driver. By default only few debug trace statements are
	  enabled.

endif # NET_VENDOR_NETERION
+0 −1
Original line number Diff line number Diff line
@@ -4,4 +4,3 @@
#

obj-$(CONFIG_S2IO) += s2io.o
obj-$(CONFIG_VXGE) += vxge/
Loading