[ECOS] PCI Ethernet card

Eric Doenges Eric.Doenges@DynaPel.de
Thu Aug 14 06:50:00 GMT 2003


Michael Anburaj wrote:
> Hi Eric,
> 
>> a. Check the value of the basic mode status register (0x64), the
>> auto-negotiation registers (0x66, 0x68, 0x6A), and the disconnect (0x6c)
>> and false carrier sense (0x6e) counters.
>>
> 
> BMCR = 0x1000            - enable auto-negotiation
> BMSR = 0x7809 (default)
> ANAR = 0x01e1 (default)
> ANLPAR = 0x0000
> ANER = 0x0000
> DIS = 0x0000
> FCSC = 0x0000

I think auto-negotiation is not working in your setup - ANLPAR shouldn't
be all 0s (at least bit #14, ACK should be set IMO). To me it looks like
the two parties never get to negotiating.

> Yes you are right. To keep things simple, I will start out by doing 
> this. But, is it not ok to set this bit (auto-negotiation)?

If auto-negotiation is enabled, the 8139 ignores bits 13 and 8
('Spd_Set' and 'Duplex Mode').

> I am still reading the documentation & trying to understand it better.

Welcome to the club =8^)

> Questions:
> 1. Is the auto-negotiation (sending & receiving negotiation packets) 
> under software (device driver)  control?

No, this is done by the hardware. You can enable or disable
auto-negotiation, and tell the 8139 which link options to accept in
software, but the negotiation itself is done by the hardware (if it is
enabled).

>       a. If yes, does the rltk8139 driver Ver 2 support this feature? Or 
> does it assume fixed link parameters?

The driver assumes the serial EEPROM will have set the correct
parameters after reset.

>      b.If no, then is there a problem with the Hub (the link partner on 
> the other side of this link)? < Presumably, the both sides understand 
> 'auto-negotiation', should negotiate the link parameters & settle down 
> for actual transfers (with the sable connection - Link Status bit of 
> BMSR set), am I right?

I think you are, but I am no expert on Ethernet devices in general or
the 8139 in particular, so I may be wrong. That being said, old
networking equipment may not implement auto-negotiation correctly; I've
had problems in the past between 3Com switches and DEC 'tulip', as well
as some SMC NICs (this was back in 1998 or so). With modern equipment,
auto-negotiation seems to works just fine.

If you can, try hooking your board up to a different hub/switch or
directly to the DHCP server; if that works then your hub is probably to
blame.
-- 
--------------------------------------------------------------------
|     Eric Doenges              |     DynaPel Laboratories GmbH    |
|     Tel: +49 89 962428 23     |     Fraunhoferstrasse 9/2        |
|     Fax: +49 89 962428 90     |     D - 85737 Ismaning, Germany  |
--------------------------------------------------------------------


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss



More information about the Ecos-discuss mailing list