| /****************************************************************************** | 
 |  * 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); | 
 |  | 
 | static char ethtool_driver_stats_keys[][ETH_GSTRING_LEN] = { | 
 | 	{"\n DRIVER STATISTICS"}, | 
 | 	{"vpaths_opened"}, | 
 | 	{"vpath_open_fail_cnt"}, | 
 | 	{"link_up_cnt"}, | 
 | 	{"link_down_cnt"}, | 
 | 	{"tx_frms"}, | 
 | 	{"tx_errors"}, | 
 | 	{"tx_bytes"}, | 
 | 	{"txd_not_free"}, | 
 | 	{"txd_out_of_desc"}, | 
 | 	{"rx_frms"}, | 
 | 	{"rx_errors"}, | 
 | 	{"rx_bytes"}, | 
 | 	{"rx_mcast"}, | 
 | 	{"pci_map_fail_cnt"}, | 
 | 	{"skb_alloc_fail_cnt"} | 
 | }; | 
 |  | 
 | #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*/ |