[ECOS] PCI Ethernet card
Eric Doenges
Eric.Doenges@DynaPel.com
Mon Aug 18 08:17:00 GMT 2003
Michael Anburaj wrote:
> The values I sent earlier were sampled at the 1st call to rlt8139_poll()
> <probably the Auto-neg was not done yet at that point>. Now I sample at
> every change in ISR (status),
>
> BMCR = 0x1100
> BMSR = 0x782d
> ANAR = 0x01e1
> ANLPAR = 0x45e1
> ANER = 0x0001
> DIS = 0x0000
> FCSC = 0x0000
>
> And one more thing, even if the DHCP server is not connected, I see the
> Link status change interrupt (status) bit going high after every packet
> sent. Is there a register to look at for the cause to this link status
> change <The above registers don't change at all>? I would probably
> display all register & try comparing them :)
Well, there is the 'media status register' (0x58; bit #2 contains the
inverse of the link status), and the 'NWay Test Register' (0x70/0x71;
however I'm not sure if this would help any).
I've noticed two things in your register dump:
1. In BMCR, it seems duplex mode is set to full duplex. If you are
connected to a hub, this is incorrect. However, the 8139 documentation
sort of implies this bit is ignored together with bit 13 when bit 12
(enable autonegotiation) is enabled.
2. In ANAR, 'ACK' (bit #14) is not set. IMO this indicates that
auto-negotiation is failing for some reason.
Have you tried setting speed and duplex mode manually, i.e.
BMCR = 0x0000 (this would set 10MBit/s, half-duplex). In order to
change these bits, you must set bits 6 and 7 in in the '93C46 Command
Register' (0x50). Don't forget to clear those bits after changing
BMCR.
--
--------------------------------------------------------------------
| 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