patch-2.4.15 linux/include/linux/ethtool.h
Next file: linux/include/linux/ext3_fs.h
Previous file: linux/include/linux/console.h
Back to the patch index
Back to the overall index
- Lines: 91
- Date:
Mon Nov 19 15:19:42 2001
- Orig file:
v2.4.14/linux/include/linux/ethtool.h
- Orig date:
Tue Oct 23 22:48:53 2001
diff -u --recursive --new-file v2.4.14/linux/include/linux/ethtool.h linux/include/linux/ethtool.h
@@ -3,6 +3,7 @@
*
* Copyright (C) 1998 David S. Miller (davem@redhat.com)
* Copyright 2001 Jeff Garzik <jgarzik@mandrakesoft.com>
+ * Portions Copyright 2001 Sun Microsystems (thockin@sun.com)
*/
#ifndef _LINUX_ETHTOOL_H
@@ -25,17 +26,19 @@
u32 reserved[4];
};
+#define ETHTOOL_BUSINFO_LEN 32
/* these strings are set to whatever the driver author decides... */
struct ethtool_drvinfo {
u32 cmd;
char driver[32]; /* driver short name, "tulip", "eepro100" */
char version[32]; /* driver version string */
char fw_version[32]; /* firmware version string, if applicable */
- char bus_info[32]; /* Bus info for this interface. For PCI
- * devices, use pci_dev->slot_name. */
+ char bus_info[ETHTOOL_BUSINFO_LEN]; /* Bus info for this IF. */
+ /* For PCI devices, use pci_dev->slot_name. */
char reserved1[32];
- char reserved2[28];
- u32 regdump_len; /* Amount of data from ETHTOOL_GREGS */
+ char reserved2[24];
+ u32 eedump_len; /* Size of data from ETHTOOL_GEEPROM (bytes) */
+ u32 regdump_len; /* Size of data from ETHTOOL_GREGS (bytes) */
};
#define SOPASS_MAX 6
@@ -47,6 +50,28 @@
u8 sopass[SOPASS_MAX]; /* SecureOn(tm) password */
};
+/* for passing single values */
+struct ethtool_value {
+ u32 cmd;
+ u32 data;
+};
+
+/* for passing big chunks of data */
+struct ethtool_regs {
+ u32 cmd;
+ u32 version; /* driver-specific, indicates different chips/revs */
+ u32 len; /* bytes */
+ u8 data[0];
+};
+
+/* for passing EEPROM chunks */
+struct ethtool_eeprom {
+ u32 cmd;
+ u32 magic;
+ u32 offset; /* in bytes */
+ u32 len; /* in bytes */
+ u8 data[0];
+};
/* CMDs currently supported */
#define ETHTOOL_GSET 0x00000001 /* Get settings. */
#define ETHTOOL_SSET 0x00000002 /* Set settings, privileged. */
@@ -56,7 +81,10 @@
#define ETHTOOL_SWOL 0x00000006 /* Set wake-on-lan options, priv. */
#define ETHTOOL_GMSGLVL 0x00000007 /* Get driver message level */
#define ETHTOOL_SMSGLVL 0x00000008 /* Set driver msg level, priv. */
-#define ETHTOOL_NWAY_RST 0X00000009 /* Restart autonegotiation, priv. */
+#define ETHTOOL_NWAY_RST 0x00000009 /* Restart autonegotiation, priv. */
+#define ETHTOOL_GLINK 0x0000000a /* Get link status */
+#define ETHTOOL_GEEPROM 0x0000000b /* Get EEPROM data */
+#define ETHTOOL_SEEPROM 0x0000000c /* Set EEPROM data */
/* compatibility with older code */
#define SPARC_ETH_GSET ETHTOOL_GSET
@@ -74,7 +102,7 @@
#define SUPPORTED_AUI (1 << 8)
#define SUPPORTED_MII (1 << 9)
#define SUPPORTED_FIBRE (1 << 10)
-#define SUPPORTED_10base2 (1 << 11)
+#define SUPPORTED_BNC (1 << 11)
/* Indicates what features are advertised by the interface. */
#define ADVERTISED_10baseT_Half (1 << 0)
@@ -88,7 +116,7 @@
#define ADVERTISED_AUI (1 << 8)
#define ADVERTISED_MII (1 << 9)
#define ADVERTISED_FIBRE (1 << 10)
-#define ADVERTISED_10base2 (1 << 11)
+#define ADVERTISED_BNC (1 << 11)
/* The following are all involved in forcing a particular link
* mode for the device for setting things. When getting the
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)