> > ep0: <3Com EtherLink III (3c509-TPO)> at port 0x300-0x30f irq 10 on isa0
> > ep0: eeprom failed to come ready.
...
> > ep0: Ethernet address ff:ff:ff:ff:ff:ff
> > ep1: <3Com 3C509B EtherLink III> at port 0x210-0x21f irq 5 on isa0
> > ep1: Ethernet address 00:a0:24:a1:9a:1e
I still have problems with probing ep's on one Cyrix system.
One thing that has made it better is passing a bit delay down to
elink_idseq, that is:
> void
> elink_idseq(u_char p, void (*bit_delay)(void))
> {
> register int i;
> register u_char c;
>
> c = 0xff;
> for (i = 255; i; i--) {
> (*bit_delay)();
> outb(ELINK_ID_PORT, c);
> if (c & 0x80) {
> c <<= 1;
I haven't bothered committing this since it still fails 1 out of 6 times.
Without this it fails 1 out of 3 times. If it logically makes sense
that a delay is needed here (I don't have any docs) someone might add it.
Peter
--
Peter Dufault ([EMAIL PROTECTED]) Realtime development, Machine control,
HD Associates, Inc. Safety critical systems, Agency approval
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message