mirror of
https://github.com/linux-msm/laptops-kernel.git
synced 2026-08-13 14:19:53 -07:00
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 877fe9d49b ("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: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -42,7 +42,6 @@ Contents:
|
||||
mellanox/mlx5
|
||||
microsoft/netvsc
|
||||
neterion/s2io
|
||||
neterion/vxge
|
||||
netronome/nfp
|
||||
pensando/ionic
|
||||
smsc/smc9
|
||||
|
||||
@@ -1,115 +0,0 @@
|
||||
.. 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
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -4,4 +4,3 @@
|
||||
#
|
||||
|
||||
obj-$(CONFIG_S2IO) += s2io.o
|
||||
obj-$(CONFIG_VXGE) += vxge/
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
#
|
||||
# Makefile for Exar Corp's X3100 Series 10 GbE PCIe I/O
|
||||
# Virtualized Server Adapter linux driver
|
||||
|
||||
obj-$(CONFIG_VXGE) += vxge.o
|
||||
|
||||
vxge-objs := vxge-config.o vxge-traffic.o vxge-ethtool.o vxge-main.o
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,48 +0,0 @@
|
||||
/******************************************************************************
|
||||
* This software may be used and distributed according to the terms of
|
||||
* the GNU General Public License (GPL), incorporated herein by reference.
|
||||
* Drivers based on or derived from this code fall under the GPL and must
|
||||
* retain the authorship, copyright and license notice. This file is not
|
||||
* a complete program and may only be used when the entire operating
|
||||
* system is licensed under the GPL.
|
||||
* See the file COPYING in this distribution for more information.
|
||||
*
|
||||
* vxge-ethtool.h: Driver for Exar Corp's X3100 Series 10GbE PCIe I/O
|
||||
* Virtualized Server Adapter.
|
||||
* Copyright(c) 2002-2010 Exar Corp.
|
||||
******************************************************************************/
|
||||
#ifndef _VXGE_ETHTOOL_H
|
||||
#define _VXGE_ETHTOOL_H
|
||||
|
||||
#include "vxge-main.h"
|
||||
|
||||
/* Ethtool related variables and Macros. */
|
||||
static int vxge_ethtool_get_sset_count(struct net_device *dev, int sset);
|
||||
|
||||
#define VXGE_TITLE_LEN 5
|
||||
#define VXGE_HW_VPATH_STATS_LEN 27
|
||||
#define VXGE_HW_AGGR_STATS_LEN 13
|
||||
#define VXGE_HW_PORT_STATS_LEN 94
|
||||
#define VXGE_HW_VPATH_TX_STATS_LEN 19
|
||||
#define VXGE_HW_VPATH_RX_STATS_LEN 42
|
||||
#define VXGE_SW_STATS_LEN 60
|
||||
#define VXGE_HW_STATS_LEN (VXGE_HW_VPATH_STATS_LEN +\
|
||||
VXGE_HW_AGGR_STATS_LEN +\
|
||||
VXGE_HW_PORT_STATS_LEN +\
|
||||
VXGE_HW_VPATH_TX_STATS_LEN +\
|
||||
VXGE_HW_VPATH_RX_STATS_LEN)
|
||||
|
||||
#define DRIVER_STAT_LEN (sizeof(ethtool_driver_stats_keys)/ETH_GSTRING_LEN)
|
||||
#define STAT_LEN (VXGE_HW_STATS_LEN + DRIVER_STAT_LEN + VXGE_SW_STATS_LEN)
|
||||
|
||||
/* Maximum flicker time of adapter LED */
|
||||
#define VXGE_MAX_FLICKER_TIME (60 * HZ) /* 60 seconds */
|
||||
#define VXGE_FLICKER_ON 1
|
||||
#define VXGE_FLICKER_OFF 0
|
||||
|
||||
#define vxge_add_string(fmt, size, buf, ...) {\
|
||||
snprintf(buf + *size, ETH_GSTRING_LEN, fmt, __VA_ARGS__); \
|
||||
*size += ETH_GSTRING_LEN; \
|
||||
}
|
||||
|
||||
#endif /*_VXGE_ETHTOOL_H*/
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,49 +0,0 @@
|
||||
/******************************************************************************
|
||||
* This software may be used and distributed according to the terms of
|
||||
* the GNU General Public License (GPL), incorporated herein by reference.
|
||||
* Drivers based on or derived from this code fall under the GPL and must
|
||||
* retain the authorship, copyright and license notice. This file is not
|
||||
* a complete program and may only be used when the entire operating
|
||||
* system is licensed under the GPL.
|
||||
* See the file COPYING in this distribution for more information.
|
||||
*
|
||||
* vxge-version.h: Driver for Exar Corp's X3100 Series 10GbE PCIe I/O
|
||||
* Virtualized Server Adapter.
|
||||
* Copyright(c) 2002-2010 Exar Corp.
|
||||
******************************************************************************/
|
||||
#ifndef VXGE_VERSION_H
|
||||
#define VXGE_VERSION_H
|
||||
|
||||
#define VXGE_VERSION_MAJOR "2"
|
||||
#define VXGE_VERSION_MINOR "5"
|
||||
#define VXGE_VERSION_FIX "3"
|
||||
#define VXGE_VERSION_BUILD "22640"
|
||||
#define VXGE_VERSION_FOR "k"
|
||||
|
||||
#define VXGE_FW_VER(maj, min, bld) (((maj) << 16) + ((min) << 8) + (bld))
|
||||
|
||||
#define VXGE_DEAD_FW_VER_MAJOR 1
|
||||
#define VXGE_DEAD_FW_VER_MINOR 4
|
||||
#define VXGE_DEAD_FW_VER_BUILD 4
|
||||
|
||||
#define VXGE_FW_DEAD_VER VXGE_FW_VER(VXGE_DEAD_FW_VER_MAJOR, \
|
||||
VXGE_DEAD_FW_VER_MINOR, \
|
||||
VXGE_DEAD_FW_VER_BUILD)
|
||||
|
||||
#define VXGE_EPROM_FW_VER_MAJOR 1
|
||||
#define VXGE_EPROM_FW_VER_MINOR 6
|
||||
#define VXGE_EPROM_FW_VER_BUILD 1
|
||||
|
||||
#define VXGE_EPROM_FW_VER VXGE_FW_VER(VXGE_EPROM_FW_VER_MAJOR, \
|
||||
VXGE_EPROM_FW_VER_MINOR, \
|
||||
VXGE_EPROM_FW_VER_BUILD)
|
||||
|
||||
#define VXGE_CERT_FW_VER_MAJOR 1
|
||||
#define VXGE_CERT_FW_VER_MINOR 8
|
||||
#define VXGE_CERT_FW_VER_BUILD 1
|
||||
|
||||
#define VXGE_CERT_FW_VER VXGE_FW_VER(VXGE_CERT_FW_VER_MAJOR, \
|
||||
VXGE_CERT_FW_VER_MINOR, \
|
||||
VXGE_CERT_FW_VER_BUILD)
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user