DS21140 Tulip rev 34 locks up after unpluging the cable

Nicolas Pomarede npomarede@kaptech.com
Mon Dec 20 11:07:56 1999


I have the following problem using a 21140 rev 34 chip, using linux 2.0.36
and tulip 0.91e.

At start, the chip establishes a 10baseT connection.
But then, if I unplug the network cable and replug it, the network doesn't
work any more (the led on the motherboard card turns red when cable is
unpluged, and remains red when repluged (which seems to indicate a 100 Mbs
network ?)).
I can unplug/replug the cable as many time as I want, as well as
unloading/reloading the module, the network remains OFF (the led never
turns green again, indicating a 10 Mbs network).
The only way to solve this is to reboot the PC :(

As I saw on the mailing list a similar problem in 'weird lockups on
KNE100TX (DEC DC21142 (rev 65))' dated 30 september 1999, I tried the
recommended solution by Donald Becker, that is 'mii-diag -R' to reset the
transceiver. And it works.

So, would there be any possibility to add a kind of reset when the chip
detects the cable has been unpluged and repluged after (but is the chip
able to 'see' this kind of event ?).

Problem is that we use tulip chip on remote machine, which means we're not
even able to run 'mii-diag -R' to force reset, since the only way to
access the machine is by using the network.

I see mii-diag.c do 'mdio_write(skfd, phy_id, 0, 0x8000)' to reset the
transceiver ; wouldn't it be possible to add this line in tulip.c when
redetecting the link ?

Even patch would be greatly appreciated, even a non officially supported


Nicolas Pomarede                   e-mail:   npomarede@paris.kapt.com