[vortex] NWAY vs. MII

Donald Becker becker@scyld.com
Mon, 25 Sep 2000 17:26:18 -0400 (EDT)


On Mon, 25 Sep 2000, Bogdan Costescu wrote:
> On Mon, 25 Sep 2000, Bogdan Costescu wrote:
> 
> > If I understood it right, HAS_NWAY refers to the on-chip autonegotiation
> > logic, while HAS_MII refers to external transceivers. For example, the

> After more thinking, I think that it's something like this:
> 
> NWAY specifies that the transceiver is capable of autonegotiation, so it
> can select a media automatically based on partner capabilities.
> 
> MII is just a _standard_ interface for setting and getting media related
> info, so that the same info is present on several (or all) brands of cards

Pretty much correct.

HAS_MII means that the transceiver is MII connected.  On the original boards
this meant an external MII transceiver chip.  An external MII transceiver
typically supports N-Way autonegotiation, but it doesn't need to.  The
100baseFx transceivers, HomePNA, (and early Broadcom 100baseT4?) did not.

HAS_NWAY means that the chip incorporates an internal transceiver.  The
management data connection is wired the same as an external MII transceiver,
but the packet data connection is different.  The chip still has a regular
MII connection on the external pins.  Thus the transceiver selection in the
configuration register is different with the "MII" and "NWAY" transceiver
types.

Note: 3Com uses whatever fab line is the cheapest that month, and the
on-chip transceivers are whatever type that specific fab line has a license
for.  All on-chip transceivers support NWay, but not all similar chips have
the same transceiver!

> - you can have some kind of autoselect behaviour (the autoselect bit
> exists at least for 905B and 905C cards) where you go in the driver
> through all available modes and try to get them working (by setting them
> through the MII registers) until you find one and settle on that.

Note that the meaning of the transceiver selection field and "autoselect"
bit has changed!

These fields are automatically loaded from the EEPROM at power-up.  Before
last year it used to specify the desired transceiver setting, and should be
unchanged if the autoselect bit was not set.  For the 3c905C and even 3c905B
(if you run the newer setup program) the transceiver might be set to e.g.
100baseTx.  The driver must now change this field to "NWAY" and configure the
transceiver management registers to reflect the forced setting.  (I hope
that was clear...)


Donald Becker				becker@scyld.com
Scyld Computing Corporation		http://www.scyld.com
410 Severn Ave. Suite 210		Beowulf-II Cluster Distribution
Annapolis MD 21403