[vortex] NWAY vs. MII
Bogdan Costescu
Bogdan.Costescu@IWR.Uni-Heidelberg.De
Mon, 25 Sep 2000 13:55:35 +0200 (CEST)
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
> Tornado chip (from 905C) has its own internal autonegotiation logic which
> supports 10/100baseT in both half- and full-duplex and HAS_NWAY should
> be used. It doesn't have AUI and fiber optic support, so a card
> manufacturer can decide to put this chip along with its own transceiver
> and HAS_MII should be used in this case.
> I haven't checked the driver to be sure, but I think that all
> autonegotiation modes are protected by something like:
> if (HAS_NWAY || HAS_MII)
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
and there is an unified way of handling it (see Don's mii-diag),
instead of a vendor-specific way. There might be non-autonegotiating MII
transceivers where:
- if you want to force a media type, you just use the right MII registers
- 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.
The existing on-chip transceivers on Cyclone and Tornado have both the MII
interface and NWAY capabilities, IOW:
- you have the MII standard registers, so you don't need to read/write any
chip-specific register for setting media
- the transceiver can autonegotiate (if you let it to).
I hope this is right!
Bogdan Costescu
IWR - Interdisziplinaeres Zentrum fuer Wissenschaftliches Rechnen
Universitaet Heidelberg, INF 368, D-69120 Heidelberg, GERMANY
Telephone: +49 6221 54 8869, Telefax: +49 6221 54 8868
E-mail: Bogdan.Costescu@IWR.Uni-Heidelberg.De