diff options
Diffstat (limited to 'include/linux/ethtool.h')
| -rw-r--r-- | include/linux/ethtool.h | 23 | 
1 files changed, 21 insertions, 2 deletions
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h index da5b2de99ae..e1d9e0ede30 100644 --- a/include/linux/ethtool.h +++ b/include/linux/ethtool.h @@ -30,10 +30,15 @@ struct ethtool_cmd {  				 * access it */  	__u8	duplex;		/* Duplex, half or full */  	__u8	port;		/* Which connector port */ -	__u8	phy_address; +	__u8	phy_address;	/* MDIO PHY address (PRTAD for clause 45). +				 * May be read-only or read-write +				 * depending on the driver. +				 */  	__u8	transceiver;	/* Which transceiver to use */  	__u8	autoneg;	/* Enable or disable autonegotiation */ -	__u8	mdio_support; +	__u8	mdio_support;	/* MDIO protocols supported.  Read-only. +				 * Not set by all drivers. +				 */  	__u32	maxtxpkt;	/* Tx pkts before generating tx int */  	__u32	maxrxpkt;	/* Rx pkts before generating rx int */  	__u16	speed_hi;       /* The forced speed (upper @@ -59,6 +64,20 @@ static inline __u32 ethtool_cmd_speed(const struct ethtool_cmd *ep)  	return (ep->speed_hi << 16) | ep->speed;  } +/* Device supports clause 22 register access to PHY or peripherals + * using the interface defined in <linux/mii.h>.  This should not be + * set if there are known to be no such peripherals present or if + * the driver only emulates clause 22 registers for compatibility. + */ +#define ETH_MDIO_SUPPORTS_C22	1 + +/* Device supports clause 45 register access to PHY or peripherals + * using the interface defined in <linux/mii.h> and <linux/mdio.h>. + * This should not be set if there are known to be no such peripherals + * present. + */ +#define ETH_MDIO_SUPPORTS_C45	2 +  #define ETHTOOL_FWVERS_LEN	32  #define ETHTOOL_BUSINFO_LEN	32  /* these strings are set to whatever the driver author decides... */  |