> In this matter, If I work in A/N mode and the other side is being
> forced to some configuration, I assume the phy will detect the correct
> speed of the other side, but can the MAC find out about that speed
> from the PHY registers?
A standards-compliant, Auto-Negotiating device will properly detect the
speed of its link partner regardless of whether the partner is using A-N
or is manually configured. However, it is NOT possible to determine the
duplexity of a link partner without both sides advertising their
capabilities. If your link partner is manually configured to
full-duplex, your Auto-Negotiating end will not be able to detect this;
the default is for the A-N device to assume half-duplex (the safest
option), and you will have a duplex mismatch.
For this reason (and others) it is generally NOT a good idea to manually
configure anything. Let Auto-Negotiation do its job. If you want to
restrict the possible modes of operation, set the A-N adverti*ts to
reflect only those outcomes that you are willing to accept; do NOT just
set your device to the desired outcome.
Your driver can always interrogate the PHY registers to determine when
A-N has completed, and what the resulting configuration is.
Quote:> my MAC layer need to know whether it works
> with 10/100 or 1000 (2 different code blocks), and the advertisment
> register is valid only when the other side A/N with me(or am I
Regardless of whether the other side is using A-N or not, once your own
A-N completes (including parallel detection), the PHY registers should
indicate the resulting configuration.
Rich Seifert Networks and Communications Consulting
(408) 395-5700 Los Gatos, CA 95033
(408) 395-1966 FAX