Re: ethtool documentation

Abraham vd Merwe (abraham@2d3d.co.za)
Tue, 6 Aug 2002 12:17:51 +0200


--T4sUOijqQbZv57TR
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hi Tim!

> These are the valid parameters to the SIOCETHTOOL ioctl(). Network drive=
rs
> should support these as much as possible.
>=20
> ETHTOOL_GSET
> ETHTOOL_SSET
>=20
> Get/set NIC settings. These commands expect a 'struct ethtool_cmd *'
> argument. This struct includes fields for supported features (speed,
> duplex, transceiver), advertised features, speed, duplex, port,
> transceiver, and autonegotiation. If the caller attempts to set an
> invalid value for any field, return -EINVAL.

What is the difference between the supported and advertising fields?
What is MII? (as in the SUPPORTED_MII feature?).

If you can't control the # of ints before Tx/Rx, I take it you can just
set those fields to 0?

> ETHTOOL_GDRVINFO
>=20
> Get driver information. This command expects a 'struct ethtool_drvinfo=
*'
> argument. This struct includes the driver identifier as a string, the
> driver version as a string, bus information for the interface, and leng=
th
> information for other ETHTOOL_* commands.

What do you set the bus_info field to if there is no bus? Where are all
these bus types defined? The header file isn't very clear about anything
other than pci bus types.

I take it you can just set fw_version to zero length string if it is unknow=
n?

> ETHTOOL_GEEPROM
> ETHTOOL_SEEPROM
>=20
> Get/set EEPROM data. These commands expect a 'struct ethtool_eeprom *'
> argument. This struct has a magic number, an offset and length pair, a=
nd a
> data field. If the offset+length are longer than the maximum size, the
> extra is silently ignored.

Wouldn't it have been better to make this 'n character device which can be
read from / written to just like a normal file (/dev/nvram-like interface) -
that way applications can actually use unused eeprom space.

> ETHTOOL_GCOALESCE
> ETHTOOL_SCOALESCE
>=20
> Get/set coalescing parameters. These commands expect a 'struct
> ethtool_coalesce *' argument. This struct has several fields for
> configuring coalescing - see ethtool.h for details. If the caller
> attempts to set an invalid value, return -EINVAL.

Wtf is coalescing parameters? These commands aren't even defined in the
2.4.18 kernel headers. Is this 2.5.xx additions?

Same goes for the following commands:

> ETHTOOL_GRINGPARAM
> ETHTOOL_SRINGPARAM
> ETHTOOL_GPAUSEPARAM
> ETHTOOL_SPAUSEPARAM
> ETHTOOL_GRXCSUM
> ETHTOOL_SRXCSUM
> ETHTOOL_GTXCSUM
> ETHTOOL_STXCSUM
> ETHTOOL_GSG
> ETHTOOL_SSG
> ETHTOOL_TEST
> ETHTOOL_GSTRINGS
> ETHTOOL_PHYS_ID
> ETHTOOL_GSTATS

--=20

Regards
Abraham

Lying is an indispensable part of making life tolerable.
-- Bergan Evans

__________________________________________________________
Abraham vd Merwe - 2d3D, Inc.

Device Driver Development, Outsourcing, Embedded Systems

Cell: +27 82 565 4451 Snailmail:
Tel: +27 21 761 7549 Block C, Aintree Park
Fax: +27 21 761 7648 Doncaster Road
Email: abraham@2d3d.co.za Kenilworth, 7700
Http: http://www.2d3d.com South Africa

--T4sUOijqQbZv57TR
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE9T6JPzNXhP0RCUqMRAnIUAJ9yAORxK/Ihja7frAWBIfn/NLgpQACeN30k
QsCw7NuGBGauujsZU21aSiM=
=0iH3
-----END PGP SIGNATURE-----

--T4sUOijqQbZv57TR--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/