Files
@ bd21c8aa7237
Branch filter:
Location: vmkdrivers/vmkdrivers/src_9/drivers/net/vmxnet3/upt1_defs.h - annotation
bd21c8aa7237
3.0 KiB
text/x-chdr
ESXi-6.0.0b
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c 85642093068c | /*
* Copyright(c) 2007-2012 VMware, Inc. All rights reserved.
*
* This file is part of vmxnet3 VMKdriver program.
*
* 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 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.
*
*/
/* upt1_defs.h
*
* Definitions for UPTv1
*
* Some of the defs are duplicated in vmkapi_net_upt.h, because
* vmkapi_net_upt.h cannot distribute with OSS yet and vmkapi headers can
* only include vmkapi headers. Make sure they are kept in sync!
*/
#ifndef _UPT1_DEFS_H
#define _UPT1_DEFS_H
#define UPT1_MAX_TX_QUEUES 64
#define UPT1_MAX_RX_QUEUES 64
#define UPT1_MAX_INTRS (UPT1_MAX_TX_QUEUES + UPT1_MAX_RX_QUEUES)
typedef
struct UPT1_TxStats {
uint64 TSOPktsTxOK; /* TSO pkts post-segmentation */
uint64 TSOBytesTxOK;
uint64 ucastPktsTxOK;
uint64 ucastBytesTxOK;
uint64 mcastPktsTxOK;
uint64 mcastBytesTxOK;
uint64 bcastPktsTxOK;
uint64 bcastBytesTxOK;
uint64 pktsTxError;
uint64 pktsTxDiscard;
}
UPT1_TxStats;
typedef
struct UPT1_RxStats {
uint64 LROPktsRxOK; /* LRO pkts */
uint64 LROBytesRxOK; /* bytes from LRO pkts */
/* the following counters are for pkts from the wire, i.e., pre-LRO */
uint64 ucastPktsRxOK;
uint64 ucastBytesRxOK;
uint64 mcastPktsRxOK;
uint64 mcastBytesRxOK;
uint64 bcastPktsRxOK;
uint64 bcastBytesRxOK;
uint64 pktsRxOutOfBuf;
uint64 pktsRxError;
}
UPT1_RxStats;
/* interrupt moderation level */
#define UPT1_IML_NONE 0 /* no interrupt moderation */
#define UPT1_IML_HIGHEST 7 /* least intr generated */
#define UPT1_IML_ADAPTIVE 8 /* adpative intr moderation */
/* values for UPT1_RSSConf.hashFunc */
#define UPT1_RSS_HASH_TYPE_NONE 0x0
#define UPT1_RSS_HASH_TYPE_IPV4 0x01
#define UPT1_RSS_HASH_TYPE_TCP_IPV4 0x02
#define UPT1_RSS_HASH_TYPE_IPV6 0x04
#define UPT1_RSS_HASH_TYPE_TCP_IPV6 0x08
#define UPT1_RSS_HASH_FUNC_NONE 0x0
#define UPT1_RSS_HASH_FUNC_TOEPLITZ 0x01
#define UPT1_RSS_MAX_KEY_SIZE 40
#define UPT1_RSS_MAX_IND_TABLE_SIZE 128
typedef
struct UPT1_RSSConf {
uint16 hashType;
uint16 hashFunc;
uint16 hashKeySize;
uint16 indTableSize;
uint8 hashKey[UPT1_RSS_MAX_KEY_SIZE];
uint8 indTable[UPT1_RSS_MAX_IND_TABLE_SIZE];
}
UPT1_RSSConf;
/* features */
#define UPT1_F_RXCSUM 0x0001 /* rx csum verification */
#define UPT1_F_RSS 0x0002
#define UPT1_F_RXVLAN 0x0004 /* VLAN tag stripping */
#define UPT1_F_LRO 0x0008
#endif
|