[tulip] Problem with tulip, 2.4.0test kernel

Donald Becker becker@scyld.com
Mon, 15 Jan 2001 14:29:40 -0500 (EST)


On Mon, 15 Jan 2001, Jonathan Earle wrote:

> Config is two PIII boxes, RH6.2, kernel 2.4.0-test9 (tulip driver lifted
> from kernel 2.4.0 - version 0.9.13 (January 2, 2001) but was previously
> using the proper 2.4.0-test9 driver - version 0.9.10 (September 6, 2000))
> and Znyx ZX346Q 4port cards, with each port connected to the corresponding

This appears to be a problem in the 2.4.0 driver.

I've tested the '346 with 2.2 and my drivers.

> Linux Tulip driver version 0.9.13 (January 2, 2001)

> root@onc1:~> tulip-diag -aa -f
> Index #1: Found a Digital DS21143 Tulip adapter at 0xec80.
>  Port selection is 10mpbs-serial, half-duplex.
>   The NWay status register is 000000c6.
>   Internal autonegotiation state is 'Autonegotiation disabled'.

Hmmm, did you force full dulex?

>   The Tx process state is 'Waiting for Tx to finish'.

This Tx state is normal for an incorrect media selection.

> Index #2: Found a Digital DS21143 Tulip adapter at 0xec00.
>  Port selection is 100mbps-SYM/PCS 100baseTx scrambler, full-duplex.
>   The Rx process state is 'Waiting for packets'.
>   The Tx process state is 'Idle'.

This interface looks normal.

> Index #3: Found a Digital DS21143 Tulip adapter at 0xe880.
>  Port selection is 10mpbs-serial, full-duplex.
>   The Tx process state is 'Waiting for Tx to finish'.

Same problem as #1.

> Now, if I run tulip-diag -m (or -mm), it tells me there are no MII
> transceivers.  However, if I run mii-diag, it shows:
> 
> root@onc1:~> mii-diag eth1
> Basic registers of MII PHY #32:  0000 784c 0000 0000 0401 0000 0000 0000.

Valid MII addresses are 0-31.
Address #32 is used when the driver is internally emulating the MII
management registers.

The recent 0.92t has substantially improved the accuracy of the
emulation, notably the accuracy of the link beat report.

> Also, how can I force a specific speed?  I know I can pass 'full_duplex=1'
> to the module to enable full duplex, but what do I pass to force 100TX
> instead of 10BT?

See the media table at
   http://www.scyld.com/network/tulip.html

options=3,3,5,5  sets 100baseTx, 100baseTx, 100baseTx-FDX, 100baseTx-FDX

I now recommend setting the speed+duplex based on the table rather than
using the "full_duplex=" module option.

<table border=2>
<tr><td> index	<td>  media</tr>
<tr><td>  0	<td> Auto-select (default to the 10baseT link)</tr>
<tr><td>  1	<td> 10base2</tr>
<tr><td>  2	<td> AUI</tr>
<tr><td>  3	<td> 100baseTx</tr>
<tr><td>  4	<td> 10baseT-FD</tr>
<tr><td>  5	<td> 100baseTx-FD</tr>
<tr><td>  6	<td> 100baseT4</tr>
<tr><td>  7	<td> 100baseFx</tr>
<tr><td>  8	<td> 100baseFx-FD</tr>
<tr><td>  9	<td> MII 10baseT</tr>
<tr><td> 10	<td> MII 10baseT-FD</tr>
<tr><td> 11	<td> MII (autoselect)</tr>
<tr><td> 12	<td>  Serial 10baseT (no autoselect)</tr>
<tr><td> 13	<td> MII 100baseTx</tr>
<tr><td> 14	<td> MII 100baseTx-FD</tr>
<tr><td> 15	<td> MII 100baseT4</tr>
<tr><td> 16     <td> MII 100baseFx-HDX (half duplex)</tr>
<tr><td> 17	<td> MII 100baseFx-FDX (full duplex)</tr>
<tr><td> 18	<td> MII Home-PNA 1Mbps</tr>
<tr><td> 0x200 (512 decimal)	<td> Added to other values to set full duplex</tr>
</table>




Donald Becker				becker@scyld.com
Scyld Computing Corporation		http://www.scyld.com
410 Severn Ave. Suite 210		Second Generation Beowulf Clusters
Annapolis MD 21403			410-990-9993