![]() |
|
|||
0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 0002 /* 0003 * ethtool.h: Defines for Linux ethtool. 0004 * 0005 * Copyright (C) 1998 David S. Miller (davem@redhat.com) 0006 * Copyright 2001 Jeff Garzik <jgarzik@pobox.com> 0007 * Portions Copyright 2001 Sun Microsystems (thockin@sun.com) 0008 * Portions Copyright 2002 Intel (eli.kupermann@intel.com, 0009 * christopher.leech@intel.com, 0010 * scott.feldman@intel.com) 0011 * Portions Copyright (C) Sun Microsystems 2008 0012 */ 0013 0014 #ifndef _UAPI_LINUX_ETHTOOL_H 0015 #define _UAPI_LINUX_ETHTOOL_H 0016 0017 #include <linux/kernel.h> 0018 #include <linux/types.h> 0019 #include <linux/if_ether.h> 0020 0021 #define ETHTOOL_GCHANNELS 0x0000003c /* Get no of channels */ 0022 0023 /** 0024 * struct ethtool_channels - configuring number of network channel 0025 * @cmd: ETHTOOL_{G,S}CHANNELS 0026 * @max_rx: Read only. Maximum number of receive channel the driver support. 0027 * @max_tx: Read only. Maximum number of transmit channel the driver support. 0028 * @max_other: Read only. Maximum number of other channel the driver support. 0029 * @max_combined: Read only. Maximum number of combined channel the driver 0030 * support. Set of queues RX, TX or other. 0031 * @rx_count: Valid values are in the range 1 to the max_rx. 0032 * @tx_count: Valid values are in the range 1 to the max_tx. 0033 * @other_count: Valid values are in the range 1 to the max_other. 0034 * @combined_count: Valid values are in the range 1 to the max_combined. 0035 * 0036 * This can be used to configure RX, TX and other channels. 0037 */ 0038 0039 struct ethtool_channels { 0040 __u32 cmd; 0041 __u32 max_rx; 0042 __u32 max_tx; 0043 __u32 max_other; 0044 __u32 max_combined; 0045 __u32 rx_count; 0046 __u32 tx_count; 0047 __u32 other_count; 0048 __u32 combined_count; 0049 }; 0050 0051 #define ETHTOOL_FWVERS_LEN 32 0052 #define ETHTOOL_BUSINFO_LEN 32 0053 #define ETHTOOL_EROMVERS_LEN 32 0054 0055 /** 0056 * struct ethtool_drvinfo - general driver and device information 0057 * @cmd: Command number = %ETHTOOL_GDRVINFO 0058 * @driver: Driver short name. This should normally match the name 0059 * in its bus driver structure (e.g. pci_driver::name). Must 0060 * not be an empty string. 0061 * @version: Driver version string; may be an empty string 0062 * @fw_version: Firmware version string; may be an empty string 0063 * @erom_version: Expansion ROM version string; may be an empty string 0064 * @bus_info: Device bus address. This should match the dev_name() 0065 * string for the underlying bus device, if there is one. May be 0066 * an empty string. 0067 * @reserved2: Reserved for future use; see the note on reserved space. 0068 * @n_priv_flags: Number of flags valid for %ETHTOOL_GPFLAGS and 0069 * %ETHTOOL_SPFLAGS commands; also the number of strings in the 0070 * %ETH_SS_PRIV_FLAGS set 0071 * @n_stats: Number of u64 statistics returned by the %ETHTOOL_GSTATS 0072 * command; also the number of strings in the %ETH_SS_STATS set 0073 * @testinfo_len: Number of results returned by the %ETHTOOL_TEST 0074 * command; also the number of strings in the %ETH_SS_TEST set 0075 * @eedump_len: Size of EEPROM accessible through the %ETHTOOL_GEEPROM 0076 * and %ETHTOOL_SEEPROM commands, in bytes 0077 * @regdump_len: Size of register dump returned by the %ETHTOOL_GREGS 0078 * command, in bytes 0079 * 0080 * Users can use the %ETHTOOL_GSSET_INFO command to get the number of 0081 * strings in any string set (from Linux 2.6.34). 0082 * 0083 * Drivers should set at most @driver, @version, @fw_version and 0084 * @bus_info in their get_drvinfo() implementation. The ethtool 0085 * core fills in the other fields using other driver operations. 0086 */ 0087 struct ethtool_drvinfo { 0088 __u32 cmd; 0089 char driver[32]; 0090 char version[32]; 0091 char fw_version[ETHTOOL_FWVERS_LEN]; 0092 char bus_info[ETHTOOL_BUSINFO_LEN]; 0093 char erom_version[ETHTOOL_EROMVERS_LEN]; 0094 char reserved2[12]; 0095 __u32 n_priv_flags; 0096 __u32 n_stats; 0097 __u32 testinfo_len; 0098 __u32 eedump_len; 0099 __u32 regdump_len; 0100 }; 0101 0102 #define ETHTOOL_GDRVINFO 0x00000003 0103 0104 #endif /* _UAPI_LINUX_ETHTOOL_H */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.1.0 LXR engine. The LXR team |
![]() ![]() |