dc0 acting up

matt baker freebsd at sevenone.com
Tue Sep 28 23:20:18 PDT 2004

>>I have the same output during boot:
>>> dc0: failed to force tx and rx to idle state
>>> dc0: failed to force tx and rx to idle state
>>> dc0: failed to force tx and rx to idle state
> This one comes up every year or so and is my fault (more or less). Maybe
we can fix it now that people are reporting it, even though it is
actually pretty harmless.
> What hardware do you have?  Ie what other dc0: lines do you find in dmesg?
> If you are willing to edit some code and try again, what happens when
you comment out the entire for loop at line 1379 of sys/pci/if_dc.c,
which looks like this:
>                 for (i = 0; i < DC_TIMEOUT; i++) {
>                         isr = CSR_READ_4(sc, DC_ISR);
>                         if (isr & DC_ISR_TX_IDLE &&
>                             ((isr & DC_ISR_RX_STATE) == DC_RXSTATE_STOPPED
> ||
>                             (isr & DC_ISR_RX_STATE) == DC_RXSTATE_WAIT))
>                                 break;
>                         DELAY(10);
>                 }
>                 if (i == DC_TIMEOUT)
>                         printf("dc%d: failed to force tx and "
>                                 "rx to idle state\n", sc->dc_unit);
> Does your network card still work?
> The long story is that this test is probably unnecessary, though the manual
> for the original Intel 21143 requires it.  If it was skipped for
non-Intel chips, I think everyone would be happy.  It would be nice to
have some experimental verification of this theory though.
> Stephen.

I am also seeing this error.  Was seeing it originally in 5.2.1 and now
with 5.3-Beta6. Hope I can help find the problem.

With both I was seeing "dc0: failed to force tx and rx to idle state" with
5.3-Beta6 I am also now seeing "dc0: watchdog timeout"

dmesg | grep dc0  output:

dc0: <82c169 PNIC 10/100BaseTX> port 0x9400-0x94ff mem
0xeb200000-0xeb2000ff irq 17 at device 9.0 on pci0
miibus1: <MII bus> on dc0
dc0: Ethernet address: 00:02:e3:06:a1:8b

I will try the patch above and see if it helps or not.



More information about the freebsd-current mailing list