tulip 21143 based card does not work with 10 Mbit with recent kernel

From: Marc Haber (mh+linux-kernel@zugschlus.de)
Date: Wed Jul 10 2002 - 05:41:20 EST


Hi,

I have a bunch of tulip based network cards with 21143 chipset. These
Micronet made cards do not seem to work when connected to a 10 Mbit
hub (as I have in the lab setup) while running with a recent kernel:

Jul 10 11:41:52 orion kernel: Linux Tulip driver version 0.9.15-pre9 (Nov 6, 2001)
Jul 10 11:41:52 orion kernel: PCI: Found IRQ 5 for device 00:09.0
Jul 10 11:41:52 orion kernel: PCI: Sharing IRQ 5 with 00:04.2
Jul 10 11:41:52 orion kernel: tulip0: EEPROM default media type Autosense.
Jul 10 11:41:52 orion kernel: tulip0: Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
Jul 10 11:41:52 orion kernel: tulip0: Index #1 - Media 10baseT-FDX (#4) described by a 21142 Serial PHY (2) block.
Jul 10 11:41:52 orion kernel: tulip0: Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
Jul 10 11:41:52 orion kernel: tulip0: Index #3 - Media 100baseTx-FDX (#5) described by a 21143 SYM PHY (4) block.
Jul 10 11:41:52 orion kernel: eth0: Digital DS21143 Tulip rev 65 at 0xb000, 00:C0:CA:30:CD:75, IRQ 5.

The hub shows a link beat after the module has been loaded, but the
link vanishes once the "ip link set dev eth0 up" was issued. No data
can be transferred.

|haber@orion[1/76]:~$ sudo mii-diag eth0
|Basic registers of MII PHY #32: 1000 784c 0000 0000 01e1 0000 0000 0000.
| Basic mode control register 0x1000: Auto-negotiation enabled.
| You have link beat, and everything is working OK.
| Your link partner does not do autonegotiation, and this transceiver type
| does not report the sensed link speed.
| End of basic transceiver informaion.

Please note that mii-diag claims link beat, which is not true.

|haber@orion[8/83]:~$ sudo mii-tool --force=10baseT-HD
|haber@orion[9/84]:~$ sudo mii-diag eth0
|Basic registers of MII PHY #32: 2000 7848 0000 0000 01e1 0000 0000 0000.
| Basic mode control register 0x2000: Auto-negotiation disabled, with
| Speed fixed at 100 mbps, half-duplex.
| Basic mode status register 0x7848 ... 7848.
| Link status: not established.
| Link partner information information is not exchanged when in fixed speed mode.
| End of basic transceiver informaion.

Please not that mii-diag report the speed that has just been forced to
10 mbps half-duplex as 100 mbps.

Using a 10/100 Mbit switch instead of the 10 Mbit hub solves this
problem.

|haber@orion[4/59]:~$ sudo mii-diag eth0
|Basic registers of MII PHY #32: 1000 784c 0000 0000 0041 45e1 0000 0000.
| The autonegotiated capability is 0040.
|The autonegotiated media type is 10baseT-FD.
| Basic mode control register 0x1000: Auto-negotiation enabled.
| You have link beat, and everything is working OK.
| Your link partner advertised 45e1: Flow-control 100baseTx-FD 100baseTx 10baseT-FD 10baseT, w/ 802.3X flow control.
| End of basic transceiver informaion.

However, the switch clearly shows the 100 Mbit light "on", so I have
to - again - distrust mii-diag here, because the performance clearly
shows that we are not running 10 Mbit here (10 Mbyte in approx. 2 secs).

When I use an older kernel (2.2.18 from the Linuxcare BBC), the card
works on the hub:

Jul 10 11:40:06 orion kernel: tulip.c:v0.91g-ppc 7/16/99 becker@cesdis.gsfc.nasa.gov
Jul 10 11:40:06 orion kernel: eth0: Digital DS21143 Tulip rev 65 at 0xb000, 00:C0:CA:30:CD:75, IRQ 5.
Jul 10 11:40:06 orion kernel: eth0: EEPROM default media type Autosense.
Jul 10 11:40:06 orion kernel: eth0: Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
Jul 10 11:40:06 orion kernel: eth0: Index #1 - Media 10baseT-FD (#4) described by a 21142 Serial PHY (2) block.
Jul 10 11:40:06 orion kernel: eth0: Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
Jul 10 11:40:06 orion kernel: eth0: Index #3 - Media 100baseTx-FD (#5) described by a 21143 SYM PHY (4) block.

|haber@orion[3/88]:~$ sudo mii-diag eth0
|Basic registers of MII PHY #32: 1000 786c 0000 0000 05e1 0000 0000 0000.
| Basic mode control register 0x1000: Auto-negotiation enabled.
| You have link beat, and everything is working OK.
| Your link partner does not do autonegotiation, and this transceiver type
| does not report the sensed link speed.
| End of basic transceiver informaion.

Is this a known issue with the tulip driver in 2.4.18? Can I help with
debugging?

Greetings
Marc

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Karlsruhe, Germany |  lose things."    Winona Ryder | Fon: *49 721 966 32 15
Nordisch by Nature |  How to make an American Quilt | Fax: *49 721 966 31 29
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jul 15 2002 - 22:00:17 EST