forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
net: VMware virtual Ethernet NIC driver: vmxnet3
Ethernet NIC driver for VMware's vmxnet3 From: Shreyas Bhatewara <[email protected]> This patch adds driver support for VMware's virtual Ethernet NIC: vmxnet3 Guests running on VMware hypervisors supporting vmxnet3 device will thus have access to improved network functionalities and performance. Signed-off-by: Shreyas Bhatewara <[email protected]> Signed-off-by: Bhavesh Davda <[email protected]> Signed-off-by: Ronghua Zhang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
- Loading branch information
Showing
9 changed files
with
4,193 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5612,6 +5612,13 @@ S: Maintained | |
F: drivers/vlynq/vlynq.c | ||
F: include/linux/vlynq.h | ||
|
||
VMWARE VMXNET3 ETHERNET DRIVER | ||
M: Shreyas Bhatewara <[email protected]> | ||
M: VMware, Inc. <[email protected]> | ||
L: [email protected] | ||
S: Maintained | ||
F: drivers/net/vmxnet3/ | ||
|
||
VOLTAGE AND CURRENT REGULATOR FRAMEWORK | ||
M: Liam Girdwood <[email protected]> | ||
M: Mark Brown <[email protected]> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
################################################################################ | ||
# | ||
# Linux driver for VMware's vmxnet3 ethernet NIC. | ||
# | ||
# Copyright (C) 2007-2009, VMware, Inc. All Rights Reserved. | ||
# | ||
# This program is free software; you can redistribute it and/or modify it | ||
# under the terms of the GNU General Public License as published by the | ||
# Free Software Foundation; version 2 of the License and no later version. | ||
# | ||
# This program is distributed in the hope that it will be useful, but | ||
# WITHOUT ANY WARRANTY; without even the implied warranty of | ||
# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or | ||
# NON INFRINGEMENT. See the GNU General Public License for more | ||
# details. | ||
# | ||
# You should have received a copy of the GNU General Public License | ||
# along with this program; if not, write to the Free Software | ||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
# | ||
# The full GNU General Public License is included in this distribution in | ||
# the file called "COPYING". | ||
# | ||
# Maintained by: Shreyas Bhatewara <[email protected]> | ||
# | ||
# | ||
################################################################################ | ||
|
||
# | ||
# Makefile for the VMware vmxnet3 ethernet NIC driver | ||
# | ||
|
||
obj-$(CONFIG_VMXNET3) += vmxnet3.o | ||
|
||
vmxnet3-objs := vmxnet3_drv.o vmxnet3_ethtool.o |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
/* | ||
* Linux driver for VMware's vmxnet3 ethernet NIC. | ||
* | ||
* Copyright (C) 2008-2009, VMware, Inc. All Rights Reserved. | ||
* | ||
* This program is free software; you can redistribute it and/or modify it | ||
* under the terms of the GNU General Public License as published by the | ||
* Free Software Foundation; version 2 of the License and no later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, but | ||
* WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or | ||
* NON INFRINGEMENT. See the GNU General Public License for more | ||
* details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program; if not, write to the Free Software | ||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
* | ||
* The full GNU General Public License is included in this distribution in | ||
* the file called "COPYING". | ||
* | ||
* Maintained by: Shreyas Bhatewara <[email protected]> | ||
* | ||
*/ | ||
|
||
#ifndef _UPT1_DEFS_H | ||
#define _UPT1_DEFS_H | ||
|
||
struct UPT1_TxStats { | ||
u64 TSOPktsTxOK; /* TSO pkts post-segmentation */ | ||
u64 TSOBytesTxOK; | ||
u64 ucastPktsTxOK; | ||
u64 ucastBytesTxOK; | ||
u64 mcastPktsTxOK; | ||
u64 mcastBytesTxOK; | ||
u64 bcastPktsTxOK; | ||
u64 bcastBytesTxOK; | ||
u64 pktsTxError; | ||
u64 pktsTxDiscard; | ||
}; | ||
|
||
struct UPT1_RxStats { | ||
u64 LROPktsRxOK; /* LRO pkts */ | ||
u64 LROBytesRxOK; /* bytes from LRO pkts */ | ||
/* the following counters are for pkts from the wire, i.e., pre-LRO */ | ||
u64 ucastPktsRxOK; | ||
u64 ucastBytesRxOK; | ||
u64 mcastPktsRxOK; | ||
u64 mcastBytesRxOK; | ||
u64 bcastPktsRxOK; | ||
u64 bcastBytesRxOK; | ||
u64 pktsRxOutOfBuf; | ||
u64 pktsRxError; | ||
}; | ||
|
||
/* interrupt moderation level */ | ||
enum { | ||
UPT1_IML_NONE = 0, /* no interrupt moderation */ | ||
UPT1_IML_HIGHEST = 7, /* least intr generated */ | ||
UPT1_IML_ADAPTIVE = 8, /* adpative intr moderation */ | ||
}; | ||
/* values for UPT1_RSSConf.hashFunc */ | ||
enum { | ||
UPT1_RSS_HASH_TYPE_NONE = 0x0, | ||
UPT1_RSS_HASH_TYPE_IPV4 = 0x01, | ||
UPT1_RSS_HASH_TYPE_TCP_IPV4 = 0x02, | ||
UPT1_RSS_HASH_TYPE_IPV6 = 0x04, | ||
UPT1_RSS_HASH_TYPE_TCP_IPV6 = 0x08, | ||
}; | ||
|
||
enum { | ||
UPT1_RSS_HASH_FUNC_NONE = 0x0, | ||
UPT1_RSS_HASH_FUNC_TOEPLITZ = 0x01, | ||
}; | ||
|
||
#define UPT1_RSS_MAX_KEY_SIZE 40 | ||
#define UPT1_RSS_MAX_IND_TABLE_SIZE 128 | ||
|
||
struct UPT1_RSSConf { | ||
u16 hashType; | ||
u16 hashFunc; | ||
u16 hashKeySize; | ||
u16 indTableSize; | ||
u8 hashKey[UPT1_RSS_MAX_KEY_SIZE]; | ||
u8 indTable[UPT1_RSS_MAX_IND_TABLE_SIZE]; | ||
}; | ||
|
||
/* features */ | ||
enum { | ||
UPT1_F_RXCSUM = 0x0001, /* rx csum verification */ | ||
UPT1_F_RSS = 0x0002, | ||
UPT1_F_RXVLAN = 0x0004, /* VLAN tag stripping */ | ||
UPT1_F_LRO = 0x0008, | ||
}; | ||
#endif |
Oops, something went wrong.